Monitor 9 bit seriove linky

Jan Waclawek konfera@efton.sk
Čtvrtek Červenec 23 10:47:21 CEST 2009


Toto je jedna zo zasadnych bolesti UARTu v PC (16450 a potomkovia) - maju 5-6-7-8 datovych bitov, ale 9 nativne nie. Onoho casu, ak bolo treba 9 bitov, tak sa pouzivali speci karty s UARTami od Philipsu, ktore ten 9-bitovy rezim nativne vedeli. 

Tym MARK/SPACE sa to do urcitej miery odzubat da, ale len v okresanej podobe - fullduplex je napriklad nemyslitelny, medzi-bytove casovanie je (najma pod Win) problematicke). Ale videl som specializovane softy pre konkretne 9-bitove protokoly, ktore to zvladnute (teda v tom halfduplexe) mali, takze ist to ide, ale je to zrejme pracne.

Ze Bray prijima a zobrazuje 8 bitov z tych 9 bez problemov je dane tym, ze UART aj ked prijme byte ktory je podla aktualneho nastavenia parity chybny, normalne ho ulozi do prijimacieho registra resp. FIFO, ale priradi k nemu flag PE (parity error). Je vecou obsluzneho softu, ako sa s takymto pripadom vysporiada. Nuz a kedze WinAPI je pre seriak definovany tak debilne ze sa nedaju jednotlive chybove flagy priradit jednotlivym bytom, Bray jednoducho vsetky tieto flagy (aj FE) ignoruje a vsetky prijate znaky - aj tie "vadne" - zobrazi.

wek  



On Thu, 16 Jul 2009 16:01:01 +0200
Zdenek <zdej@atlas.cz> wrote:

> Nasel jsem postup, jak behem vysilani prepinat paritu Mark-Space.
> 
> Ale zjistil jsem zajimavou vec: Pouzivam program Terminal (Br@y 1,9b) 
> (nekdo ho tu kdysi doporucoval) a prijima vsechna 9-bitova data bez 
> ohledu na nastaveni parity.
> Da se to nejak logicky vysvetlit?
> 
> Zdenek
> 
> Zdenek napsal(a):
> > Nevite nekdo o monitoru/terminalu, ktery by umel zobrazit komunikaci na 
> > RS232 v 9-bitovem modu?
> > 
> > Vysilat nemusi umet, staci kdyz bude poslouchat linku a zaznamenavat na 
> > obrazovce, přip. logovat.


Další informace o konferenci Hw-list