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