Desvanecimiento de la luz del teclado RGB (7 / 8 paso)

Paso 7: codificación!

La codificación es una de las partes más divertidas de este proyecto. Como se indicó anteriormente, el IDE de Arduino fue utilizado para la codificación, que simplifica muchísimo el proceso. Una vez que un programador de configurar y tiene su software listo para ir, usted está listo para conseguir escribir! O copiar y pegar, según sea el caso. :)

Esto será largo, pero espero también ayudará y si nada más, despertar un interés en la codificación. Os adjunto el archivo .ino de Arduino, así como el enlace de PastBin con números de línea. También voy a generalmente lo que hace cada bit del código.

http://pastebin.com/j7zYH6g9

Este código asume que usted está usando el esquema presentado en el paso 3.

Primero apagado, líneas 1-11 establecer algunas variables que se utilizarán durante el programa. Es sobre todo cosas generales como la que entradas y salidas corresponden a que números, la tasa a la cual debería desaparecer el arco iris y el umbral que el sensor de luz debe responder a. Llegaré a las líneas 8-11 en un momento.

Líneas 13-18 simplemente configurar los pines como salidas (el perno del sensor de luz es de entrada por defecto). Línea 17 cambia de color para ser completamente apagado, usando la función descrita en el párrafo siguiente.

Líneas 49-53, la función de changeColor(), proporcionan la base para este programa. Básicamente, la función toma un valor 0-255 para el valor de luz individual para cada color y luego escribe en el pin correcto, utilizando la señal PWM discutida previamente. Sin embargo, puesto que mi LED es de ánodo común (común positivo), así que un valor de 0 (off/tierra) significa que el color será el brillo completo. Por lo tanto, para crear el efecto deseado donde 255 indica brillo completo, los colores se restan de 255 a invertirles.

Volviendo al programa, la función loop() comienza en la línea 20. Después de eso, líneas 21-27 Verifique si está utilizando el valor de umbral oscuro establecido en la sección de variables. El if/else sentencia tiene la funcionalidad adicional de comprobar si ya está establecida la variable oscura - si ya está oscuro, entonces el programa no establece que sea oscuro otra vez.

La línea 26 es parte de la parte más complicada e impresionante de este programa. No quería que mi luz teclado permanezca encendida toda la noche (porque soy raramente para arriba en el 3:00 en el equipo), así que decidí agregar algunos pizazz con una función de apagado automático. Tuve que probar varios ángulos de abordar el problema antes de que encontre uno que trabajó. Las funciones de tiempo transcurrido no parecen hacer el trabajo, y como el ATTiny no tiene un reloj en tiempo real, que no podía leer el tiempo. Este sistema funciona calculando el tiempo que toma hacer un arco iris en línea 8. Luego, en el número de horas de entrada como el tiempo de que la luz debe permanecer en la base, calcula cuántos arco iris debe terminar después de que oscurezca. If instrucción antes de que el programa de ranbow principal (línea 28) comprueba si es oscura y también comprueba que el programa tiene todavía más arco iris para ejecutar. Línea 41 incrementa el contador de cada arco iris. Y por último, la línea 26 restablece el contador de ciclo de arco iris cuando se convierte en luz.

Esto demuestra el increíble poder de código. Agregando simplemente unas pocas líneas de texto a un programa, puede Agregar funcionalidad increíble que sería casi imposible hacer con el hardware. Esta es una de las razones que me gusta mucho de programación. Me permite poner mis ideas en acción en un mundo donde lo única me limitación es mi imaginación.

Para concluir esta explicación carbonaris, líneas 29-40 ciclo a través de todos los colores del arco iris. Básicamente, el código de arco iris funciona a partir de un color (rojo por ejemplo) en el brillo completo. Entonces, el lazo poco a poco se mueve el valor rojo y sube el valor verde hasta verde es en el brillo completo. El proceso se repite hasta que se descolora hacia fuera azul y el rojo es el color dominante. La última parte del programa es la declaración más en líneas 43-46 que apaga la luz si no es oscuro o si ha estado en más de 8 horas (la variable timeout_hours).

Artículos Relacionados

Teléfono inteligente controlado por luz del humor RGB

Teléfono inteligente controlado por luz del humor RGB

Estado de ánimo son siempre fascinantes para mí y es un muy buen proyecto para empezar empezar con Arduino.¿Qué es una lámpara de estado de ánimo?Lámparas de estado de ánimo son dispositivos de iluminación que se utilizan para establecer un determina
Luz del teclado del ordenador portátil

Luz del teclado del ordenador portátil

