Salut tout le monde
y-a-t-il quelqu'un peut m'expliquer un truc qui me parrait trééééééss bizarre
je travaille avec IAR workbench pour le chip cc2530
je détecte une interruption de zéro cross d'un signal 50Hz c-à-d chaque 10ms j'ai une interurption et dés que l'interruption est captéje fais un delais ou timer et puis je commande un led.
Le bizzarre c'est lorsque j'injecte le timer pour 5ms ou bien delay en quelques 5 ms dans la fonction de l'interruption du zéro cross elle ne fonctionne pas convenablement.
Mais par contre lorsque j'affecte une variable intermédiaire booléan dés que j'entre dans la fonction d'interruption sans utiliser ni dela ni timer et j'injecte le timer ou delay au niveau du programme principale Main en testant le changement de la variable intermédiaire avec un boucle infinie dans le main ça fonctionne parfaitement !!!!??
c-à-d ma fonction accepte que des instruction simple allumer led / incrémenter variable :/
j'ai pensé que la durée des instructions des timer ou delay dépasse 10ms (le temps de recevoir une autre interruption zérocross )
mais je suis trés loin de ca puisque j'utilise une horloge systéme de 32MHZ c'est quoi le probléme alors pourquoi au niveau main ca fonctionne !!!!
-----