ako naprogramovat
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Pátek Duben 12 18:29:51 CEST 2024
Tohle resim stavovym automatem - 6 stavu pro prvnich 6B, sedmy s nejakym
pocitadlem pro data a dalsi dva pro checksum. Kdyz cokoli nesedi dle
ocekavani nebo neprijde dalsi znak do nejakeho timeoutu, tak se stav
resetuje a jede se znova.
Dne 12.04.2024 v 18:19 Daniel Valuch napsal(a):
>
> zdravim osadenstvo,
>
> programovat viem len velmi zakladne, preto by som mal na piatok
> algoritmicku... Dokoncujem ziskavanie presneho casu z GNSS modulu o
> ktorych sme tu uz nejaky cas rozpravali.
>
> Ten generuje dva typy vystupu po seriovej linke. Klasicky ascii, ktory
> je ukonceny \n znakom a parsovanie tohoto stringu je trivialne (robim
> v arduino ide). Prijimaju sa data, tie sa pridavaju do stringu a ked
> pride \n tak sa to rozobere a urobi co treba
>
> void serialEvent() {
> while (Serial.available()) {
> // get the new byte:
> char inChar = (char)Serial.read();
> if (inChar == '\n') {
> // sprava/retazec je hotovy, rozparsuj a urob co treba
> tempString = "";
> }
> // keep receiving until \n arrives
> else {
> // add it to the inputString and keep receiving:
> tempString += inChar;
> }
>
> Druhy vystup je ale binarny, prichadzaju pakety, ktore maju strukturu
> definovanu, ale paket zacina opacne.
>
> 0000 B5 62 06 8A 18 00 00 05 00 00 01 00 76 10 01 05
> 0010 00 53 10 01 7E 01 91 20 00 7F 01 91 20 01 00 B6
>
> Prve dva bajty na zaciatku B5 62 vzdy oznacuju zaciatok paketu
>
> dalsie dva 06 8A oznacuju o aky paket ide
>
> nasledujuce dva 18 00 dlzku kolko byteov spravy nasleduje (v tomto
> pripade 24)
>
> potom je samotna sprava
>
> a na konci 00 B6 su dva bajty checksum
>
> a s tymto si neviem poradit, ako to zapisat aby to pocuvalo kedy pride
> B5 62, pockalo ako dlha bude sprava a potom zapisalo do nejakeho
> stringu data.
>
> Ako na to?
>
> dakujem,
>
> b.
>
>
>
> _______________________________________________
> HW-list mailing list - sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20240412/76ea0187/attachment.htm>
Další informace o konferenci Hw-list