<html>
<head>
<meta content="text/html; charset=iso-8859-2"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
To se právě pokouším zjistit, ale chová to nějak podivně.<br>
proto se ptám, abych si v tom udělal jasno. Z zprávy po resetu se mi
daří zachytit jen začátek. <br>
I velmi jednoduchý program, který to sype do stringu, tak stihne jen
část:<br>
<br>
Úryvek testovacího sw:<br>
<br>
void loop()<br>
{<br>
String fronta =""; <br>
while(Serial.available())<br>
{<br>
fronta += char(Serial.read());<br>
<br>
}<br>
<br>
<br>
dbgSerial.print(fronta); <br>
<br>
delay(4000);<br>
Serial.println("AT+RST");<br>
}<br>
Udělám reset a snažím se zachytit celý výpis, ale vidím jen:<br>
<br>
<meta name="qrichtext" content="1">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><!--StartFragment-->AT+RST</p>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">OK</p>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"> ets Jan 8
2013,rst cause:4, boot mode:(3,0)</p>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">wdt reset<br>
</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br>
<!--EndFragment--></p>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-2">
<style type="text/css">
p, li { white-space: pre-wrap; }
</style>Přičemž celý výpis je:<br>
<br>
AT+RST
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><br>
</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">OK</p>
<br>
ets Jan 8 2013,rst cause:4, boot mode:(3,7)<br>
<br>
wdt reset<br>
load 0x40100000, len 26952, room 16 <br>
tail 8<br>
chksum 0x43<br>
load 0x3ffe8000, len 3476, room 0 <br>
tail 4<br>
chksum 0xb6<br>
load 0x3ffe8da0, len 7396, room 4 <br>
tail 0<br>
chksum 0x54<br>
csum 0x54<br>
rl<br>
ready<br>
<br>
<br>
Blbé na tom je to, že délka uvodního výpisu se liší dle verze
firmware a když čekám na "ready" tak se ho u delších výpisů
nedočkám.<br>
<br>
Je na to nějaké řešení?<br>
<br>
Díky<br>
<br>
Petr<br>
<br>
<div class="moz-cite-prefix">Dne 28.2.2015 v 18:25 Jirka Mww
napsal(a):<br>
</div>
<blockquote
cite="mid:CAGNMtu00C4Dw1LP0Q+=8pJwON2EDZ2wJAoSLvQMOovqL2yYuLA@mail.gmail.com"
type="cite">
<pre wrap="">Jen jestli to není kruhový buffer , to by znamenalo, že tam pak
zůstane posledních 63 bytů
Dne 28. února 2015 18:21 Petr Zapadlo <a class="moz-txt-link-rfc2396E" href="mailto:zapik@email.cz"><zapik@email.cz></a> napsal(a):
</pre>
<blockquote type="cite">
<pre wrap="">Zdravím,
v souvislosti s ESP8266 narážím na to jak se chová buffer na seriovém portu
arduina.
Že má velikost 64 byte jsem se dočetl, ale jak se chová když přeteče - to
nikde popsané není (nenašel jsem)
Pokud mám ESP nastavené na ry se tchlost 115200 (většina FW a nedá se změnit),
tak nestíhám odebírat data ze seriového port a posílat je na druhý,
tentokráte SW port, který jede 9600.
Pokud ESP vychrlí víc dat, tak mi v bufferu zůstane to co bylo na začátku a
konec zmizí. Je to tak?
Dá se to změnit, aby buffer přetíkal tak, aby obsahoval to co bylo poslnáno
jako poslední?
Díky
Petr
_______________________________________________
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>
<pre wrap="">
</pre>
</blockquote>
<br>
</body>
</html>