In article <[EMAIL PROTECTED]>,
        Zidarics Zoltan <[EMAIL PROTECTED]> writes:
> hello,
>> > Ha a minicom-ban beallitom a hw flow controll-t, akkor megvarja a CTS
>> > 1=20 allapotat, de az RTS-t nem mozgatja :(.
>>
>> Talan arrol van szo, hogy 2400 bps-sel
>> nem tudod olyan gyorsan pumpalni az inputot,
>> hogy a kernel es minicom ne lenne kepes fogadni
>> es lazan lekezelni.
>> Van valami bizonyiteka a karaktervesztesnek?

> Szkoppal nezem a kimenetet. 
> A minicomban meg sem mozditja az RTS-t, viszont megvarja a CTS-t az adassal.

> A doksi szerint:

Milyen doksi szerint? :-o

> CTS=1 eseten a "modem" (DCE) adaskesz. Ezutan a gep (DTE) az RTS=1-el adasba 
> kapcsolja a modemet, majd elkezd adni. Ezutan az RTS=0 val vetelbe kapcsolja 
> a modemet. Itt a problema, mivel az ado chip (16550) egy 16 byte-os puffert 

Hogy ez micsoda marhasag!
(IMHO. ;-)
A a DTE<->DCE kommunikacio full duplex. Nem kell valtani az adas
es a vetel kozott.

Na varjunk csak!
Neked van valami celberendezesed, es ahhoz adtak valami leirast,
amibol ideztel? Nem a szabvany DCE-krol es DTE-krol beszelsz?
Ha ez a helyzet, akkor nyugodtan add vissza a gyartonak,
hogy csinalja meg szabvanyosra a protokollt.
Es ne merje a szajara venni a DCE es DTE szavakat!

> hasznal, tehat a programbol nem mondhatod azt, hogy 
> (*)
> -RTS=1
> -karakterek a kimenetre
> -RTS=0
> mivel a karakterek kuldese teljesen aszinkron a kuldo programmal.
> Lehetne meg varazsolni az ado puffer ures signalra is, de azt mar akkor kuldi 
> a chip, amikor az utolso byte-ot kezdi el kitolni.
> Ezert lenne jo, ha a kernel kezelne es nem en.
> Szkoppal az latszik, ha a (*) kezi metodust csinalom: 
>             _______________
> RTS ___|                         |_________
> adat -----<adas>-------<valasz>-----
> az adas vege es a valasz eleje kozott cca. 2 mS van, tehat a valasz elejebe 
> "harap" bele az RTS=0.

Azt hiszem itt valami felreertes van.
Egy szabvanyos V.24 kommunikacioban az RTS es a CTS egymastol
teljesen fuggetlenul mukodik.

Az RTS-t akkor teszi 0-ba a DTE, ha tele van az input puffere.
Ezt a DCE erzekeli, es leallitja a DCE->DTE adatforgalmat.
Ha a DTE input puffere felszabadul, 1-be teszi az RTS jelet,
mire fel a DCE ismet ingerli a szamitgeped RxD bemenetet.

Mindekozben ha a DCE ugy latja, hogy nem tud mit kezdeni a DTE-tol
erkezo sok adattal, a CTS jelet 0-ba teszi. Ezt a DTE erzekeli,
es leallitja a DTE->DCE adataramlast. Es ellenkezoleg, amikor
a modem ujra szeretne a terminaltol adatot.

A ket folyamatnak az egvilagon semmi koze nincs egymashoz.
Az op.rendszerek es a kommunikacios kartyak eszerint mukodnek.
Ha a te feltelezett szerkezeted maskeppen, akkor nem kompatibilisek.
Pont.

(Az abradon egyebkent nem tudni mit jelentenek az
"adat", "adas", "valasz" szavak. Honnan hova?)

Gabor
_________________________________________________
linux lista      -      [email protected]
http://mlf2.linux.rulez.org/mailman/listinfo/linux

válasz