HELP... Problème de LED qui clignote

Bonjour tout le monde,

Je me tourne vers vous pour un problème de clignotement de led...

Avec mon Arduino j'ai réalisé un compteur de points: quand j'appuie sur un bouton poussoir, j'incrémente des chiffres sur un afficheur 7 segments 4 digits. Jusque là, pas de problèmes, ça fonctionne très bien.

Mais j'aimerai en plus de cela, pour donner plus d'effets au jeu, ajouter un LED qui clignote 3 fois à chaque fois que j'appuie sur mon bouton poussoir:

  • Après avoir pressé mon bouton poussoir, la led doit clignoter 3 fois puis s'arrêter.

Sauf que quand j'utilise la fonction "delay", naturellement, mon afficheur clignote avec !

J'ai donc essayé d'utiliser la fonction millis() mais une fois lancée, je n'arrive plus à l'arrêter...

void setup() {
 

mcp.begin();


//Led bouton incrémentation

mcp.pinMode(2, OUTPUT);

}

void loop() {


mcp.digitalWrite(2, millis() / 250 % 2 );

}

Que faire ??

Je vous ai joint la partie correspondant à laLED. Je peux vous joindre le reste du code, mais je sais pas s'il vous sera d'une grande aide.

Par avance, merci !

et mcp on devine comment c'est quoi et de quelle librairie il vient?

pas de snippet de code... le plus souvent le soucis ne vient pas de là mais d'ailleurs

#include <Adafruit_MCP23017.h>
#include <Wire.h>
Adafruit_MCP23017 mcp;

void setup() {
 

mcp.begin();


//Led bouton incrémentation

mcp.pinMode(2, OUTPUT);

}

void loop() {


mcp.digitalWrite(2, millis() / 250 % 2 );

}

J'ai connecté ma LED sur un expander I2C, le MCP 23017, d'où le "mcp" devant pinMode, etc...

ben là tu provoques un clignotement de la led en écrivant sur la pin le résultat d'une division de millis par 250 (en gros) donc elle clignote à une fréquence de 0.5Hz, mais absolument rien ne compte les clignotements.

inspires-toi de l'exemple "blink without delay" pour l'utilisation de millis() pour faire clignoter une led, il est assez facile de le modifier pour lui adjoindre un compteur