Arduino 日本語リファレンス


【注意】

外部基準電圧を0V未満あるいは5V(電源電圧)より高い電圧に設定してはいけません。

AREFピンに外部基準電圧源を接続した場合、analogRead()を実行する前に、かならずanalogReference(EXTERNAL)を実行しましょう。デフォルトの設定のまま外部基準電圧源を使用すると、チップ内部で短絡(ショート)が生じ、Arduinoボードが損傷するかもしれません。

5KΩの抵抗器を介して外部基準電圧源をAREFピンに接続する方法があります。これにより内部と外部の基準電圧源を切り替えながら使えるようになります。ただし、AREFピンの内部抵抗(32KΩ)の影響で基準電圧が変化する点に注意してください。5KΩの外付け抵抗と32KΩの内部抵抗によって分圧が生じ、たとえば2.5Vの電圧源を接続したとしても、2.5 * 32 / (32 + 5)により、約2.16VがAREFピンの電圧となります。


【AREFの使い方】

AREFに供給される電圧が、ADCの最大値(1023)に対応する電圧を決定します。ADCはAnalog to Digital Converterの略です。

AREF(pin 21)に何も繋がっていない状態がすべてのArduinoボードの標準的な構成です。analogReferenceがDEFAULTに設定されているとき、AVCCとAREFは内部的に接続されています。この接続は低インピーダンスなので、DEFAULT設定のまま(誤って)AREFピンに電圧をかけてしまうと、ATmegaチップがダメージを受けることがあります。これが、AREFピンに5KΩの抵抗器をつなぐほうが良い理由です。

analogReference(INTERNAL)を実行することで、AREFピンはチップ内部で内蔵基準電圧源に接続されます。この設定では基準電圧(1.1V)以上の電圧がアナログ入力ピンにかかったとき、analogReadは1023を返します。基準電圧未満では比例の関係となり、0.55Vで512となります。

内蔵基準電圧源とAREFピンの間の接続は高インピーダンスなので、AREFピンから1.1Vを読み取ることは難しく、高インピーダンスなマルチメータが必要になるでしょう。INTERNAL設定のときは、外部の電圧源を(誤って)AREFピンにつなげてしまったとしてもチップがダメージを受けることはありませんが、1.1Vの電圧源はオーバーライドされてしまい、ADCの読みは、その外部からの電圧で決定されてしまいます。

外部の基準電圧を使用するときの正しい設定はanalogReference(EXTERNAL)です。これにより、内部の基準電圧源は両方とも切り離されて、AREFピンに対して外から供給される電圧をADCの基準とすることができます。



[目次へ戻る]

Creative Commons Attribution-ShareAlike 3.0 License.
このドキュメントはArduino Teamにより執筆され、Takumi Funadaが翻訳し、一部加筆修正したものです
ご意見はtf at musashinodenpa.comまでお送りください [Arduino wiki]