analogRead関数
analogRead関数は指定したアナログピンから値を読み取ります。
Arduinoボードは6チャネル(miniは8チャネル、Megaは16チャネル)の10ビット(2の10乗=1024分解能)ADコンバータを搭載しています(ADはanalog to digitalの略)。
これにより、0から5ボルトの入力電圧を0から1023の数値に変換することができます。分解能は1単位あたり4.9mVとなります。
この処理は約100μ秒(0.0001秒)かかります。つまり、毎秒1万回が読み取りレートの上限です。
void setup() { //一回だけ実行 Serial.begin(9600); //9600bpsでシリアルポートを開く } void loop() { //{}内を無限ループで実行 int A = 0, B = 0, C = 0 ; //A,B,Cをint型の変数として宣言(毎回0にリセット) for (byte i = 0; i < 10; i++) { //A0,1,2ポートの電圧を10回読み平均値を出す A = A + analogRead(0); B = B + analogRead(1); C = C + analogRead(2); } A = A / 10, B = B / 10, C = C / 10; Serial.print(A); //Aの値をシリアル出力します Serial.print(":"); //:をシリアル出力します Serial.print(B); //Bの値をシリアル出力します Serial.print(":"); //:をシリアル出力します Serial.println(C); //Cの値をシリアル出力します delay(1000); //1000ms(1秒)待ちます }
図1:プログラム例
analogRead(pin)のパラメータ
pin :読み取りに使いたいピンの番号を整数で指定します。
○analogReadができるピン
励みになりますのでよければクリック下さい(^o^)/