J'ai modifié mon programme Python de tel manière qu'il envoie 1 à Arduino si ma valeur est inférieur à 300 (la led rouge est censée s'allumer) et 0 à Arduino si ma valeur est supérieur ou égale à 300 (la led verte est censée s'allumer). Il se passe ceci :
- Aucune des leds ne s'allume durant la prise de valeurs
- Lorsque j'arrête la prise de valeur (donc le flux vidéo), si ma dernière valeur prise était 0, la led verte s'allume
- Si cette valeur était 1, la led rouge ne s'allume pas
Je n'arrive pas à comprendre pourquoi les leds ne s'allument pas durant la prise de valeurs et accessoirement pourquoi la rouge ne s'allume pas lorsque ma dernière valeur prise est 1
Voici le code de la boucle :
void loop() {
if (Serial.available()) {
nombre = Serial.parseInt();
if (nombre == 1) {digitalWrite(ledrouge,HIGH);
digitalWrite(ledverte,LOW);}
if (nombre == 0) {digitalWrite(ledverte,HIGH);
digitalWrite(ledrouge,LOW);}
Serial.flush();
}
}
Et le code Python :
variable = x
if int(x) < 300 :
a = 1
if int(x) >= 300 :
a = 0
ser.write(str(a).encode("utf-8"))