16F88でAD変換と7seg LED表示のお勉強
久々にPICをいじってみました。
かなり前にいじった時は16F84Aを使ったLED表示まででしたが、
今回はAD変換とその結果の 7seg LED 表示です。
スクラッチで組むのも自信がないので、まずはネットで探して
スクラッチで組むのも自信がないので、まずはネットで探して
それをベースに組むことにします。
統合環境は MPLAB X IDE を使用していますが、
verが大きく違うとそのままではコンパイルできないようで、
更にネットで調べて、最新の MPLAB X IDE 環境でビルドが通るようになりました。
結果的に変更点は、上記の環境差分の部分と、使用する7seg LEDへの
合わせ込み(アノードコモン→カソードコモン)でした。
オリジナルは7seg LED の桁数は4桁だったのですが、
今回はお勉強なので、1桁目と4桁目は無視としました。
(LEDを接続しないだけでプログラム変更はなし)
プログラムで多少苦労した後は、次はPICへの書き込みになります。
PICへの書き込みは以前購入したaitendoのPICライタを使用します。
(ブログでは書いてませんでしたが、16F84Aでの動作実績有です。)
PICへの焼き方をすっかり忘れていて、思い出すのが大変でした。
今度こそ忘れないように、ポイントを挙げると、
・起動だけならUSBのバス電源でOKだが、書き込みには電流不足のようで、
今度こそ忘れないように、ポイントを挙げると、
・起動だけならUSBのバス電源でOKだが、書き込みには電流不足のようで、
外部電源への接続が必要
→ 写真左下の電源コネクタにACアダプタを接続し電源供給
・外部電源接続に伴い、書き込みソフト MPLAB IPEのコンフィグも
・外部電源接続に伴い、書き込みソフト MPLAB IPEのコンフィグも
変更を設定する必要がある
・ICソケットにはPICに合った挿入位置に挿す(向きにも注意)
・写真右上の赤いDIP-SWも、PICに合わせてSW設定する
DIP-SWのすぐ左にシルク印刷で設定が明記してあるが、
シルク印刷とDIP-SWの並びが逆なので注意
・ICSP接続は以下
VPP --- 青
VDD --- 黄
GND --- 緑
PGD --- 赤
PGC --- 黒
PGM --- 白
2桁の数字が増えたり減ったりします。
最初は、7seg LEDの表示が数字になっていなかったのですが、
最初は、7seg LEDの表示が数字になっていなかったのですが、
ネットで参考にさせてもらったプログラムではアノードコモンの
7seg LEDを使用していたためで、今回はカソードコモンだったので
点灯と消灯が逆パターンになっていたためで、
これはプログラムでデジットの点灯を定義しているビットパッターンを
反転させることで対応しました。
最後になりましたが、
最後になりましたが、
今回のお勉強の目的はスクリュードライバアンテナであるSD330の
制御を実現させるためです。(7seg表示はオマケでした。。。)
自動制御は面倒なので無理ですが、どこまでできるかは
自動制御は面倒なので無理ですが、どこまでできるかは
今後のお楽しみです。
→ 中途半端で終わるのはいつものことですが。。。
→ 中途半端で終わるのはいつものことですが。。。
| 固定リンク
「電子工作」カテゴリの記事
- LCメータ購入(2020.09.29)
- 憧れのワイヤーストリッパー(2020.07.24)
- パドルのリグ切り替えSWを作ってみました(2020.06.14)
- Arduino LCD(2018.09.02)
- CI-Vインタフェースの製作 (FT234X)(2018.04.08)
コメント