Dva seriove porty na jednom IRQ
Tom Mazouch
mazouch na ica.cz
Středa Září 12 09:49:04 CEST 2001
Roman Pavera wrote:
>
>
> Cerpam sve informace ze sysmanu a mu podobnych (duveryhodnych)
> zdroju. V jednom z nich popisuji 8250 a ten ma registr, ve kterem
> urcuje: zda tento port (COM/ttyS) vyvolal preruseni a pokud ano co ho
> vyvolalo, doslo k nacteni znaku, odeslani znaku nebo nastaveni stavu
> na lince/portu. Tento registr zdedili i 16450 a 16550, ktere jsou
> zakladem pro dnesni seriove porty. Rekl bych ze problem sdileni IRQ v
> DOSu nebyl na urovni HW ale v ovladacim SW.
>
> Pokud se mylim, tak me nekdo prosim vyvedte z omylu.
Vyvedu...ale bude to uz trochu elektronika.
Predeslal bych, ze mi sdileni IRQ pro dva seriovy porty na pridavne(!)
ISA(!) karte v linuxu chodi. Problem je v HW. Vetsina 8bitovych
procesoru a pocitacu s nimi postavenych mela/ma IRQ linku resenou jako
otevreny kolektor na strane budice. Beha to v negativni logice a je to
OK.
Nevim proc je to na PC architekture OPACNE, tj. IRQ se aktivuje vysokou
urovni a budice nejsou OC (resp. v tomto pripade "otevreny emitor" :-).
Seriovy porty maji tristavovy budice IRQ, ale chodi to tak, ze jak nekdo
port pouziva, taxe budic aktivuje a pripoji k lince. Pokud jsou tam v
jednom okamziku takto dva, dotlucou se navzajem (navic TTL logika je
"tvrdsi" do log.0, takze pravdepodobne vyhraje ten, co preruseni zrovna
nechce).
Reseni (moje):
1) na IRQ linku v klidu dostat log.0 (ja tam mam normalne +5V pres cca
1kOhm - GA586-TX3)
2) za budice nahazet diody (proskrabnout jumpery a nacpat diody do nich)
Pokud to nekomu prijde jako OT, taxe omlouvam, ale uz to tady pisu asi
potreti.
TomM
Další informace o konferenci Linux