09-03-2019, 23:47
(Ten post był ostatnio modyfikowany: 10-03-2019, 11:55 przez Jarewa0606.)
Zwiększyłem wielkość tablic o 1 przy odczycie z UDP i testuje na razie pół dnia i problem nie występuje.
Jak deklaruje
char data_AC_uBuffer[7];
char data_AC_Buffer[4];
to przecież kod
data_AC_uBuffer[0] = rc_;
for (i_ = 1; i_ < 7; i_ ++) { // rozbijanie ciagu znakĂłw na bufory
data_AC_uBuffer[i_] = udp.read();
}
if (endMarker_AC == data_AC_uBuffer[6]) {
data_AC_Buffer[0] = data_AC_uBuffer[2];
data_AC_Buffer[1] = data_AC_uBuffer[3];
data_AC_Buffer[2] = data_AC_uBuffer[4];
data_AC_Buffer[3] = data_AC_uBuffer[5];
String dane_UDP_data_AC = String (data_AC_Buffer);
strona_AC = dane_UDP_data_AC.toInt();
data_send_AC = true;
Nie przekracza tablic ?
edit.
Dzisiaj zamiast data_AC_uBuffer[7]; zdeklarowałem tablice wszystkie na postać data_AC_uBuffer[]={0,0,0,0,0,0,0};
I problem tez nie występuje, miedzy jednym a drugim to różnica jedynie w tym że mam zdeklarowane dane w tablicy dobrze myśle? moze przy poprzedniej deklaracji były jakieś śmiecie w pamięci i powodowało błedy??
Jak deklaruje
char data_AC_uBuffer[7];
char data_AC_Buffer[4];
to przecież kod
data_AC_uBuffer[0] = rc_;
for (i_ = 1; i_ < 7; i_ ++) { // rozbijanie ciagu znakĂłw na bufory
data_AC_uBuffer[i_] = udp.read();
}
if (endMarker_AC == data_AC_uBuffer[6]) {
data_AC_Buffer[0] = data_AC_uBuffer[2];
data_AC_Buffer[1] = data_AC_uBuffer[3];
data_AC_Buffer[2] = data_AC_uBuffer[4];
data_AC_Buffer[3] = data_AC_uBuffer[5];
String dane_UDP_data_AC = String (data_AC_Buffer);
strona_AC = dane_UDP_data_AC.toInt();
data_send_AC = true;
Nie przekracza tablic ?
edit.
Dzisiaj zamiast data_AC_uBuffer[7]; zdeklarowałem tablice wszystkie na postać data_AC_uBuffer[]={0,0,0,0,0,0,0};
I problem tez nie występuje, miedzy jednym a drugim to różnica jedynie w tym że mam zdeklarowane dane w tablicy dobrze myśle? moze przy poprzedniej deklaracji były jakieś śmiecie w pamięci i powodowało błedy??
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą.