LCメータのポートアサイン
2011-12-18
LCメータもほぼ見えてきましたので、ポートのアサインを考えます。
① まずはLCDが付くため7本のポートが必要。ケチって
6本にもできるが、数勘定としてひとまず。
② 発振用のコンパレータのI/Oは3本。これは、実験の時に
使ったポートをそのまま使う。
③ TTLレベル(というか5V)の出力ポートが1本・・・これで
ダイオードスイッチを制御。
④ 周波数カウンタ入力が1本必要。Timer#0を使って
直接カウントすると楽。
・・・と、ここまでで12本。前提となるPIC16F648Aに4MHzのクリスタル外付けで2本、VDD,VSS,MCLRで合計3本。残り1本
⑤ プッシュSWによるモード設定・・・測定開始、リセットや
周波数表示など、ちょっとした小細工実行用。
これでひとまず一杯になりました。①のケチりをしなくても、何とか入りそう・・・と思ったら、L測定なのかC測定なのかが解らないことが判明・・・結局、①のR/WはGND接続で逃げます。
⑥ L/Cどちらの測定中かを読み取る入力ポートが1ポート
必要。LOWでL測定とし、適当にプルアップ。
以上、ポート数ピッタリで設計完了です
① まずはLCDが付くため7本のポートが必要。ケチって
6本にもできるが、数勘定としてひとまず。
② 発振用のコンパレータのI/Oは3本。これは、実験の時に
使ったポートをそのまま使う。
③ TTLレベル(というか5V)の出力ポートが1本・・・これで
ダイオードスイッチを制御。
④ 周波数カウンタ入力が1本必要。Timer#0を使って
直接カウントすると楽。
・・・と、ここまでで12本。前提となるPIC16F648Aに4MHzのクリスタル外付けで2本、VDD,VSS,MCLRで合計3本。残り1本

⑤ プッシュSWによるモード設定・・・測定開始、リセットや
周波数表示など、ちょっとした小細工実行用。
これでひとまず一杯になりました。①のケチりをしなくても、何とか入りそう・・・と思ったら、L測定なのかC測定なのかが解らないことが判明・・・結局、①のR/WはGND接続で逃げます。
⑥ L/Cどちらの測定中かを読み取る入力ポートが1ポート
必要。LOWでL測定とし、適当にプルアップ。
以上、ポート数ピッタリで設計完了です

PIN | I/O | Assign | PIN | I/O | Assign |
1 | RA2 | C1Vin+ | 18 | RA1 | PSW |
2 | RA3 | C1Vout | 17 | RA0 | C1Vin- |
3 | RA4 | CNTI | 16 | RA7 | OSC1 |
4 | RA5 | MCLR | 15 | RA6 | OSC2 |
5 | VSS | - | 14 | VDD | - |
6 | RB0 | DISW | 13 | RB7 | LCD7 |
7 | RB1 | LCCK | 12 | RB6 | LCD6 |
8 | RB2 | E | 11 | RB5 | LCD5 |
9 | RB3 | RS | 10 | RB4 | LCD4 |
- 関連記事
-
- LCメータのポートアサイン修正
- またも宗旨替え・・・NANDでフランクリン!?
- LCメータのポートアサイン
- ダイオードによる切替試験
- LCメータの予備実験結果が・・・