Étape 6: logiciels
Je ne vais pas aller dans les détails sur la programmation en fait un microcontrôleur, il y a des pages mieux d’apprendre à le faire. VoirLe programme complet s’intègre 552 octets, ce qui rend seulement 276 instructions au niveau de l’assembleur. C’est à peu rien, car il n’y a toujours certains code de démarrage et de configuration qu’il contient. Et il consomme 54,5 % seulement de la mémoire flash, donc vous pouvez toujours ajouter des fonctionnalités à qui.
Je parie que l’algorithme principal peut être implémenté en moins de 100 octets.
Quelqu'un ?
Les étapes, que le programme exécute sont :
1. blink 5 times (say hello)2. compute the average brightness and store it3. power = power + 14. if brightness >= daylight (is it daylight?) * sleep some seconds5. if brightness > average brightness (that was a flash) * power = power + 1006. if power > MAX * flash * power = 0 7. goto 3
En fait c’est un peu simplifié, mais vous voyez l’idée.
Télécharger le programme et commencer les lucioles. Si tout est ok, ils devraient pouvoir synchroniser en environ une minute ou deux.
J’ai eu quelques problèmes à obtenir les lucioles synchronisés. Comme ils sont en cours d’exécution sur leur oscillateur interne, ils ont tous des vitesses différentes. J’ai pensé que cela pouvait aider à recallibrate eux en changeant la boucle de retard de chaque puce. Ma copine a demandé, ce que je faisais et je lui dit. Elle pensait, que c’est comme la tricherie. Lucioles ne sont pas callibrated non plus. Que dois-je dire ? Elle avait raison. Donc j’ai décidé de ne pas le faire et cherché une autre solution. N’oubliez pas d’aller pour la solution la plus simple peut éventuellement utiliser.