LEDを複数使って明るさを制御する ~ Arduino LV6 ~



LEDを複数使ってLEDの明るさを制御してみる。

Arduino UnodでPWM(Puls width Modulation:パルス幅変調)が使用できるのが3、5、6、9、10、11ピンだ。

 

今回からドラクエネタは止めます。案外画像探しなどで時間をとられているのでm(_ _)m

 

今回は6つ全てのピンにLEDを接続して明るさを制御してみる。

 

【 完成動画 15秒 】


 

【 回路図 】

 

【 必要な材料 】

  • LED 6個
  • 抵抗510Ω 6個
  • ジャンパワイヤー 7本

 

【 完成写真 】

 

【 スケッチ 】

#define FADE_TIME 2

// LEDをつなぐピンを定義
int led_pins[] = {3, 5, 6, 9, 10, 11};

// 初期化
void setup(){

  int i;

  // LEDのピンを出力に
  for (i=0; i<6; i++) {
    pinMode(led_pins[i], OUTPUT);
  }

}

// メインループ
void loop() {

  int i,j;

  // LEDを暗から明へフェード
  for (j=0; j<6; j++) {
    for (i=0; i<256; i++) {
      analogWrite(led_pins[j], i);
      delay(FADE_TIME);
    }
  }

  // LEDを明から暗へフェード
  for (j=0; j<6; j++) {
    for (i=255; i>-1; i--) {
      analogWrite(led_pins[j], i);
      delay(FADE_TIME);
    }
  }
}

 

プログラムをやった事無い人にはちょっと難しいかもしれないが、そこは慣れていくしかないと思う。

 

頑張ってレベルアップしよう。

 

出来た人は次のレベルへ。

 










Leave a comment

Your email address will not be published.

*



(Spamcheck Enabled)