Kuinka tämä voi toimia ilman multiplekseria?
Ei. Näppäimistökortilla näyttää olevan vain kytkimiä, ehkä joitain diodeja, joita emme näe. Vasen levy näyttää kuitenkin siltä, että siinä on prosessori. Melkein varmasti multipleksointi tapahtuu laiteohjelmistossa.
Multipleksointialgoritmi toimii näin:
- Aja yksi rivi korkealle, muut matalalle.
- Ota passiiviset pudotusvalinnat käyttöön sarakeriveillä.
- Katso, mitkä sarakerivit ovat korkeita. Näiden sarakerivien ja yhden väitetyn rivilinjan leikkauspainikkeita painetaan. Muut rivin painikkeet vapautetaan.
- Toista takaisin vaiheeseen 1 ja vahvista seuraava rivi peräkkäin.
Yllä oleva prosessi toistetaan riittävän nopeasti, jotta kaikki painikkeet tarkistetaan ajan kuluessa, joka tuntuu silti välittömältä ihmisen tarkkailijalle. Ihmisen "hetkellisen" raja on tässä yhteydessä noin 50 ms. Jopa matalan luokan mikrokontrolleri voi skannata 4x4-näppäimistön paljon lyhyemmässä ajassa.
Voiko tämä havaita tarkasti useiden painikkeiden painamisen?
Luultavasti kyllä. Yksi tapa on laittaa diodi sarjaan jokaisen painikkeen kanssa. Ne voivat olla näyttämäsi taulun alaosassa. Diodien kanssa yllä kuvattu algoritmi toimii vain.
Toinen tapa on asettaa vastukset sarjaan linjojen kanssa ja mitata niiden analoginen jännite. Vaikka useilla painikkeilla lyhennettäisiin useita rivi / sarake viivoja yhteen, voit lopulta selvittää, mitä painikkeita painetaan. Tämä edellyttää A / D-tuloja mikrossa, ei vain digitaalisia tuloja, kuten diodeja käytettäessä.