A/D変換サンプル

A/D変換機能を使って、アナログな電圧を数値化する。
今回はこれとフォトトランジスタを使って、照度計を作ってみよう。

回路図

A/D変換サンプル

LCDの回路に、フォトトランジスタ(NJL7502L)と、レンジ切り替え用の抵抗を4種類追加。
データシートによれば、光が当たることにより流れる電流は、0.3μA〜10mA。
てことは、オームの法則でこんな感じ?

最小レンジ:E=0.0000003(0.3μ)A*100000(100k)Ω=0.03V
最大レンジ:E=0.01(10m)A*100Ω=1V

A/D変換の精度は10bit(1024段階)なので、基準の5Vを1024で割って、最小0.005Vくらいか。
最小レンジの方が微妙かと思ったけど、変化を捕まえられないことはないかね。
まぁ、このあたりだと、データシートでは10ルクスにも届かないような範囲なので、ロウソク未満、月明かりくらい……?


で、書いて試してみてから気づいたんだけどね?
普段、AVRをいじってるのは夜の時間帯で、せいぜいが蛍光灯の明かりなわけですよ。
昼間だったとしても、窓と反対側の壁際にいるので、下手したら蛍光灯より暗いわけですよ。

で、蛍光灯の下で、100kΩの抵抗をつけて、最小レンジで計ってみても、最大値はぎりぎり5V*(1000/1024)いくかどうかってとこで、あとちょっとなんだけど、オーバーフローするところまでいかないのね。
安い懐中電灯を買ってきて、直接当ててみても、同じくらいだった。

てことは、流れてる電流は、I=(5V*1000/1024)/100000(100k)Ω=0.000049(49μ)Aなんで、これをルクスに換算すると、100〜200ルクス。
レンジ切り替えをする意味がないようです。
というわけで、今回は、100kΩの抵抗のみでいきます。
1MΩの抵抗とかがあれば、100kΩと切り替えて使えるかもね。

A/D変換サンプル

ソースコード

基本動作


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS