Vysílací Arduino
Kód: Vybrat vše
//Arduino Nano
unsigned long milis = 0;
void setup(){
Serial.begin(9600);
}
void loop(){
unsigned long cas = millis();
if (millis() - milis > 2000) {
String zprava = "A23";
Serial.println(zprava);
milis = millis();
}
}
Přijímací Arduino
Kód: Vybrat vše
byte page, objekt;
void setup(){
//pinMode(13, OUTPUT);
Serial.begin(9600);
Serial3.begin(9600);
}
void loop(){
while(Serial3.available())
{
if (Serial3.read() == "A")
{
delay(20);
page = Serial3.read();
objekt = Serial3.read();
}
while (Serial3.available())
{
Serial3.read();
}
Serial.println(page);
Serial.println(objekt);
page = "";
objekt = "";
Serial.println("--------------------------------");
}
delay(100);
}
17:40:17.577 -> --------------------------------
17:40:19.593 -> 22
17:40:19.593 -> 22
17:40:19.593 -> --------------------------------
17:40:21.617 -> 22
17:40:21.617 -> 22
17:40:21.617 -> --------------------------------
17:40:23.641 -> 22
17:40:23.641 -> 22
17:40:23.641 -> --------------------------------
17:40:25.664 -> 22
17:40:25.664 -> 22
17:40:25.664 -> --------------------------------
Stále dvacet dvojky, a to i když pošlu jiné čísla z prvního Arduina. A nevyhodnotí mi to, že první by mělo být A. Nakopne mně někdo, co mám opravit? Kde mám chybu? Já bych řekl, že špatně zpracovávám načtení z linky... Nějak přetypovat?