Étape 2: Schéma et Code
Les fichiers :
flex_lcd_photogate_final.c Un mis à jour le pilote LCD HD44780 avec les broches de LCD mis en place comme indiqué sur le schéma. Il suffit de modifier l’emplacement dans la partie supérieure du programme afin de correspondre à l’emplacement de ce fichier sur votre disque dur.
photogate_final.c Le code du programme.
photogate_final.hex Le code compilé pour la photo, ne demandent qu’à être programmé dedans avec un câble USB ou serial programmeur.
Explication de code :
Le code est assez simple. Le capteur est relié à une broche d’interruption matérielle. Lorsque l’unité est allumée, le registre d’interruption externe est prête à étudier pour un changement de faible à élevé. Lorsque le capteur reçoit la lumière, la tension augmente jusqu'à ce qu’il est dans la logique de haute gamme. Cela déclenche l’interruption et la routine d’interruption permet une minuterie de débordement 100us. Il définit également le registre interruption externe à maintenant à la recherche d’un changement de haut-de-bas.
Tandis que l’État est élevé, chaque 100us la minuterie incrémente un compteur. Lorsque l’événement de haut-de-bas, la routine d’interruption externe désactive la minuterie et valeur count de la minuterie est convertie en millisecondes et envoyée à l’écran.