Fading RGB LED (Arduino) (3 / 4 steg)
Steg 3: kod
Koden är lite svårare men fortfarande ganska enkelt.Denna kod fungerar bara för gemensam anod lysdioder.
Om du vill använda det för gemensam katod lysdioder måste du ändra alla de "analogWrite (färg, 255 - colorVal)," linjer till "analogWrite (färg, colorVal);" (utan de "255 -"), så borde det fungera (jag har inte testa).
#define grön 3
#define blå 5
#define röd 6
#define fördröjningstid 20
void setup() {
pinMode (gröna, OUTPUT);
pinMode (blå, OUTPUT);
pinMode (röd, OUTPUT);
digitalWrite (grön, hög);
digitalWrite (blå, hög);
digitalWrite (röd, hög);
}
int redVal;
int blueVal;
int greenVal;
void loop() {
int redVal = 255;
int blueVal = 0;
int greenVal = 0;
för (int jag = 0; jag < 255; i += 1) {
greenVal + = 1;
redVal-= 1;
analogWrite (grön, 255 - greenVal);
analogWrite (röd, 255 - redVal);
fördröjning (fördröjningstid);
}
redVal = 0;
blueVal = 0;
greenVal = 255;
för (int jag = 0; jag < 255; i += 1) {
blueVal + = 1;
greenVal-= 1;
analogWrite (blå, 255 - blueVal);
analogWrite (grön, 255 - greenVal);
fördröjning (fördröjningstid);
}
redVal = 0;
blueVal = 255;
greenVal = 0;
för (int jag = 0; jag < 255; i += 1) {
redVal + = 1;
blueVal-= 1;
analogWrite (röd, 255 - redVal);
analogWrite (blå, 255 - blueVal);
fördröjning (fördröjningstid);
}
}