je voudrais réveiller le système arduino lorsqu'il détecte une interruption puis le rendormir si il n'en détecte pas, Voici ce que j'ai fait et je ne comprend pas pourquoi le système ne veut pas se réveiller :
je passe en mode sleep dans le setup avec l'appel de la fonction sleepPwrDown(); et dans cette fonction normalement dès qu'il détecte une interruption il devrait se réveiller
vous êtes conscient que vous mettez votre micro-controller en sleep dans le setup. Avec la pin 2 en INPUT_PULLUP vous réveillez l'arduino en connectant la PIN 2 à Ground; une fois la pin 2 connectée, votre code démarre et chaque fois que vous basculez de GND à 5V vous faites une transition et la variable i augmentera et s'affichera... bien sûr l'arduino ne se remet pas en sommeil puisque rien ne lui dit de le faire donc "Pas de contact" va défiler
le problème est que le système se met bien en veille mais lorsque j'actionne mon "contact" (bouton poussoir) et ne se produit ou s'affiche il reste en sleep , je voudrais le réveiller lorsque le contact se fait
virer votre bouton, branchez simplement un fil dans votre pin #2 et connectez le à GND. la pin 2 est à LOW
chargez le programme et ouvrez la console vous verrez que rien ne se passe. votre arduino est en sleep
ensuite déconnectez le fil --> comme vous êtes en PULLUP, la pin prend la valeur HIGH ce qui est un changement d'état, ça réveille votre arduino et vous verrez "Pas de contact" qui commence à défiler.
connectez le fil vers 5V puis remettez le fil de GND --> vous verrez votre i qui commence à s'incrémeter et l'affichage dira 1, puis "Pas de contact" qui continue à défiler
recommencez - branchez sur +5V puis remettez le à GND et vous verrez votre compteur s'incrémenter (affichage de 2) puis à nouveau "Pas de contact". recommencez l'experience et votre compteur passe à 3, 4 etc ..
voilà à qui ressemble ma console en le faisant assez rapidement (rien d'affiché tant que je ne retire pas le fil de GND)
</sub> <sub>Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 1 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 2 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 3 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 4 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 5 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 6 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 7 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact 8 Pas de contact Pas de contact Pas de contact Pas de contact Pas de contact</sub> <sub>
Pour ma part rien ne se passe , il est toujours en sleep lorsque que je le débranche du GND ou si je le met sur 5V , peut etre un problème de librairie ?
Repostez le code que vous utilisez et décrivez ce qui est branché sur votre ARDUINO et quel type d'arduino vous utilisez
Le résultat ci dessus est pour un uno R3 alimenté par USB avec juste un fil branché sur la pin #2 numérique branchée soit sur la pin GND soit sur la pin 5V