説明
Arduino(ATmega8、ATmega168、ATmega328P、またはATmega1280)のアナログ入力ピンについての説明
ADコンバーターを搭載しています
Arduinoに使用されるATmegaコントローラーには、オンボード6チャンネル(MiniおよびNanoでは8チャンネル、Megaでは16チャンネル)のアナログ-デジタル(A / D)コンバーターを搭載しています。コンバーターの分解能は10ビットで、0〜1023の整数を返します。
Arduinoユーザーのアナログピンの主な機能はアナログセンサーの読み取りですが、アナログピンには汎用入力/出力(GPIO)ピンの機能もあります。 (デジタルピン0〜13と同じ)。
したがって、デジタル入出力ピンが足りない場合は、すべてのアナログピンを代用することができます。また、このアナログピンは、一般的なdigitalピンと同じ設定をpinModeで指定することができます。
pinMode(A0, OUTPUT); digitalWrite(A0, HIGH); pinMode(A0, INPUT_PULLUP); // set pull-up on analog pin 0
注意
ピンが出力に設定されている場合、analogReadコマンドは正しく機能しません。その場合は、analogReadを使用する前に入力モードに戻してください。同様に、ピンが出力としてHIGHに設定されている場合、入力に戻るとプルアップ抵抗が設定されます。
ATmegaでは、他のアナログピンでA / D読み取り(analogRead)を行うのに短時間での切り替えは電気ノイズが発生やアナログシステムにジッタが発生する可能性があるため気を付けます。(デジタルモードで)アナログピンを操作した後、analogRead()を使用して他のアナログピンを読み取る前に、短いdelayを追加することが望ましい場合があります。