//ボリュームを回して変化するアナログ入力値(0~1023)と電圧換算値(0~5V)をシリアルモニタに出力する
//表示は、例えば「abalog value = 1023(改行) 5.00V」
volatile boolean state = LOW; //LED点灯・消灯を決める変数。
void setup() {
pinMode(9, OUTPUT);
attachInterrupt(0,int_ledact,RISING); //割り込みの設定(D2ピンがLOWからHIGHへ変化したとき)
Serial.begin(9600); //通信速度を9600bpsに
}
void loop() {
digitalWrite(9, state);
int val;
val = analogRead(0); //ボリュームにかかる電圧を読み込む
Serial.print("analog value = "); //文字列を送信(改行コードなし)
Serial.println(val); //値を送信(改行コード付き)
//Serial.print(val/1023*5); //電圧変換値を送信(改行コードなし)、★val/1023*5で計算すると整数(商*5)になってしまう
delay(500);
}
void int_ledact() { //割り込みがかかった時に実行される関数(loop()の外にあることに注意)
state = !state; //点灯と消灯を切り替える
}