Stránka 2 z 3

Napsal: 12 dub 2013, 12:51
od p32
Asi by bylo dobré tomu dát nějaký smysl. Pokud někdo tvrdí, že PS2 klávesnice komunikuje oboustranně, tak by to chtělo nějaký odkaz, ať se např. já (a to rád) poučím, protože by se mi to hodilo. U USB klávesnice by to bylo ještě lepší.
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.

Napsal: 12 dub 2013, 12:54
od p32
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.

Napsal: 12 dub 2013, 12:55
od Panda38
Komunikační protokol PS/2 je popsaný např. tady. Komunikace je řízená hodinami a jsou to signály s otevřeným kolektorem: http://www.computer-engineering.org/ps2protocol/

Napsal: 12 dub 2013, 12:56
od Panda38
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.
Podle toho v čem - Windows, BIOS, porty?

Napsal: 12 dub 2013, 13:58
od hrmil
Ahojte.Z predchodzích odpovedí som stále nepochopil načo by bola obojsmerná komunikácia dobrá pre klávesnicu PS/2.
Vie to niekto ?.

Napsal: 12 dub 2013, 14:15
od judeware
Např. pro nastavení prodlevy a rychlosti autorepeatu.

Napsal: 12 dub 2013, 14:20
od rnbw
A na ovladanie tych LED, staci si to precitat poriadne.

Napsal: 12 dub 2013, 14:53
od judeware
Komunikace hostitel -> zařízení se dá považovat i za jistou primitivní formu řízení toku. Počítač přizemní CLK = klávesnice má zakázano vysílat.

Č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

Napsal: 12 dub 2013, 15:09
od p32
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.

Napsal: 12 dub 2013, 15:12
od p32
Panda38 píše:
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.
Podle toho v čem - Windows, BIOS, porty?
Celkem je to jedno. Něco, co se dá prostě vyzkoušet pod woknama bez zaseknutí.

Napsal: 12 dub 2013, 15:27
od The_P
Pokud Ti nevadi VBS, tak stam staci vytvorit maly skript:

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.

Napsal: 12 dub 2013, 18:03
od p32
Tak s tou klávesnicí na obrazovce to je dobré. To mě fakt nedošlo, že by to tak šlo. Ale měl jsem dotaz a spíše ho formuluji jinak. 3 LED tam jsou normálně, ale nelze toho dát trochu víc ? Tzn. spíše přes nějakou adresu a zadáním hodnoty a ne přes proměnné s nějakým názvem (jestli mi rozumíš).

Napsal: 13 dub 2013, 00:05
od judeware
Svůj poslední příspěvek jsem upravil:
...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.

Napsal: 13 dub 2013, 00:21
od p32
No, já si myslím, že to tak asi nějak bude, ale podle mě klávesnice je tak podružná záležitost, že si ji PC kontroluje jen přes to přerušení v OS.

Teď jsem se díval na nastavení, tak klávesnice má IRQ 01 a myš měla IRQ 12 a grafika IRQ 16. Ano, ovládače klávesnice jsou pro 8042.

Napsal: 13 dub 2013, 15:24
od MetalGod
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 ?
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.