フルカラーLEDのGND端子に黒線を、VDD端子に赤線を、DI端子に白線をハンダ付けします。裏面にハンダ付けするとやりやすい。反対側にピンヘッダーをハンダ付けして完成。収縮チューブも忘れずに。
完成したら、黒線をArduinoのGNDに、赤線を5Vに、白線をD6につなぐ。
下記のプログラムで、赤、緑、青に1秒ずつ光る。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include #define PIN 6 #define NUMPIXELS 1 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { pixels.begin(); } void loop() { pixels.setPixelColor(0, pixels.Color(5,0,0)); //Red pixels.show(); delay(1000); pixels.setPixelColor(0, pixels.Color(0,5,0)); //Green pixels.show(); delay(1000); pixels.setPixelColor(0, pixels.Color(0,0,5)); //Blue pixels.show(); delay(1000); } |
スムースに光らせるにはforループを使う
1 2 3 4 5 6 7 8 9 10 11 12 13 | #include #define PIN 6 #define NUMPIXELS 1 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { pixels.begin(); } void loop() { int t=5; for(int i=0;i<255;i++){ pixels.setPixelColor(0, pixels.Color(i,0,0)); //Red pixels.show(); delay(t); } for(int i=0;i<255;i++){ pixels.setPixelColor(0, pixels.Color(255-i,0,0)); //Red pixels.show(); delay(t); } } |
次は可変抵抗と組み合わせて明るさを換えてみる。
接続は以下のとおり。
1.Arduinoの5Vをブレッドボードの+に、GNDをブレッドボードの-につなぐ。
2.フルカラーLEDの赤線をブレッドボードの+に、黒線を-に、白線をArduinoのD6につなぐ。
3.可変抵抗の赤黒線をブレッドボードにつなぎ、白線をArduinoのA0につなぐ。
下記のプログラムで、可変抵抗の値におうじて明るさが変化する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #include #define PIN 6 #define NUMPIXELS 1 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); int vr1; void setup() { pixels.begin(); } void loop() { vr1= analogRead(0); pixels.setPixelColor(0, pixels.Color(vr1/4,0,0)); pixels.show(); delay(10); } |