Étape 9: programmation
Si l’étape finale consiste à terminer le programme et de le transférer sur l’arbre assemblé. Le programme comporte 4 parties principales : initialisation, interruption du bouton tactile, boucle principale à clignoter les LED et beaucoup de petites fonctions pour calculer les différentes tendances de l’arborescence. J’ai quelques commentaires dans le code qui l’explique un peu comment il fonctionne.
J’ai mis une interruption à l’aide de la bibliothèque TimerOne qui va vérifier chaque 0,1 s si l'on appuie sur le capteur. Si elle est, il va changer le modèle, ou réveiller l’arbre, si elle était en veille. Si aucun événement de touche n’est un enregistreur pour 10 s, si changera automatiquement le modèle au hasard. Si aucun événement tactile n’arrive pendant 3 minutes, il va retourner en mode veille. Le programme vérifie aussi pour la tenue de la sonde pendant 3 secondes, alors qu’il arrive, l’arbre iront à clignotement aléatoire furieux.
Pour télécharger le programme, vous devez d’abord brûler le bootloader sur la puce ATmega, qui sera également configurer pour utiliser l’horloge interne à 8 MHz. Cela peut être fait en utilisant un Arduino, comme je l’ai déjà mentionné à l’étape 4. Pour ce faire, suivez les instructions sur le site d’Arduino pour le "Circuit minime". Cela implique fondamentalement le téléchargement du fichier de configuration de matériel et d’accrocher l’ATmega à l’Arduino.
Avant de procéder à la programmation, cependant, l’Arduino elle-même doit avoir l’Arduino comme programme ISP téléchargée, parce que cela servira à envoyer le programme vers l’arbre de Noël. Après cela, connectez le 3.3 V et la terre de l’Arduino à la 3.3 V et la terre de l’arbre. Reliez ensuite le Arduino broche 10 sur RESET, broche 11 à MOSI, broche 12 au MISO et la broche 13 à la SCK. Si vous avez un Arduino Uno, également connecter un condensateur 10 µF entre les deux broches GND de l’Arduino, donc il l’habitude réellement redéfinies et lui-même.
Après que vous avez l’Arduino comme FAI téléchargées et toutes les connexions, remplacez le programmeur dans l’IDE Arduino Arduino comme ISP et l’organe de cible à ATmega328 sur maquette (horloge interne à 8 MHz). Maintenant, vous pouvez graver le bootloader. Après cela, ouvrez le pcb_xmas_tree.ino dans l’IDE Arduino et sélectionnez charger à l’aide du programmeur. Ceci prendra quelques secondes, mais vous saurez que c’est prêt, si la LED à côté du capteur tactile commence à clignoter lentement.