Darkside(https対応しました) |
2018年9月19日(水) 21:45
3.3Vに昇圧したが、動かない。PICのピンから、何の信号も出力されない。
基板はかなり単純であり、紛れる余地がない。それでも何かミスしたかもしれないので、TWE LITE 試験基板の空き地にPICソケットを取り付け、秋月DC-DCで3.3Vを供給してやる。
更に、XC8の設定が間違っているかもしれないので、アセンブラでLチカのプログラムを組んで書き込む。
だが、それでもLチカに失敗。PICは完全に沈黙したままだ。
さすがにここまで来ると、原因の可能性は絞られる。PICを3.3V動作させた実績はあるが、たいてい5Vでしか使わないため、何か忘れている可能性が高い。動作電圧の差により発生するトラブル、に絞ってネット検索する。
その結果、犯人がブラウンアウト・リセットであると判明した。
BODEN_ON になっていると、電源電圧が4V以下になるとリセットが掛かる。よって、3.3V電源では最初から動作しない。
話は単純だった。BODEN_OFF にすれば、3.3VですんなりLチカが動作した。立ち上がりの速い電源なら、問題は無い。
もちろん、液晶ディスプレイへの表示も成功した。
RA4から読み込んだエネループ2本の変換値は792と表示され、これは2.552Vに相当する。テスター測定結果と、しっかり合致している。
更に、MCLRのプルアップ抵抗も除去し、MCLRを使用しない設定にする。
MCLRを使わなければ、プルアップなしでもPICは動作する。最大限にピンを開放し、XC8でも16本のI/Oが使えるようになった。
配線が邪魔になりつつあるので、固定できるものは固定しておきたい。
動作確認できたので、PIC基板部分をオートウエルドで接着する。
設定1つのせいで、何日か遠回りしてしまった。とは言え、I2Cレベル変換と3.3V電源は、いずれにしろ必要だった。実際には、それほど遠回りしてしまった訳ではない。
それにこれでPIC+C言語のノウハウも溜まり、PIC16F88 の有用性が更に高まった。特に、8MHzで処理が間に合う場合には。
・小さくて扱い易い18ピンDIPという形状。
・それでいて8MHzならI/Oピンを16本も使える。
・ソフトウェアI2Cでマスターになるのが簡単(I/Oピン2本だけで液晶表示)。
・C言語でも案外大規模なソフトが組めて実用になる。
・消費電力が小さく、3.3Vでも5Vでも動作する。
・I/Oピンは20mAまで直接ドライブ可能(dsPICは4mAまで)。
8MHzなら、外付け回路が事実上必要ない。パスコンだけだ。基板の準備が楽で、18ピンしかないのに液晶表示したうえでI/Oピンが14本使える。10ビットA/D変換も5系統使える。
小規模処理のエースである。
written by higashino [バトルタンク改造Tiger1] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]
Generated by MySketch GE 1.4.1
Remodelling origin is MySketch 2.7.4