[elektro] USB - RS232 nagyon nem megy
Skandar Graun
sgraun at gmail.com
Wed Mar 10 07:42:31 CET 2010
Ha a flow control nem byte-onkénti, akkor szívni is fogsz.
CSAK byte-onként szabad kezelni, mert különben egymásba szaladnak az
adatok és olyankor el kell dobni mindent.
2010/3/10 Moczik Gabor <pm_levlista at progzmaster.hu>:
> Borza Attila wrote:
>> Graun:
>> sajnos úgy néz ki, hogy az átalakitó működik, kipróbáltam most a file
>> átvitelt, és működött rendesen, meg a port monitor program is ugyan azt az
>> adatot látja az alaplapival, és az átalakitóval is :(
>
> Nézz rá azért szkóppal a TXD lábra, hogy tényleg annyi-e az a baud rate
> amennyinek lennie kell.
>
>> Igazából az a bajom, hogy 4 , 9, éa 12 bytos csomagok mennének át PC-re,
>> visszafele meg csak 4 bytosak, igazából gondolkodtam rajta, hogy bytonként
>> kezelem, csak akkor macerásabb, mert az első byte mindig egy parancs, a
>> többi meg az adott parancshoz tatozó adat. Igaz már gondolkodtam rajta, amit
>> mondtál, hogy 9 biteseket küldök, és jelölöm a parancsot, de nem szeretnék
>> még ezel is külön foglalkozni, hogy számolgatom, hogy éppen melyik parancs
>> után hány byte érkezett meg, illetve ami miatt még nem biztos, hogy ez
>> működne, hogy nem mindig jöttek át megfelelő értékek, tehát, ha bytonként is
>> kezelném le, akkor is lennének benn hibás adatok.
>
> Sajnos szerintem ezt csak így fogod tudni megoldani. Honnan tudod melyik
> az első byte, van valami csomag eleje/csomag vége szinkron karakter?
> Arra ne alapozz, hogy a FIFO-ba belefér az egész csomag, vagy ha bele is
> férne, akkor nem valószínű hogy kivárja a driver (ez így jobb is) az
> összes byte-ot mire megszakítást kapsz.
>
> Én úgy csinálom, hogy amint jön egy byte azonnal kiolvasom, a működési
> állapottól függően azonnal le is kezelem. Sajnos kiesik a szinkronból a
> rendszer, ha elvész egy byte vagy valami történik és nincs egyértelmű
> szinkron karakter, úgyhogy jó ha timeout-ot is teszel hozzá, hogy
> mittudomén, a csomag elejétől számított x időn belül ha nem ér ide a
> vége, akkor eldobod az egészet, és alaphelyzet.
>
> Nem ártana egy checksum se a végére...
>
> --
> ((( Móczik Gábor )))--((( e|mail: pm-01 |@| progzmaster |.| hu )))
> ((( S.k.y.p.e.: moczik )))
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list