amabilidad portátil para el tecladoMateriales:viejo cassettepistola de pegamentoSierragoma de borrarlinterna LEDcable USBcintaresorte de un bolígraforesistencia de 220 ohmPaso 1: Obtener un cassette viejo y desmontarlo. Necesitamos sólo una parte.Pas
ATtiny85 RGB Mini luz del humor!

ATtiny85 RGB Mini luz del humor!

He visto luces de estado de ánimo RGB con Arduino, PIC y más grande AVR virutas, pero nunca uno con el ATtiny85. Es por eso que decidí hacer uno.Esta luz de estado de ánimo es super sencilla de hacer y todas las piezas pueden adquirirse en línea por
Actualización DIY / sobrecarga su teclado LED / luz del ordenador portátil

Actualización DIY / sobrecarga su teclado LED / luz del ordenador portátil

Hola de nuevo!Trabajar tarde en la noche con lúgubre luces tenues de la Laptop no es la mejor idea para sus ojos.Aquí tomaremos un portátil normal de Ebay LED luz de teclado y modificarlo para mejor brillo y color (blanco neutro).En la primera foto,
Ventana falsa luz del humor

Ventana falsa luz del humor

Para todos los que viven actualmente en el sótano de sus padres o volver a vivir en el sótano de sus padres, vestir a su morada sin ventanas con esta luz limpia ventana imitación del humor. Por cierto, su habitación ha ya sido alquilado hace mucho ti
Luz del humor mención de Twitter

Luz del humor mención de Twitter

Luz del humor mención de Twitter - una luz de estado de ánimo que le avisa cuando es mencionado en Twitter.Se trata de una simple introducción en cómo controlar tu Arduino desde Twitter. Si eres nuevo en Arduino Twitter Arduino procesamiento Twitter
Hágalo usted mismo brillante luz del sol legible al aire libre LCD pantalla

Hágalo usted mismo brillante luz del sol legible al aire libre LCD pantalla

el reto con este proyecto fue producir un monitor de vídeo portátil, de bajo costo que funcionaría al aire libre, a pleno sol.Y al ser portable, también tendría que ser una operación de drenaje actual bajo.La principal inspiración para este diseño er
USB luz de teclado

USB luz de teclado

este es un simple y útil gadget portátil puede ser utilizado como una luz de teclado por la noche para los ordenadores portátiles y puede ser utilizado como una lámpara de mesa de alimentación usbPaso 1: partes 1 LED blanco (mayor mejor)2 dispositivo
Bloqueo del teclado con el servo utilizando ATtiny84

Bloqueo del teclado con el servo utilizando ATtiny84

En este instructable, vamos a hacer una combinación de la cerradura a su puerta, con un teclado y un servo, usando ATtiny84.Pero no podemos usar la librería Servo incluida en el IDE de Arduino, como ATtiny84 solo tiene 2 temporizadores de 8 bits y ni
Estado de ánimo-Cube (luz del humor del Li-ion)

Estado de ánimo-Cube (luz del humor del Li-ion)

En la sección de electrónica de Instructables.com todos parecen mostrar gran cariño por LEDs. Después de leer muchos artículos, pensé que sería un buen momento para contribuir a la plétora de proyectos LED. Presentando... Estado de ánimo-Cube! Este "
Hacer un gran poco luz del libro de componentes electrónicos reciclados

Hacer un gran poco luz del libro de componentes electrónicos reciclados

este tip describe un gran pequeño libro luz procedente de un cargador de celular viejo y una luz de teclado de computadora. No tengo muchos detalles para compartir, lo que hace es bastante simple.El objetivo de este instructable es compartir un conce
Cadena humor-luz mediante LEDs RGB de alta potencia

Cadena humor-luz mediante LEDs RGB de alta potencia

tengo participa este proyecto más de un año atrás y trabajar en él y desde entonces. Ahora por fin ya está hecho.El objetivo era tener una estado de ánimo-luz bonita para mi salón, inspirado en una consola de iluminación estándar, un amigo tuvo una v
Montaje de la Mini luz del humor v1 Kit

Montaje de la Mini luz del humor v1 Kit

la Mini luz de estado de ánimo es un circuito pequeño generador de luz color de interactivo y reprogramable.  La luz de estado de ánimo consiste en un Texas Instruments MSP430 micro controlador conectado a dos LEDs RGB, cuatro botones y algunos compo
Pinza batería Powered luz de teclado

Pinza batería Powered luz de teclado

aquí es cómo hacer una luz de teclado simple que usted puede cortar en cualquier ordenador portátil! Disfrutar, de un voto por favor para mí!Paso 1: Las partes Se necesita lo siguiente. 1 x pila de 9v 1 x grande con cable LED 1 x 9v batería 1 x pinza