Billentyűzet Általános billentyűzet Csatlakozók: A billentyűzetet kétféle csatlakozóval szerelhetik. 5 pólusú DIN (AT vagy XT billentyűzet csatlakozó), 6 pólusú mini-din (PS/2 billentyűzet csatlakozó). Mindkét csatlakozó elektromos szempontból azonos, egyedül a fizikai kialakításban különböznek. USB
Billentyűzet mátrix 4x3-as mátrix billentyűzetet Processzorok Az első PC billentyűzetekben a 8048 mikrovezérlő processzort alkalmazták 8 kimenettel (row) és 11 vagy 12 bemenettel (col). Így összesen 8*11, max. 88 billentyű kezelését tette lehetővé. A billentyűzetbe beépített processzor feladata figyelni melyik gombot, gombokat nyomta meg vagy engedte el a felhasználó, ellátja a gombok prellegésmentesítését. A megnyomott, felengedett gomb adatait elküldi a gazdagépnek (PC), ha szükséges egy 16 byte-os átmeneti tarolóban eltárolja az adatokat, míg a PC fogadni képes azokat. Az alaplapok tartalmaznak egy billentyűzet vezérlőt (keyboard controller), ami dekódolja a billentyűzettől vett adatokat, majd átadja a PC-n futó programnak, amit az tetszés szerint felhasználhat. Minden kommunikáció a billentyűzet és a PC (host) között az IBM által létrehozott protokoll szerint zajlik.
Interface és Protokol: A billentyűzet ugyanazt a protokollt használja, mint a PS/2 egér. Az eszköz és a PC közötti párbeszéd két vezetéken zajlik: szinkron soros átvitel! Ez azt jelenti, hogy az adatbitek (data) egymás után az órajelhez (clock) szinkronizálva érkeznek. Az órajel (clock) és adat (data) vezeték kétirányú. A vezetékek alapállapota (a felhúzóellenállás miatt, H) magas, de mindkét fél könnyen lehúzhatja alacsony (L) szintre. Így mindkét fél használhatja a két vezetéket, egymás kimeneteit nem tudják tönkretenni. Adatküldés előtt az eszköz először megvizsgálja, hogy a Clock vonal magas-e Ha a Clock vonal alacsony állapotban van, akkor a host tiltja a komunikációt. Adatátvitel nem lehetséges így az adat az eszköz belső pufferébe kerül. Ha a Clock magas az átvitel elkezdődhet. Ezután az eszköz megvizsgálja a Data vonal állapotát. Ha alacsony, akkor a host akar adatot küldeni. Ekkor az eszköz félbeszakítja a küldést és fogadja az adatot/parancsot a hosttól. Ha a Clock és Data vonal is magas (high, idle) állapotú, akkor lehetséges az átvitel megkezdése. Az átvitel ideje alatt az eszköz ellenörzi a clock állapotát kb.100us-onként (a Clock magas állapotánál). Ha a host alacsonyra húzta, az eszköz félbeszakítja az adást. A host az első 10 bit kiküldése közben bármikor megszakíthatja az adást. A 11. bit kiküldéskor azonban kötelezően fogadnia kell az adatot a z eszköztől.
A fenti ábra 1 byte átvitelét mutatja (az eszköz küldi a hostnak). Az eszköz az adat vonalat nem feltétlen az órajel felfutó élénél Vátoztatja, mint ahogy a fenti ábra mutatja. A lényeg, hogy az órajel lefutó élnél az adatvonal stabil és érvényes legyen. Nyomógombok, kontaktusok A gyakorlatban bármit felhasználhatunk nyomógombként, ami jelezni tudja, hogy megnyomták. A gyakorlati megvalósításokat gazdasági szempontok határozzák meg. Néhány példa a gombokra, kapcsolókra: 1. Mechanikus kapcsolók. Ezek az ún. "kattogós" billentyűzetek. Itt mechanikusan érintkezik két vezető, klasszikus kapcsolók. Kapcsoláskor jellegzetes hangot adnak, így a gombnyomás fülre is érzékelhető, illetve lenyomáskor jelentős ellenállást tanúsítanak, így a billentyű megnyomása jobban tudatosul a felhasználóban. A jobb gombokba beépített kapcsolók élettartama 1..2 millió lenyomás. Ma már "csendes" változatuk is létezik. Ezekben gyengébbek a rugók és finomabb a mechanikájuk. 2. Vezető gumi és fémezett fóliák. Ezeket a típusokat hosszú évek óta tökéletesítik. Kezdetben elég sok baj volt velük. A kattogós billentyűzetekhez képest túl csendesek, nem lehet tudni, hogy megnyomtuk-e a gombot vagy sem, mert túl kevés ellenállást tanúsít. Túl könnyen lehet a gombokat megnyomni. A fólia idő után átszakad, elkoszolódik stb. Ma már vannak rendes gombokkal ellátott fólia billentyűzetek is, ahol a billentyűk alatt van a gumi vagy fólia érintkező.
3. Kapacitív kapcsolók. Ezek a jó minőségű billentyűzetek népszerűek voltak a korai PC-s időkben, bár elég költséges az előállításuk. Az eredeti IBM PC, PC/XT és PC/AT számítógépek használták ezt a típusú billentyűzetet. A kapcsolómátrix igen kicsi kapacitásokból áll. A gombot lenyomva a gomb alján lévő lemez közelít a gomb alatt, a panelon elhelyezett két kapacitív lemezhez, kapacitáshoz. Az így létrejött kapacitás változást érzékeli a beépített vezérlő. A kapcsoló elemek között nincs mechanikai kontaktus. 4. Hall-érzékelős gombok. Ezeknél a gomboknál sincs közvetlen mechanikai kontaktus. A gomb lenyomásakor a gomb mozgó részébe épített kis mágnes elhalad a gomb házába épített hall-érzékelő előtt. A mágneses tér változásra a gomb alacsony szintet ad ki. Ezeknek a gomboknak van egy engedélyező lába, amit a mátrix sorkijelölő (row) vezetékére kötnek.