//Muestra la siguiente secuencia de colores:
//Carles Ribis 4A, 30-5-24
//Defino las variables constantes
const int RGBRojo = 11;
const int RGBVerde = 10;
const int RGBAzul = 9;
void setup() {
//Defino las entradas y salidas
pinMode(RGBRojo, OUTPUT);
pinMode(RGBVerde, OUTPUT);
pinMode(RGBAzul, OUTPUT);
//Empiezan todos apagados
digitalWrite(RGBRojo, HIGH);
digitalWrite(RGBVerde, HIGH);
digitalWrite(RGBAzul, HIGH);
}
void loop() {
for (int rojo = 255; rojo > 0; rojo--){ //El valor rojo empieza en 255 y va disminuyendo hasta 0
analogWrite(RGBRojo, rojo); //RGBRojo se enciende con el valor de rojo
delay(6); //Espera 0,006 segundos
}
for (int rojo = 0; rojo < 255; rojo++){ //El valor rojo empieza en 0 y va aumentando hasta 255
analogWrite(RGBRojo, rojo); //RGBRojo se enciende con el valor de rojo
delay(6); //Espera 0,006 segundos
}
for (int amarillo = 255; amarillo > 0; amarillo--){ //El valor amarillo empieza en 255 y va disminuyendo hasta 0
analogWrite(RGBRojo, amarillo); //RGBRojo se enciende con el valor de amarillo
analogWrite(RGBVerde, amarillo); //RGBVerde se enciende con el valor de amarillo
delay(6); //Espera 0,006 segundos
}
for (int amarillo = 0; amarillo < 255; amarillo++){ //El valor amarillo empieza en 0 y va aumentando hasta 255
analogWrite(RGBRojo, amarillo); //RGBRojo se enciende con el valor de amarillo
analogWrite(RGBVerde, amarillo); //RGBVerde se enciende con el valor de amarillo
delay(6); //Espera 0,006 segundos
}
for (int verde = 255; verde > 0; verde--){ //El valor verde empieza en 255 y va disminuyendo hasta 0
analogWrite(RGBVerde, verde); //RGBVerde se enciende con el valor de verde
delay(6); //Espera 0,006 segundos
}
for (int verde = 0; verde < 255; verde++){ //El valor verde empieza en 0 y va aumentando hasta 255
analogWrite(RGBVerde, verde); //RGBVerde se enciende con el valor de verde
delay(6); //Espera 0,006 segundos
}
for (int cian = 255; cian > 0; cian--){ //El valor cian empieza en 255 y va disminuyendo hasta 0
analogWrite(RGBVerde, cian); //RGBVerde se enciende con el valor de cian
analogWrite(RGBAzul, cian); //RGBAzul se enciende con el valor de cian
delay(6); //Espera 0,006 segundos
}
for (int cian = 0; cian < 255; cian++){ //El valor cian empieza en 0 y va aumentando hasta 255
analogWrite(RGBVerde, cian); //RGBVerde se enciende con el valor de cian
analogWrite(RGBAzul, cian); //RGBAzul se enciende con el valor de cian
delay(6); //Espera 0,006 segundos
}
for (int azul = 255; azul > 0; azul--){ //El valor azul empieza en 255 y va disminuyendo hasta 0
analogWrite(RGBAzul, azul); //RGBAzul se enciende con el valor de azul
delay(6); //Espera 0,006 segundos
}
for (int azul = 0; azul < 255; azul++){ //El valor azul empieza en 0 y va aumentando hasta 255
analogWrite(RGBAzul, azul); //RGBAzul se enciende con el valor de azul
delay(6); //Espera 0,006 segundos
}
for (int magenta = 255; magenta > 0; magenta--){ //El valor magenta empieza en 255 y va disminuyendo hasta 0
analogWrite(RGBRojo, magenta); //RGBRojo se enciende con el valor de magenta
analogWrite(RGBAzul, magenta); //RGBAzul se enciende con el valor de magenta
delay(6); //Espera 0,006 segundos
}
for (int magenta = 0; magenta < 255; magenta++){ //El valor magenta empieza en 0 y va aumentando hasta 255
analogWrite(RGBRojo, magenta); //RGBRojo se enciende con el valor de magenta
analogWrite(RGBAzul, magenta); //RGBAzul se enciende con el valor de magenta
delay(6); //Espera 0,006 segundos
}
}