<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">Zdravím,</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">případně, tady je video kde popisuje
nějaký člověk jak v Arduinu tyhle zprávy přijímat. U videa je
odkaz na zdroják pro Arduino.</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix"><a class="moz-txt-link-freetext" href="https://www.youtube.com/watch?v=TwhCX0c8Xe0">https://www.youtube.com/watch?v=TwhCX0c8Xe0</a></div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Popis toho zdrojáku je někde kolem 29
minuty.<br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Zdraví PavelK</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Dne 12.04.2024 v 18:19 Daniel Valuch
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:f5cdfa1a-095a-49cf-b5af-b7fd6806fd6c@k-net.fr">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p>zdravim osadenstvo,</p>
<p>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. <br>
</p>
<p>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<br>
</p>
<pre>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;
}
</pre>
<p>Druhy vystup je ale binarny, prichadzaju pakety, ktore maju
strukturu definovanu, ale paket zacina opacne. <br>
</p>
<pre>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
</pre>
<p>Prve dva bajty na zaciatku B5 62 vzdy oznacuju zaciatok paketu</p>
<p>dalsie dva 06 8A oznacuju o aky paket ide</p>
<p>nasledujuce dva 18 00 dlzku kolko byteov spravy nasleduje (v
tomto pripade 24)<br>
</p>
<p>potom je samotna sprava</p>
<p>a na konci 00 B6 su dva bajty checksum</p>
<p>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. <br>
</p>
<p>Ako na to?</p>
<p>dakujem,</p>
<p>b.</p>
<p><br>
</p>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
<p><br>
</p>
</body>
</html>