Paso 5: Firmware
El firmware está escrito en C usando el compilador AVR-GCC de código abierto con AVRStudio. Descargar los últimos archivos de diseño y firmware del proyecto página de Google Code. Programa el firmware a través del jefe programación del ISP de 6 pines con algo como el STK500 o USBtinyISP. En una nota lateral, estamos realmente emocionados sobre el uso de un compilador de código abierto para este proyecto.
Cuando se aplica energía al circuito, el ATtiny corre un sencillo programa que pulsos las luces del árbol de Navidad. Cuando el programa termina, el chip duerme hasta que se reinicie por un cambio de prensa o pilas de botón.
El programa de desvanecimiento utiliza software modulación por ancho de pulso para atenuar los LEDs. El ATtiny13A tiene hardware PWM, pero salidas en los pines del ISP que ya están ocupados. Es posible compartir programación pins con otras funciones, que no estábamos dispuestos a hacer en este proyecto.
Cuando el programa finaliza, el chip sólo va a dormir para siempre. Esto es diferente que muchos programas de microcontrolador que reanudar desde el sueño en un perno cambian interrupción. Una prensa del botón restablece el ATtiny y empieza el programa otra vez.