« パッソでケーズへ行き、USBメモリを購入した♪(笑) | トップページ | I2C接続リアルタイムクロックRTC-8564NB読み出しテスト1(ビデオ) »

2010年5月 6日 (木)

今さらですが PIC18F4550 C18 A/D変換・・・

以前、PIC16F88 アセンブラで3ケタ7セグLEDの簡易電圧計やPIC16F873 アセンブラでレベルメーターを作った・・・

そういえば PIC18F4550 でA/D変換やってないよなぁ~(笑)

C18でとりあえずキャラクタLCDにテスト表示、単3充電式ニッケル水素電池2本直列電圧値を測定

表示レイアウトは時間無いので即席でスンマセン(笑)

544はA/D変換値、分解能10ビット、リファレンス電圧はVDD=5Vで

換算電圧 544*5.000/1024=2.656(V)

OpenADC()関数を使用、adc_lcd_01.c

adc_lcd_01.JPG

多チャンネルA/D変換ってどーすんの?(笑)

OpenADC()関数のパラメータ、書籍や「MPLAB C18 Libraries_51297f.pdf」を見て

ADC_CH0, ADC_CH1 複数パラメータ設定でチャンネル切り換えて読み出しでいいようだ(笑)

ちなみに 18Fシリーズでもデバイスによって & ADC_REF_VDD_VSS, ADC_2ANA のところの記述が異なるようだ・・・メモ

adc_lcd_03.c

AN0 は電池1本分、AN1 は電池2本直列電圧

adc_lcd_03.JPG

これ最初良く解らずに、ADC_CH0 でOpenADC() して値読んで CloseADC()

次に、ADC_CH1 でOpenADC() して値読んで CloseADC()

の繰り返しにしてみたもの adc_lcd_02.c

動作は同じに見える(笑)

adc_lcd_02.JPG

今回、浮動小数点実数の表示用関数 lcd_float() の小数点部0とした時、.0表示されてしまう不具合を見直した・・・

久々にマイコンいじった!とりあえず下準備はOKだな♪(笑)

ちょっと気になることがあって、0~1Vの電圧測定したい、出来れば何秒置きかでグラフ表示させたいのだ・・・ってことはグラフィック液晶か・・・

リファレンス電圧は手持ちのこれ使ってみる予定、4.096Vのもの・・・どーなんでしょうか・・・

高精度マイクロパワーシャント基準電圧LM4040A.jpg

忘れちゃうからメモメモです♪(笑)

 

 

 

 

 

|

« パッソでケーズへ行き、USBメモリを購入した♪(笑) | トップページ | I2C接続リアルタイムクロックRTC-8564NB読み出しテスト1(ビデオ) »

ジムニーJA12WのDIY」カテゴリの記事

電子工作」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« パッソでケーズへ行き、USBメモリを購入した♪(笑) | トップページ | I2C接続リアルタイムクロックRTC-8564NB読み出しテスト1(ビデオ) »