A/D変換は外部の電圧を使うことが出来ます。PIC入力にはVREF+とVREF-があって電源電圧を基準として使う場合の他、外部電圧も使えます。
以前[基準電圧]を考えましたが、今回は[その続き]で基板は同じです。決める手順
基準電圧
これはツエナーやバンドギャプダイオードの様な基準電圧発生素子を使うのが簡単です。これらは一般にIC化され電圧・温度変化に対し安定に動作します。(NPC121 / TIなど)。ハード処理
○外部基準電圧をVREF+(AN3)に接続する。
○入力端子はオーバーしないように分圧抵抗を入れる。どこかにVRにして調節出来るようにすると良い。ソフト処理
○入力の端子を決める、ここではAN0のみとする。
○端子を入力にするため、TRIS XのBitを1にして入力とする。
○端子をA/D変換として使うので、端子はANSELを1にする。
○外部基準電圧を使うのでADCON1レジスターを指定する。これにより外部基準電圧に変更する。
[ADCON1.VCFG0=1;]
○後は通常のA/D変換の読み出しをして利用する。
[PORTB.F7=1; //LED ON]
[ADC=Adc_Read(0); //0=チャンネル]
[PORTB.F7=0; //LED OFF]注意点
○基準電圧の電圧が低いので、OVER電圧に注意します。サンプルの赤色LEDの場合1.8V近くになります、この時1/1024に分解されるので適当に入力電圧は分圧が必要です。回路はVRを入れている。
○A/D変換は一般に1回では誤差が出るので、一般に8回測定して1/8にするとか平均化して使えば数字は安定します
この場合測定時間が問題になりますが、1回のA/D変換時間は条件によって変わりますが0.2mS程度で戻って来ます。8回の測定では2mS以下で可能です。この実験では、電源電圧を変化させて「どれだけ追従しているか」を調べた物です。テスター(供給電源)とLCD(測定結果の表示)が同一が望ましい。しかし少し変動に影響するのか多少表示は異なるようです。
一般に電源電圧がころころ動くわけではないので、まあ「十分使える」と感じました。
電圧の実験@
LCD表示電圧 テスター電圧 差 補正 5.42 V 5.51V -0.09 +0.02 5.20 V 5.28V -0.08 +0.01 5.00 V 5.07V -0.07 0 4.80 V 4.86V -0.06 -0.01 4.60 V 4.64V -0.04 -0.03 4.41 V 4.43V -0.02 -0.05 ○実験は電源電圧が上昇すると、誤差が大きくなった。
○元々LCD表示とテスターでの表示が同一なら良いのですが、VRが小さいので細かく合わせられない。多回点式のものが良いのですが、以前使った物をそのまま利用しました。
○およその傾向が分ればと思い、実験をしています。
○4.6-5.4Vと約1Vの電源が動いても、基準は0.05Vぐらいの変動となり1/20に押さえ込めるのが分りました。
○表では4.4V以下は出していませんがLCDが薄くなって見えません、マイナスを加えると出て来るのですが、今回の調査を省略しました。その他・参考になれば!
電源を良くすればもっと安定化するとか、基準電圧を電源から分離出来るので雑音に対して有利、などメリットが考えられます。
市販の安価なLEDを使ったので温度係数に付いては未調査で不明です。
LEDは短時間しか作動しないのと(以前の実験で高速動作の確認が出来ています)、電流も凄く少ないので作動しているのが眼では分りません。LEDをショートさせると表示が1.023になるので動作はしている様です。
応用例として、温度計など1℃で10mVなどのICがありますが、基準電圧を1.024Vにすればオペアンプを使わずに[0.1℃の表示]も出来るのでしょうか。制作 2010/5/18
電圧の追加実験A
この実験Aは実験@がR(51KΩ)と赤色LEDを各1つ使ったのに対し、実験AはRとLEDを2段にしたものです、10KΩ+赤色LED+4.7KΩ+赤色LEDにした物です。
結果は表のように安定度は増加して来ました。部品数が多くなるのでその辺との兼ね合いになります。
この実験Aでは10KΩ+4.7KΩにしましたが、少し不安定さが見られます。少し精度は落ちますが10Kオーム+2.2KΩ辺が良さそうです。この状態でも、1V電源変動でも出力DATAとして表示誤差として0.02Vです。完璧ではありませんがちょっとした実験用に使えそうです。
皆様の追加実験をお願いします。(2010/5/22)
LCD表示電圧 テスター電圧 差 補正 5.47 V 5.51V +0.04 +0.01 5.22 V 5.25V +0.03 0 4.97 V 5.00V +0.03 0 4.73 V 4.75V +0.02 -0.01 4.49 V 4.51V +0.02 -0.01