Étape 4: logiciels
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. Assurez-vous juste que la photo que vous utilisez a une broche qui permet une entrée d’interruption externe (habituellement appelée EXT ou INT). Comme nous l’avons vu précédemment, le 16F688 (PIC de 14 broches) peut être utilisé avec les mêmes branchements broches physiques comme le 12F683 si vous voulez plus de broches e/s.
Le logiciel de l’échantillon est assez simple et est mis en place pour interrompre sur les bords tombent de la ligne CLK. Le gestionnaire d’interruption vérifie l’état de la ligne de DT pour déterminer le sens de rotation de l’arbre et met à jour un compteur simple en conséquence. Étant donné que le logiciel exemple utilise un seul emplacement de mémoire de 8 bits pour le compteur, la plage doit partir + 127 -128. Le compteur n’est pas enregistré dans l’EEPROM donc il sera toujours remis à zéro lorsque l’alimentation est activée. L’interrupteur permet de basculer son état chaque fois qu’il est pressé. Il est initialisé à « off ». L’état du compteur et l’état de l’interrupteur s’affichent sur l’écran LCD.
Le commutateur rotatif vous permet de ressentir chaque clic car elle est tournée de sorte que vous pourriez vous attendre à voir le nombre d’affichage change à chaque clic. En réalité, parce que le logiciel est uniquement interrompu sur le front descendant de la ligne CLK, le comte va changer chaque second clic. L’entre clic est le front de la ligne CLK lors de la rotation dans le sens horaire. En allant dans le sens inverse ce même bord devient le front descendant. Vous pouvez voir cet effet en déplaçant simplement l’arbre en arrière par un point simple clic.