Étape 5: Firmware
Le firmware est écrit en C en utilisant l’open source AVR-GCC compilateur avec AVRStudio. Télécharger les derniers fichiers de conception et le firmware sur le projet Google Code page. Programme du firmware par le biais de l’en-tête de programmation ISP de 6 broches avec quelque chose comme la STK500 ou USBtinyISP. Sur une note latérale, nous sommes vraiment heureux d’utiliser un compilateur libre pour ce projet.
Lorsque l’alimentation est appliquée au circuit, le ATtiny exécute un programme simple que les lumières du sapin de Noël des impulsions. Quand le programme se termine, la puce dort jusqu'à ce qu’il est remis à zéro par un changement de batterie ou de la presse de bouton.
Le programme de décoloration utilise des logiciels modulation de largeur d’impulsion pour estomper les LEDs. Le ATtiny13A a matériel PWM, mais elle génère sur les broches de l’ISP qui sont déjà occupés. Il est possible de partager des broches de la programmation avec d’autres fonctions, soit que nous n’étions pas prêts à le faire sur ce projet.
Une fois le programme terminé, la puce va juste pour dormir pour toujours. C’est différent que de nombreux programmes de microcontrôleur qui sortir du sommeil sur une épingle de modifications interrupt. Une presse de bouton réinitialise le ATtiny et recommence le programme.