ArduinoでRGB LEDを光らせる

ArduinoでRGB LEDを光らせる


実装はサンプルそのままですが、実際にLEDを光らせてみました。

enter image description here

enter image description here

以下、サンプルソース。

//www.elegoo.com //2016.12.8

// Define Pins #define BLUE 3 #define GREEN 5 #define RED 6

void setup() { pinMode(RED, OUTPUT); pinMode(GREEN, OUTPUT); pinMode(BLUE, OUTPUT); digitalWrite(RED, HIGH); digitalWrite(GREEN, LOW); digitalWrite(BLUE, LOW); }

// define variables int redValue; int greenValue; int blueValue;

// main loop void loop() { #define delayTime 10 // fading time between colors

redValue = 255; // choose a value between 1 and 255 to change the color. greenValue = 0; blueValue = 0;

// this is unnecessary as we've either turned on RED in SETUP // or in the previous loop ... regardless, this turns RED off // analogWrite(RED, 0); // delay(1000);

for(int i = 0; i < 255; i += 1) // fades out red bring green full when i=255 { redValue -= 1; greenValue += 1; // The following was reversed, counting in the wrong directions // analogWrite(RED, 255 - redValue); // analogWrite(GREEN, 255 - greenValue); analogWrite(RED, redValue); analogWrite(GREEN, greenValue); delay(delayTime); }

redValue = 0; greenValue = 255; blueValue = 0;

for(int i = 0; i < 255; i += 1) // fades out green bring blue full when i=255 { greenValue -= 1; blueValue += 1; // The following was reversed, counting in the wrong directions // analogWrite(GREEN, 255 - greenValue); // analogWrite(BLUE, 255 - blueValue); analogWrite(GREEN, greenValue); analogWrite(BLUE, blueValue); delay(delayTime); }

redValue = 0; greenValue = 0; blueValue = 255;

for(int i = 0; i < 255; i += 1) // fades out blue bring red full when i=255 { // The following code has been rearranged to match the other two similar sections blueValue -= 1; redValue += 1; // The following was reversed, counting in the wrong directions // analogWrite(BLUE, 255 - blueValue); // analogWrite(RED, 255 - redValue); analogWrite(BLUE, blueValue); analogWrite(RED, redValue); delay(delayTime); } }

share

X で共有

related