//BORIS FROILAN HUANCA GONZALES
int rled = 11; // Pin PWM 11 para led rojo
int bled = 10; // Pin PWM 10 para led azul
int gled = 9; // Pin PWM 9 para led verde
int i; // Variable para ciclos repetitivos
int repeat = 5; // Variables para cantidad límite de repeticiones
void setup() {
pinMode(rled, OUTPUT);
pinMode(bled, OUTPUT);
pinMode(gled, OUTPUT);
}
void loop() {
for(i = 0; i < repeat; i++)
{
delay(1000); // Se espera 1 segundo
rgbOn(); // Se encienden los colores principales
color('y'); // Se enciende el LED en color amarillo (y de yellow)
delay(1000);
color('o'); // Se enciende el LED en color naranjo (o de orange)
delay(1000);
color('p'); // Se enciende el LED en color rosado (p de pink)
delay(1000);
}
}
void rgbOn() {
analogWrite(rled, 255); // Se enciende color rojo
delay(500); // Se espera 500 ms
analogWrite(rled, 0); // Se apaga color rojo
analogWrite(bled, 255); // Se enciende color azul
delay(500);
analogWrite(bled, 0); // Se apaga color azul
analogWrite(gled, 255); // Se enciende color verde
delay(500);
analogWrite(gled, 0); // Se apaga color verde
}
/******Función que permite escoger entre color amarillo, naranjo o rosado******/
void color(char color) { // La función recibe un parámetro que se guarda en variable color
switch(color) { // Se compara variable color con dato guardado
case 'y': analogWrite(rled, 255); // Si color == 'y' se enciende color amarillo
analogWrite(gled, 255); // Mezclando r = 255 / g = 255 / b = 0
analogWrite(bled, 0);
break;
case 'o': analogWrite(rled, 255); // Si color == 'o' se enciende color naranjo
analogWrite(gled, 100); // Mezclando r = 255 / g = 180 / b = 0
analogWrite(bled, 0);
break;
case 'p': analogWrite(rled, 255); // Si color == 'p' se enciende color rosado
analogWrite(gled, 0); // Mezclando r = 255 / g = 0 / b = 255
analogWrite(bled, 255);
break;
}
}