下手の横好きのスクラップブック!!

下手の横好きの、いろいろな記録です。
電子工作・PIC・Arduino・太陽光発電・写真などetc

Arduino スイッチでLEDを点滅

2010-11-22 | Arduino

初体験はボードのチェックを兼ねたLEDが点滅するスケッチでしたが、
さらに一歩進めてスイッチの入り切りでLEDを点滅する配線とスケッチに進みます。
配線は別図の通りで、スイッチ回路が増設になりピン7に接続されます。
スイッチがONの時ピン7はHIGHに、スイッチがOFFの時はLOWになります。
これをdigitalRead()の命令で読み取ります。
digitalRead()はカッコの中で指定したピンに電圧がかかっているかどうかをチェックし
結果をHIGHかLOWで返します。
その値を if文で判断しdigitalWrite()でLEDをオン/オフします。

接続図

スケッチは次のようになります。

//スイッチによりLEDを点滅させる

#define LED 13 //ピン13にLED
#define SW 7  //ピン7にスイッチ

int val = 0; //SWの状態を記録する変数

void setup() {               
 
  pinMode(LED, OUTPUT); //ピン7を出力に設定
  pinMode(SW, INPUT); //ピン7を入力に 
}

void loop() {
  val = digitalRead(SW);//スイッチの状態をvalに読み込む
 
  if (val == HIGH) {  //スイッチの状態がONならば
   
  digitalWrite(LED, HIGH);   //LEDを点灯する
  }else {                   //スイッチがOFFならば
  digitalWrite(LED, LOW);    //LEDを消灯する
  }
}

スイッチの代わりに光センサ(cdsセル)を入れて、スケッチの
LEDがON/OFFする部分を次の通り書き換えると、暗くなるとLEDが
点灯し明るくなると消灯します。
csdセルは周囲が暗いと抵抗値は高くなりスイッチとしてはOFFの状態、
周囲が明るくなると抵抗値は下がりスイッチとしてはONの状態になります。

digitalWrite(LED, LOW);   //LEDを消灯する
  }else {                   //スイッチがOFFならば
  digitalWrite(LED, HIGH);    //LEDを点灯する

明るい状態(LED消灯)           暗い状態(LED点灯)黒いテープでcdsを覆っている

 

 

コメント (4)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする