Étape 3: Boutons et interruptions
Une interruption, comme son nom l’indique, interrompre le programme pour faire un peu de la routine. Lorsque l’interruption est terminée, le programme continue où il a été interrompu. Il y a beaucoup de différentes interruptions déclenchées par des événements internes causées par les minuteries, comparateurs... mais nous allons utiliser 2 interruptions externes déclenchées par les deux boutons.
Les boutons connecter les broches d’interruption avec sol tandis qu’une résistance de 1K 5 pullup garde la goupille élevée (l’interruption est déclenchée lorsque la broche est faible).
Au début de notre code, nous aurons besoin de configurer les interruptions.
config INT0 = Falling l’interruption est déclenchée sur le front descendant.
Sur INT0 button1 lorsque l’interruption est déclenchée le programme passera à
étiquette button1.
Activez INT0 permet cette interruption
config INT1 = Falling
Sur button2 INT1 lorsque l’interruption est déclenchée le programme passera à
étiquette button2.
Activez INT1
Enable interrompt permet d’utiliser toutes les interruptions
À la fin du code, à l’issue - déclaration, nous mettrons les 2 étiquettes nécessaires avec la routine.
Button1 :
code pour régler l’heure
Retour
Button2 :
code pour régler les minutes
Retour
Une chose importante à retenir est que vous ne pouvez pas déclencher une interruption à l’intérieur de la routine d’une autre !
Maintenant que nous sommes en mesure de régler l’heure, nous pouvons regarder notre affichage aka les numitrons dans l’étape suivante.