Pozdrav,
imam dosta glup problem ali ne znam kako da ga resim.
U pitanju je Android/Java i citanje sa seriskog USB porta.
Problem je manje vise klasika, treba da primimim paket podataka koji je na zalost promenljive duzine. U samom paketu ima i informaciji o duzini (treci i cetvrti bajt). Paket uvek ima i start sekvencu (0xDA 0xDA, prvi i drugi bajt)
Samo primanje se radi preko registrovane callback funkcije u nekom svom posebnom thread-u. Sve je to na nivou neke biblioteke viseg nivoa (baziranoj na Android API - Java).
Moj code samo stigne na kraju u tu callback funkciju i na meni je dalja obrada, za sad printam sta je to stiglo.
Evo prakticno "prepiska" izmedju Android-a i tog seriskog uredjaja i linija gde nastaje problem. Problem je 3. i 4. linija koja u stvari mora da bude jedan paket.
Treba da "rekonstrusem" paket, da spojim te delove koji su primljeni iz dva puta u jedan da bih mogao dalje da procesiram.
Mozete da predlozite i resenje u nekom pseudo codu, samo da vidim logiku kako to sve da odradim.
imam dosta glup problem ali ne znam kako da ga resim.
U pitanju je Android/Java i citanje sa seriskog USB porta.
Problem je manje vise klasika, treba da primimim paket podataka koji je na zalost promenljive duzine. U samom paketu ima i informaciji o duzini (treci i cetvrti bajt). Paket uvek ima i start sekvencu (0xDA 0xDA, prvi i drugi bajt)
Samo primanje se radi preko registrovane callback funkcije u nekom svom posebnom thread-u. Sve je to na nivou neke biblioteke viseg nivoa (baziranoj na Android API - Java).
Moj code samo stigne na kraju u tu callback funkciju i na meni je dalja obrada, za sad printam sta je to stiglo.
Evo prakticno "prepiska" izmedju Android-a i tog seriskog uredjaja i linija gde nastaje problem. Problem je 3. i 4. linija koja u stvari mora da bude jedan paket.
Quote:1. 2020-03-30 19: 42 :19.957 1887-1887/com.example: TX >>> DA DA 00 06 00 01 02 0A 0B 1E
2. 2020-03-30 19: 42 :19.975 1887-1931/com.example: RX <<< DA DA 00 0A 00 01 02 0A 0C 38 00 00 01 14
3. 2020-03-30 19: 42 :22.002 1887-1931/com.example: RX <<< DA DA 00 0A 00 01 02 0A
4. 2020-03-30 19: 42 :22.018 1887-1931/com.example: RX <<< 0A 37 00 00 01 15
5. 2020-03-30 19: 42 :22.354 1887-1931/com.example: RX <<< DA DA 00 06 00 01 02 0A 14 27
Treba da "rekonstrusem" paket, da spojim te delove koji su primljeni iz dva puta u jedan da bih mogao dalje da procesiram.
Mozete da predlozite i resenje u nekom pseudo codu, samo da vidim logiku kako to sve da odradim.