nobcha23の日記

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

PIC16F88 ADC入力の7セグLED表示 実験その2 TC4040B

PIC12F675でADC入力、7セグLED3桁表示をするためにPIC16F88で実験その2を行います。仕様は次の通り。

項番 項目 内容 備考
1 シガーライタ接続 電圧をシガーライターからとるので、3端子レギュレータ5Vを入れます。車の発電系統からのサージ電圧対策のチョークコイルとツェナーダイオードを保護に入れます。 車の発電系統からの百ボルトを越えるサージ電圧からの保護回路。
2 ADC入力 AN0を使い3端子電圧の入力部から5.35分の1に分圧して取り込みます。  
3 ADC仕様 参照電圧はVddとVssです。減電圧とか飽和電圧を考慮すると4.8VをADRESHへ256分割か。(4.8V/256)*5.35=0.1となり、ADCされた後の1ビットの重みが0.1Vになります。 5.35分の1の分圧は難しそうなので、固定抵抗と半固定抵抗にします。
4 表示電圧仕様 AN0からのADC入力、ADRESHの8ビットを0.1V単位と思い扱います。  
5 7セグメント変換 ADC出力のADRESHをバイナリから3桁の電圧値をデシマルに変換し、得た数字をセグメントabcdefgに分解します。、 abcdefgDPは4040Bの各段の出力につなぎます。
6 カウンタ値変換 4040Bのカウンタ段出力がabcdefgDPにあたるので、該当カウンタ段をトグルことができる値に変換します。 光らせたいカウンタ段の値を足し算します。
7 ダイナミック表示 人間視覚の残像現象を利用し、2m秒間程度各桁を表示して、桁切り替えします。 同時駆動セグメントが多いとセグメントあたりの電流が減るので、セグメント数に応じ駆動時間を加減します。
8 小数点表示 2桁目LEDの小数点を光らせます。  
9 ゼロサプレス 10の位が0のときは表示をやめます。