Étape 9: Firmware - aperçu
Le code source complet peut être trouvé dans Ce dépôt GitHub.
Pour commencer, notre firmware va lire l’écran LCD et puis imprimer ces informations vers un autre écran LCD pour la comparaison. Le seul problème avec ceci est que l’écran LCD que nous voulons utiliser dépend serial, et transmettre notre port série NIP est utilisé pour lire une des broches LCD. Ce n’est pas une grosse affaire, cela signifie simplement que les données de cette broche ne seront pas accessibles.
Le code pour faire ceci est le fichier principal-v1.0.c dans le repo. Ce code est écrit en C. Il n’utilise pas toutes les bibliothèques de Arudino parce que ce n'est pas comment j’ai rôle. Ce sont les modules de base de notre firmware...
Au démarrage, configuration AVR
- Pins IO Set
- Mettez hors tension les Modules inutilisés (pour économiser l’énergie)
- Minuterie 0 permet de simuler des lignes COM 2, 3 et 4
- Utilisez le comparateur analogique pour ligne détecter Com 1
- Utilisez USART0 pour écrire sur un écran LCD local
Dans la grande boucle pour toujours
- Lire l’écran LCD
- Données d’impression écran LCD échelle locale écran LCD
Interrupt Service routine
- Minuterie 0 - Sync avec COM 1, utilisé pour simuler les autres actions de lignes COM chaque 4ms
- Comparateur analogique - déclenchée lorsque COM 1 va HI, se met en marche la minuterie 0
Autres fonctions nous aurez besoin
- Lire LCD - lancer une lecture de l’écran LCD... probablement activer le comparateur analogique et attendre
- LCD-impression - transmettre un octet, chaîne, etc à l’écran LCD local