#include <stdio.h>
#define LED 13
void setup() {
pinMode(LED, OUTPUT);
Serial.begin(9600);
}
void loop() {
int i;
char command[5];
for (i = 0; i < 4; i++) {
command[i] = Serial.read();
}
command[4] = '\0';
Serial.println(command);
if (strcmp(command, "AAAA") == 0) {
digitalWrite(LED, HIGH);
Serial.println("LED13 is ON");
} else if (strcmp(command, "BBBB") == 0) {
digitalWrite(LED, LOW);
Serial.println("LED13 is OFF");
}
}
Próbuję przeczytać ciąg 4 znaków z Arduino Serial, a gdy jest AAAA włączyć LED, gdy jest BBBB wyłączyć szeregowy.Arduino odczytać ciąg z Serial
Jednakże, kiedy wpisuję "AAAA", po drodze pojawia się "AAAÿ" z dużą ilością "ÿ".
Myślę, że wszystko czytam poprawnie, ale nie działa tak dobrze, nie mam pojęcia, co robię źle?
Potwierdź, że szybkość transmisji, bity stopu, kontrola przepływu i parzystości są identyczne na obu końcach. Nawet jeśli "wiesz, że to prawda", poświęć 3 minuty i zweryfikuj to. Zaoszczędź sobie godzin. –
Co to jest twój kod 'Serial.begin()'? – qwertz
It's 9600, ja też wysłałem to. –