PC klávesnice


PC klávesnice, která je součástí některých úloh, vysílá následující signály (viz též popis rozhraní klávesnice):

CLK    - hodinový signál,

Data    - datový signál.

Průběh obou signálů, sejmutý osciloskopem  při stisknutí klávesy "A" je na následujícím obrázku (Obr. 1).

Hodinový signál taktuje vysílání jednotlivých datových bitů na datovém vodiči. Perioda pulsů je přibližně 80 µs (1 dílek na vodorovné ose odpovídá na obrázku 100 µs).

 

Obr. 1:    Stisknutí klávesy A.

Z obrázku je zřejmé, že se úrovně na datovém vodiči mění, je-li signál CLK v úrovni H (u některých jiných klávesnic to však nemusí platit). Vzorkování dat je proto vhodné provádět při vzestupné hraně signálu CLK.

Každý znak je vysílán jako kombinace 11 bitů v následujícím pořadí:

START bit - je vždy v úrovni L,
8 datových bitů - 8bitový scan kód klávesnice. Bity jsou vysílány v pořadí LSB - MSB,
Paritní bit - doplnění na lichou paritu,
STOP bit - vždy v úrovni H.

Na obrázku tedy odpovídá stisku klávesy "A" kód 0x1C.

Kódy vysílané klávesnicí jsou tzv. scan kódy, které odpovídají poloze stisknuté klávesy na klávesnici. Převod scan kódu na ASCII kód dané klávesy je třeba provést podle příslušné převodní tabulky.

Při uvolnění klávesy je vyslána kombinace dvou znaků. Nejprve je vysílán kód uvolnění klávesy (0xF0), potom kód příslušné klávesy (stejný jako při stisknutí).

Následující obrázek (Obr. 2) zachycuje průběhy signálů při uvolnění klávesy A, na dalším obrázku (Obr. 3) jsou průběhy signálů pro samotný znak uvolnění klávesy, tj. 0xF0.

Obr. 2:    Uvolnění klávesy A.

Obr. 3:    Kód "uvolnění klávesy".

Podobné víceznakové kódy jsou vysílány také při stisku některých řídicích kláves (pravý Alt, Ins, Home, ...).

Poznámka:

Výše uvedený popis platí pro klávesnici, která je používána u některých úloh z předmětu PZ. Časování signálů pro jiné klávesnice se může od výše zobrazených průběhů lišit.


Poslední změna stránky byla provedena 07.04.2006