Arduino buffer seriovém portu

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Sobota Únor 28 20:29:40 CET 2015


A neni nejlepsi se podivat do zdrojaku a pripadne si to i upravit, kdyz 
uz je to open source?

Dne 28. 2. 2015 v 19:35 Petr Zapadlo napsal(a):
> Zdravím,
>
> doplním se,
>  velikost se dá změnit např podle postupu zde:
> http://www.hobbytronics.co.uk/arduino-serial-buffer-size
>
> a když jsem to provedl tak to začalo i fungovat.
> Nicméně v uvedeném souboru je psáno, že je to kruhový buffer, ale tak 
> se rozhodně nechová.
>
>
> Petr
>
>
> Dne 28.2.2015 v 18:50 Petr Zapadlo napsal(a):
>> To se právě pokouším zjistit, ale chová to nějak podivně.
>> proto se ptám, abych si v tom udělal jasno. Z zprávy po resetu se mi 
>> daří zachytit jen začátek.
>> I velmi jednoduchý program, který to sype do stringu, tak stihne jen 
>> část:
>>
>> Úryvek testovacího sw:
>>
>> void loop()
>>    {
>>     String fronta ="";
>>      while(Serial.available())
>>             {
>>               fronta += char(Serial.read());
>>
>>                 }
>>
>>
>>         dbgSerial.print(fronta);
>>
>>        delay(4000);
>>         Serial.println("AT+RST");
>>     }
>> Udělám reset a snažím se zachytit celý výpis, ale vidím jen:
>>
>> AT+RST
>>
>>
>>
>> OK
>>
>>
>> ets Jan 8 2013,rst cause:4, boot mode:(3,0)
>>
>>
>> wdt reset
>>
>>
>>
>> Přičemž celý výpis je:
>>
>> AT+RST
>>
>>
>>
>> OK
>>
>>
>> ets Jan  8 2013,rst cause:4, boot mode:(3,7)
>>
>> wdt reset
>> load 0x40100000, len 26952, room 16
>> tail 8
>> chksum 0x43
>> load 0x3ffe8000, len 3476, room 0
>> tail 4
>> chksum 0xb6
>> load 0x3ffe8da0, len 7396, room 4
>> tail 0
>> chksum 0x54
>> csum 0x54
>> rl
>> ready
>>
>>
>> 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.
>>
>> Je na to nějaké řešení?
>>
>> Díky
>>
>> Petr
>>
>> Dne 28.2.2015 v 18:25 Jirka Mww napsal(a):
>>> 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<zapik na email.cz>  napsal(a):
>>>> 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 bywww.HW.cz
>>>> Hw-list na list.hw.cz
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored bywww.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



---
This email has been checked for viruses by Avast antivirus software.
http://www.avast.com
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20150228/f50ee189/attachment-0001.html>


Další informace o konferenci Hw-list