Klávesnice USB s podporou PS2
Moderátor: Moderátoři
Zatím jsem našel jen obrázek, stačí jen napsat po kterých drátech to jede do té PS2 klávesnice. Na tu USB klávesnici by se mi hodily právě ty indikace, klávesnice nemusí být připojena, ale šlo by udělat něco s LEDkama.
- Přílohy
-
key.jpg- (91.08 KiB) Staženo 116 x
- Panda38
- Příspěvky: 725
- Registrován: 21 lis 2012, 00:00
- Bydliště: Most, Praha, Lanžhot
- Kontaktovat uživatele:
Čistě jednosměrný přenos znamená i to, že musí být strana hostitele připravena k příjmu prakticky "nepřetržitě" (s rizikem ztráty některých datagramů, pokud toto nelze dodržet).
Tohle je sice pro myš, ale v češtině a pro ilustraci to stačí:
http://elektronika.kvalitne.cz/ATMEL/ne ... mouse.html
judeware píše:Čistě jednosměrný přenos znamená i to, že musí být strana počítače připravena k příjmu prakticky "nepřetržitě" (s rizikem ztráty některých datagramů, pokud toto nelze dodržet).
A proč nepřetržitě ? Od toho jsou už dávno vymyšlena přerušení, takže to zvládaly i osmibitové počítače. Ano, určité vysoké rozlišení myši nemusí být starým PC pobráno.
Panda38 píše:Podle toho v čem - Windows, BIOS, porty?p32 píše:A ještě by se mi hodil i prográmek na zapínání LEDek na klávesnici. Mám dojem, že kdysi na AT klávesnici to šlo, ale nejsem si fakt jistej jestli to nebylo něco jiného.
Celkem je to jedno. Něco, co se dá prostě vyzkoušet pod woknama bez zaseknutí.
Kód: Vybrat vše
set wshshell = CreateObject("WScript.Shell")
wshshell.sendkeys "{SCROLLLOCK}"
Spustenim se zapne/vypne scroll lock. Jinak na zkousku to jde delat napr pres 'Klavesnici na obrazovce', tam vypnuti/zapnuti scroll locku meni stav i na HW klavesnici.
...znamená i to, že musí být strana hostitele připravena k příjmu prakticky "nepřetržitě"...
aby nedošlo k mylné interpretaci. Šlo o zdůvodnění, k čemu se (mimo jiné) hodí obousměrná komunikace na PS/2. A o to taky v diskusi šlo.
Po úpravě je ta věta pravdivá na 100%, páč řadič 8042 v PeCe (nebo jeho obdoba - součást čipsetů PC286/386 a výš) skutečně čte data z portu pořád dokola (krom spec. stavů). Teprve po přijmutí znaku (XT), nebo zaplnění svého bufferu (AT a výš), aktivuje tento IRQ1 a dožaduje se obsluhy! Nedočká-li se, data se přepíší novými (XT). Možnost pozastavit přísun dalších dat u obousměrné komunikace se tak logicky nabízí jako zajímavá vlastnost.
Samotná klávesnice žádný výstup INT nemá. Takže v aplikaci s MCU se periodické sledování stavu PS/2 rozhraní programem přímo předpokládá a o žádném HW přerušení nemůže být řeč. Leda spojit CLK portu též s vyhrazeným vývodem INT na MCU, což ale znamená přerušení iks krát během sériového přenosu PS/2 -> MCU a to není totéž jako v PC.
Podobný trik se využíval např. v C428. Výstup přijímače DO tam vedl na bitový port IR a zároveň na INT.
No tak ono to chce nejdřív pokročilejší OS. Pak si ji můžeš připojit kdykoliv. Mám starou Benq I-100P do PS/2, stejně tak jsem zkoušel i ještě starší Chicony (model neznám, je žlutá jak zuby nutrie a tlačítka jsou jak od psacího stroje), ani tam není problém.p32 píše:MetalGod píše:Kdyby byla komunikace jen jednosměrná, jak by se daly softwarově řídit stavy NumLocku, ScrollLocku a CapsLocku, včetně jejich LED?
To je asi to, co se z PC na klávesnici určitě neřídí. Prostě se to změní softwarově jen v OS toho PC či NB. Zatím jediné co vidím, tak je indikace LED.
Určitě musí být oboustranná komunikace u USB klávesnice (PC a USB modul), kde je možnost kdykoliv odpojit a připojit. U PS2 klávesnice, kterou připojím až po nastartovaném PC, se nedá dělat nic, ani ovládat LEDky. Má někdo na klávesnici víc LEDek jak tři ?
- Přílohy
-
SV_A0052.mp4.zip- Tohle je narychlo ubastlený běhající světýlko
- (114.76 KiB) Staženo 96 x
kdo je levičák ve čtyřiceti, nemá rozum.
— Winston Churchill