抵抗の値を読んでLED点滅速度を調整

analogReadっていう関数があって、A0の抵抗値を読み (0から5ボルトの入力電圧を0から1023の数値に変換した値)、delay に代入するサンプル。じみー。だけども、初めての入力値を読んだってことで。

5倍してるけど、しなくもいい具合に変化してるのを確認できた。

 

/*
 analog read sample.
 2015.03.15
*/

void setup(){
 pinMode(13,OUTPUT);
}

void loop(){
  int resistance;
  int r;
  
  resistance = analogRead(0);
  r = resistance * 5;
  digitalWrite(13,HIGH);
  delay(r);
  digitalWrite(13,LOW);
  delay(r);
}
読み取ってる値がみたかったので、リファレンスのようにシリアルに数値を送ってみることに。
/*
 analog read sample.
 2015.03.15
*/

void setup(){
 pinMode(13,OUTPUT);
 Serial.begin(9600);
}

void loop(){
  int resistance;
  int r;
  
  resistance = analogRead(0);
  Serial.println(resistance);
  
  r = resistance;
  digitalWrite(13,HIGH);
  delay(r);
  digitalWrite(13,LOW);
  delay(r);
}

 

2015-03-16 0.43.12

あー、納得。

 

rgxatu1353647823286

2015-03-16 0.20.09