Bufer pro seriovou linku-
Ctirad Konečný
ck@cbox.cz
Sobota Květen 22 13:03:30 CEST 2004
Dobry den,
pro vsechny MCU, ktere pouzivam jsem si postupne napsal obsluhu
kruhovych buferu. Seriovy kanal pouzivam uz pri ladeni, kdy jeste
vetsina kodu nefunguje spravne.
Definuji ukazatele zacatku a konce dat (cteni a zapisu), dale registr
priznaku - preteceni, prazdny bufer, prichod sync. znaku, prichod
konce paketu. Nekdy mam take citac nezpracovanych dat, abych
se nezdrzoval vypoctem z ukazatelu.
Povely si obvykle jeste presunuji z kruhoveho buferu do pevneho,
delky na 1 povel. Tento bufer mi slouzi zaroven jako pamet
aktualniho povelu. Byva vybaven priznakem platnosti povelu.
Povel vetsinou presunuji do pevneho buferu, az kdyz je v kruhovem
buferu cely a zkontrolovany na checksum nebo CRC. Pro kontrolu
povelu "v letu" si definuji jeste pracovni ukazatel v kruhovem buferu
a priznaky "povel prijiman", "povel OK", "chyba".
U pevnych buferu vzdy hlidam strop. Po jeho dosazeni nova data
zahazuji, nebo prichodem sync. znaku zacnu zapisovat od zacatku.
U kruhovych buferu pouzivam 2 mody - prepisovaci a zamceny.
Prepisovaci mod po zaplneni odsunuje ukazatel zacatku - nova
data prepisuji nejstarsi. V zamcenem modu se po zaplneni
buferu nove znaky zahazuji.
Zdravim CK
----- Original Message -----
From: "Marek Pavlů" <marekpavlu@mybox.cz>
To: "'[HWnews]'" <hw-list@mailman.nethouse.cz>
Sent: Friday, May 21, 2004 11:01 PM
Subject: RE: Bufer pro seriovou linku-
> Zdravim,
>
>
> Ja jsem zase pouzival jak ty dva pointry, tak delku dat v buffru.
> Ono se to pak nemusi dopocitvat a pri kazdem cteni zapisu se o to stara
> jen jednoducha logika :).
>
> S pozdravem,
> Marek Pavlu
>
>
> ||>-----Original Message-----
> ||>From: hw-list-bounces@mailman.nethouse.cz [mailto:hw-list-
> ||>bounces@mailman.nethouse.cz] On Behalf Of Snail Instruments
> ||>Sent: Friday, May 21, 2004 8:46 AM
> ||>To: [HWnews]
> ||>Subject: Re: Bufer pro seriovou linku-
> ||>
> ||>>funkci kruhoveho bafru. Staci Vam prece dva pointry - jeden pro
> zapis,
> ||>>druhy pro cteni.
> ||>
> ||>Me se vice osvedcilo uchovavat index pocatecniho znaku a pocet znaku
> v
> ||>bufferu. Pokud totiz uchovavame pointery, rovnosti pointeru
> odpovidaji
> ||>dva stavy - budto uplne prazdny nebo uplne plny buffer a je potom
> treba
> ||>dalsi promenna k rozliseni techto stavu.
> ||>
> ||>J. Hanzal
> ||>
>
> ---
> avast! Antivirus: Odchozi zprava cista.
> Virova databaze (VPS): 21.10.2003
> Testovano: 21.5.2004 23:01:18
> avast! (c) copyright 2000-2003 ALWIL Software.
> http://www.avast.com
>
>
>
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> HW-list@mailman.nethouse.cz
> http://nethouse.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list