nobcha23の日記

PICマイコンやArduinoを使う電子回路遊びを紹介します

ハンダレジストを落とさないと

PIC16F648Aを使うLCメータ基板ですが、まずはハンダレジストを落とさないとハンダ付けができません。B面レジストパターンを削って、スルーホールも銅を削らないようドリルでざぐり部品をハンダ付けしました。これでプログラムを焼こうかと思ってPIC箱を探すがPIC16F648Aはありません。そういえば、PIC16F628Aは実験しましたが、その後、メモリー不足発覚後、648Aにする件は88を代わりに使い、買うのを忘れてました。手持ちでピン互換となるとやっぱり、PIC16F88ですね。CPU変更します。プログラム書き込んで電源入れます。一瞬電源モニター用のLEDは動くが、その後うんともすんとも言いません。まず一つ目、回路図にスイッチ状態センス用ポートのプルアップを忘れてました。それでもまだ動かない。電源入れたら、スイッチがCAL/C状態確認後、基準コンデンサを並列に入れるリレーが動くはずなのに、そのかっちゃんと言う音が響きません。どれどれと探ると、手元にあったリレーを仕様気にせず使ったのがまずかったかな。よくよく説明書ひもとくと、リレーの駆動電流が40mA必要だと判明。PICのポートでは定格は高々3mAなので、リレーが動かない理由がわかりました。でもブレッドボード実験の時には動いていたような・・・。ともかくポートからデジトラ経由、ただし1/0は逆にして駆動することに変更。以上2点の修正が発生。ソフトのほうはRAはコンパレータ関連で使うため、LCD制御信号をRBに持ってきて、データ4ビットはRB4-7,ENがRB0,RSがRB1に変更しました。88で作ったときはTC4040B経由信号2本でのLCD接続だったので、今回4ビットパラレルで信号が6本必要となり、その際、LCDルーチンの方でニブル位置(上ニブル:4ビットのほうだった)間違えました。などなどのデバッグを行い、やっと動きました。