Je suis en train de programmer un Arduino pour allumer une LED quand il reçoit quelque chose dans le port série. Je l'ai fait et il a reçu les données, mais après que la LED aurait dû être éteint, il continue. Voici mon code actuel:Effacer les données dans Serial.read()
int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
if(Serial.available() > 0) {
Serial.print("RECEIVED_CALL");
digitalWrite(ledPin, HIGH);
delay(4500);
digitalWrite(ledPin, LOW);
Serial.clear();
}
}
S'il vous plaît laissez vos suggestions.
Y a-t-il une raison pour laquelle vous avez un délai de 4 500 ms, c'est-à-dire de 4,5 secondes? De plus, si vous avez encore des données disponibles, elles seront réactivées. Essayez d'ajouter un délai après avoir réglé la broche bas –
1. J'en ai besoin pendant 4,5 secondes 2. Je vais essayer – cheese5505