filmov
tv
Fade 3 LEDs arduino

Показать описание
//source code. enjoy!
//better code in the comments (this description does not allow brackets, so i can't put it here)
int red = 5; //the first three lines are location of leds
int green = 6;
int blue = 3;
int turn = 0; //turn is whose turn is it to turn on, 0 is red, 1 is blue and 2 is green; this is just to make switching easier
int fade = 5; // amount of fade
int startblue = 0; //this is the birghness of the leds i should have named it brightblue, brightgreen etc.
int startgreen = 0;
int startred = 0;
void setup(){
pinMode(red,OUTPUT); //sets led outputs
pinMode(green,OUTPUT);
pinMode(blue,OUTPUT);
}
void loop(){
startred = startred + fade; //these three lines is the fading, it does not show up until its turn is up.
startblue = startblue + fade;
startgreen = startgreen +fade;
//first is the red leds turn which turn starts w/ 0 it faded up then down
if (turn == 0 ){
analogWrite(red,startred);
if (startred == 255){
fade = -fade; //negate the fade to go down
}
}
//once it reaches all the way done it negates the fade again to prepare the blue to fade and it switches the turn to 1 so blue can start
if (fade == -5 && startred == 0 && turn == 0){
turn = 1;
fade = -fade;
}
//blue's turn, same thing as red, fades up, then down
if (turn== 1){
analogWrite(blue,startblue);
if (startblue ==255){
fade = -fade;
}
}
//switches to green and negatives fade to prepare for green
if (turn == 1 && fade ==-5 && startblue == 0){
turn = 2;
fade =-fade;
}
if (turn == 2){
analogWrite(green,startgreen);
if (startgreen == 255){
fade = -fade;
}
}
// finally it resets to 0 to start w. red again
if (turn == 2 && fade ==-5 && startgreen == 0){
turn = 0;
fade = -fade;
}
delay (50); //delay to make it smooth
}
//better code in the comments (this description does not allow brackets, so i can't put it here)
int red = 5; //the first three lines are location of leds
int green = 6;
int blue = 3;
int turn = 0; //turn is whose turn is it to turn on, 0 is red, 1 is blue and 2 is green; this is just to make switching easier
int fade = 5; // amount of fade
int startblue = 0; //this is the birghness of the leds i should have named it brightblue, brightgreen etc.
int startgreen = 0;
int startred = 0;
void setup(){
pinMode(red,OUTPUT); //sets led outputs
pinMode(green,OUTPUT);
pinMode(blue,OUTPUT);
}
void loop(){
startred = startred + fade; //these three lines is the fading, it does not show up until its turn is up.
startblue = startblue + fade;
startgreen = startgreen +fade;
//first is the red leds turn which turn starts w/ 0 it faded up then down
if (turn == 0 ){
analogWrite(red,startred);
if (startred == 255){
fade = -fade; //negate the fade to go down
}
}
//once it reaches all the way done it negates the fade again to prepare the blue to fade and it switches the turn to 1 so blue can start
if (fade == -5 && startred == 0 && turn == 0){
turn = 1;
fade = -fade;
}
//blue's turn, same thing as red, fades up, then down
if (turn== 1){
analogWrite(blue,startblue);
if (startblue ==255){
fade = -fade;
}
}
//switches to green and negatives fade to prepare for green
if (turn == 1 && fade ==-5 && startblue == 0){
turn = 2;
fade =-fade;
}
if (turn == 2){
analogWrite(green,startgreen);
if (startgreen == 255){
fade = -fade;
}
}
// finally it resets to 0 to start w. red again
if (turn == 2 && fade ==-5 && startgreen == 0){
turn = 0;
fade = -fade;
}
delay (50); //delay to make it smooth
}
Комментарии