Interruption en Arduino

Bonjour à tous/toutes, je suis très débutant en arduino et je dois réaliser le projet suivant :

Pour l'instant j'essaie de faire l'interruption (je suis censé en utiliser enfin je pense) mais je sèche déjà, quand j'appuie sur le bouton associé à mon interruption, le code que j'ai mit dans la fontion process ne s'exécute pas comme il faut, je pense que j'ai un problème de rebond (j'avais compris comment y remédier avec le code en commentaire) mais je ne sais pas comment l'adapter à mon interruption.. Quelqu'un a une idée ? :confused:

Mon code :

const int LED = 5;

const int MEMBTN = 7;
const int TOGGLEBTN = 2;
const int BASCULBTN = 10;
const long DELAY = 1000;
int blinkcnt = 0;

volatile bool calibMode = false;
volatile bool processMode = false;

int memstate;
int togglestate = HIGH;
int lasttogglestate = HIGH;
int basculstate;
int ledState;

void setup() {
  Serial.begin(9600);
  pinMode(LED, OUTPUT);
  pinMode(MEMBTN, INPUT_PULLUP);
  pinMode(TOGGLEBTN, INPUT_PULLUP);
  pinMode(BASCULBTN, INPUT);
  attachInterrupt(digitalPinToInterrupt(2), process, LOW);
}

void loop() {

  memstate = digitalRead(MEMBTN);
  togglestate = digitalRead(TOGGLEBTN);
  basculstate = digitalRead(BASCULBTN);




  /*if (togglestate != lasttogglestate && togglestate == HIGH) {
    ledState = (ledState == LOW ? HIGH : LOW);
    digitalWrite(LED, ledState);
    delay(50);
  }
  lasttogglestate = togglestate;*/

}

void process() {
  digitalWrite(LED, LOW);
  for (int i = 0; i < 5; i++) {
    digitalWrite(LED, HIGH);
    delay(DELAY);
    digitalWrite(LED, LOW);
  }
  digitalWrite(LED, LOW);
}

Merci d'avance.

C’est pas FALLING au lieu de LOW que vous voudriez ?
(Et au lieu de 2 mettez TOGGLEBTN Pour la lisibilité)

C’est typiquement une définition de programme qui se prête bien à la programmation par machine à états (cf mon tuto éventuellement)

hello
dans quel cours/classe donne t'on ce genre de projet?

Merci pour ta réponse je vais essayer avec ça.

Salut, cours de microcontrôleurs.
Le prof nous donne pas beaucoup d'indications donc c'est surtout de l'auto-apprentissage en vérité.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.