Étape 2: logiciel
Le lien du logiciel est répertorié ci-dessous. Alors qu’il est visé pour le 12F683, il est facilement porté à plus grandes versions de l’image. Pour la plupart il nécessite un changement des noms comme TRISIO TRISA et GPIO à PORTA. Vous devrez également modifier la ligne qui identifie la version PIC (liste =) et le fichier INCLUDE, mais ceux sont les changements intuitives. La ligne __CONFIG devez également peaufiner tout simplement parce qu’un ou deux des étiquettes utilisées soient orthographiés différemment dans certains des fichiers INCLUDE. La seule différence dans cette ligne _CONFIG des projets 12F683 précédents est que l’entrée pour l’utilisation de l’oscillateur interne a été remplacée par l’entrée _FOSC_HS (oscillateur externe à haute vitesse).
Le débordement du Timer1 est effectivement géré comme une interruption, mais il serait assez facile de simplement suivre le paramètre de l’indicateur d’interruptions dans la routine principale sans générer une interruption. La fréquence d’interruption est 2 Hz. Cette fréquence est dérivée de régler le Timer1 à utiliser la fréquence de l’oscillateur / 4 entrées, à l’échelle avant que l’entrée par le 8 et interrompre quand la minuterie déborde à 65536 comtes [4194304 Hz / (4 * 8 * 65536)].
La sortie sur GP0 est allumée pendant les interruptions paires et désactivée pendant les interruptions impaires. Qui génère un pouls agréable de 1 Hz. Le logiciel compte le nombre d’impulsions de 1 Hz (secondes) et l’utilise pour activer la sortie GP1 une fois par minute. Les minutes sont comptées afin d’activer la sortie de GP2 à toutes les heures. La durée de chacune des impulsions de sortie est 500ms (le temps jusqu'à la prochaine interruption). Les LEDs sur GP0 et GP1 GP2 sont juste là comme des indicateurs visuels dans notre exemple.
Eh bien, c’est tout pour l’épisode 16 de « Fun avec PIC Assembly ». Restez à l’écoute des autres épisodes.