29-07-2019, 05:59
Jak jest zmienna ramka to jego kod jest do kitu. Bo wtedy trzeba znać albo początek ramki albo koniec który zawsze będzie taki sam. Chyba że oprze się o czas że ramka jest wysyłana co 1s jak piszesz i przy odbiorze tym się kierować..
if (Serial.available()) IloscDanychDoOdebrania = Serial.available();
Moim zdaniem powinno być albo
if( Serial.available() > xxx) - gdzie xx to długość ramki ale jak już wiemy może nie być stała i wtedy nie zadziała dobrze
albo po idx+++; dać delay(20); czas na to by serial odczytał następny znak do bufora
if (Serial.available()) IloscDanychDoOdebrania = Serial.available();
Moim zdaniem powinno być albo
if( Serial.available() > xxx) - gdzie xx to długość ramki ale jak już wiemy może nie być stała i wtedy nie zadziała dobrze
albo po idx+++; dać delay(20); czas na to by serial odczytał następny znak do bufora
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą.