Paso 5:
Este es el código modificado que incluye la sección del arco iris, esto también se basa en el último código de Doug que permite ajustar el brillo día / noche.
ACTUALIZACIÓN 27/10/2013 ***
Para tratar de eliminar el retraso causado por el arco iris, simplemente he añadido un comparador justo antes del arco iris que parece haber calmado.
El código de arco iris cambia ahora el sólo si de color los segundos = 30.
Parece que correr suave pero tendría que verlo durante 24 horas para ver si el error es fijo. Por favor cambie el final del código:
********************************************************
/ / Anular arco iris
Si (== segundo 30) {}
analogWrite (azul, blueNow);
analogWrite (rojo, redNow);
analogWrite (verde, greenNow);
redNew = random(255);
blueNew = random(255);
greenNew = random(255);
se desvanecen nuevos colores
mientras que ((redNow! = redNew) ||
(blueNow! = blueNew) ||
(greenNow! = greenNew))
{
fade(redNow,redNew)
fade(blueNow,blueNew)
fade(greenNow,greenNew)
analogWrite (azul, blueNow);
analogWrite (rojo, redNow);
analogWrite (verde, greenNow);
Delay(100);
}
********************************************************
La parte importante es la instrucción IF y no cambiar el retardo inferior a 100 porque destellará a través de una gama de colores en la segunda, un cuando segundo = 30.
Si alguien con más conocimiento de la codificación puede lanzar una opinión estaría muy agradecida.
Todos estamos aquí para aprender! (incluido yo :-))
Una nota importante es que porque el color no se establece hasta el final del código no se verá el mismo comprobar, está sucediendo, pero usted simplemente no puede verlo :-)
Así que una vez que han alimentado la unidad habrá un retraso de un par de minutos antes de que suceda algo emocionante. Su vale la pena esperar.