Go Down

Topic: Interaction bizarre delay() et noInterrupts() (Read 1 time) previous topic - next topic

supermac1

Bonjour,

J'ai une interaction bizarre dans mon code quand je déactive les interruption avec noInterrupts();  la fonction delay(); ne s'exécute plus  :(est ce normal si oui il y a t'il une alternative.

Merci pour vos retour


Luj06

#1
Jan 13, 2011, 06:29 pm Last Edit: Jan 13, 2011, 06:32 pm by julien@pobot.org Reason: 1
C'est normal : la fonction "delay" est basée sur une interruption générée par le timer 0. Si tu désactives les interruptions, on ne peut plus compter le temps qui passe.

Il faut que tu cibles uniquement les interruptions que tu souhaites arrêter. Je ne sais pas s'il y a des fonctions pour ça en Arduino, mais tu peux utiliser les interruptions du micro-contrôleur AVR présent sur la carte.

Un petit exemple de gestion d'interruptions : http://www.pobot.org/Vecteurs-d-interruption-pour-AVR.html dont le code d'exemple contient l'activation d'une interruption.

Si tu me dis quelles interruptions tu veux arrêter, j'essaierai de tester un code et de publier un didacticiel pour ton cas particulier.

supermac1

Merci pour l'info.

C'est l'interruption 0 celle de la patte 2 d'une arduino mini pro.

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy