Bonjour,
J'aimerai enfin apprendre à faire des interruptions en C.
Mais à vrai dire je ne sais pas si c'est bien ce dont j'ai besoin.
En gros pendant que mon programme s'execute je voudrais par exemple faire clignoter 2 LED. Mais il n'y a aucune condition pour lancer ou arrêter le clignotement. De mémoire je crois que dans ce cas on utilise une interruption, qui va faire tourner un "programme" en parallèle au programme principal.
Il me semble qu'une interruption nécessite une "condition" pour être executée, non ? Mais à priori supprimer une condition n'est jamais un problème.
Mais donc je suis pas vraiment sur de ce que j'avance.
Sansa j'ai un soucis pour déterminer la "tempo". Il me faut je crois utiliser un timer. J'utilise déjà le timer2 pour des PWM, je peux donc utiliser le 1 ?
J'utilise MPLAB avec CCS, et dans les exemples CCS j'a itrouvé ceci : (n'ayant pas internet sur mon pc, je note ça de mémoire...)
Comment est-ce que j'appelle mon interruption après ?Code:#int_EXT EXT_isr() { // c'est ici qu'on tape ce qu'elle doit faire ?? } enable_interrupts(INT_EXT); enable_interrupts(GLOBAL); //à mettre tjr apparemment pour autoriser les interruptions
A priori le code pour mes LED serait du style :
output_high(PIN_A2)
output_low(PIN_A3)
//réaliser la tempo, par un delay ou bien par le timer ???
output_high(PIN_A2)
output_low(PIN_A3)
Bref ça reste très flou pour l'instant.
A aussi je vois que pour configurer le timer il faut faire :
setup_timer1(chai pu koi diviser by 4 , puis d'autres paramètre pour calculer sa fréquence, c'est ça ? )
Merci beaucoup
-----