//Declaro las variables en los pines int Rojo=11; //Pin LED Rojo int Verde=10;//Pin LED Verde int Azul=9; //Pin LED Azul bool modoRandom = true; void setup()//una vez { //Velocidad del puerto serial del módulo Bluetooth Serial.begin(9600); //Declaramos las patillas del led RGB como salidas (emiten luz) pinMode(Rojo,OUTPUT); pinMode(Verde,OUTPUT); pinMode(Azul,OUTPUT); } void cambiarColor(int red, int green, int blue){ analogWrite(Rojo,red); analogWrite(Verde,green); analogWrite(Azul,blue); } void loop() { while(modoRandom==true){ //AQUI DEBAJO COLOCAMOS NUESTROS CODIGOS DE COLORES JUSTO DEBAJO DE ESTA LINEA BONITA cambiarColor(250,5,5); delay(800); cambiarColor(250,54,5); delay(800); cambiarColor(235,103,52); delay(800); cambiarColor(232,146,26); delay(800); cambiarColor(242,208,15); delay(800); cambiarColor(252,232,10); delay(800); //ARRIBA DE ESTA LINEA VA EL CÓDIGO DEL CAMBIO DE COLORES //cambiarColor(0,0,255); //delay(1000); if (Serial.available()>0) modoRandom=false; } //Cuando haya datos disponibles (Bluetooth conectado) while(Serial.available()>0) { int red = Serial.parseInt(); //Leemos el primer valor entero Rojo y lo almacenamos en la variable red int green = Serial.parseInt(); //Leemos el segundo valor entero Verde y lo almacenamos en la variable green int blue = Serial.parseInt(); //Leemos el último valor entero Azul y lo almacenamos en la variable blue //Cuando lea el carácter fin de línea ('\n') quiere decir que ha finalizado el envío de los tres valores if (Serial.read() == '\n') { //AQUI ESTAMOS LEYENDO LA INFORMACIÓN ATRAVEZ DEL BLUETOOTH //Enviamos los valores de los tres colores al LED RGB através de PWM analogWrite(Rojo,red); analogWrite(Verde,green); analogWrite(Azul,blue); } } }