Surová data tak, jak byla v roce 2013 stažena z Pandory (HTML zdroj bez úprav, osobní e-mailové adresy jsou maskované).
<!-------------------------------------------------------------->
<!-------------------------------------------------------------->
<!-------------------------------------------------------------->
<table width="100%"><tr><td align="left" valign="middle"></td><td align=right valign="middle"></td></tr></table><BR> <div> </div><p>Ahoj,</p> <p> </p> <p>scan kody z PS/2 jsou osmibitove, start+paritu+stop pouzij jen na zajisteni spravneho prijeti, pak Ti staci tech 8 bitu. Data jdou postupne od nejnizsiho bitu. </p> <p> </p> <p>START – D0 – D1 – D2 – D3 – D4 – D5 – D6 – D7 – PARITY – STOP</p> <p> </p> <p>Scan kodu je vice sad. Standardne se pouziva Set 2. Najdes ho napr. tady <a href="http://www.computer-engineering.org/ps2keyboard/scancodes2.html">http://www.computer-engineering.org/ps2keyboard/scancodes2.html</a>, pekny popis komunikace je tady <a href="http://www.computer-engineering.org/ps2protocol/">http://www.computer-engineering.org/ps2protocol/</a> nebo tady <a href="http://proton.ucting.udg.mx/~mariocc/cap10.pdf">http://proton.ucting.udg.mx/~mariocc/cap10.pdf</a> a ja asi nejvic pouzival <a href="http://retired.beyondlogic.org/keyboard/keybrd.htm">http://retired.beyondlogic.org/keyboard/keybrd.htm</a>. </p> <p> </p> <p>„A“ by melo posilatscan kod 1C. C7 a 438 mi zni jako bitove ozrcadlene a navic C7 zinvertovane, 438 je pak se start stop i paritou. Ale to dost zalezi, jak jsou udelane ty rutiny. Nevim na co jak pouzivam spozdovai smycky. Ja mam interrupt na hodinach a prectu, coje na datach a nekm to soupnu, smitec. Az je to cele, strci se to do bufferu a rict si o to pak musi program, co chce znak z klavesnice.</p> <p> </p> <p>V priloze mas zdrojaci i schame, ale otazka zni, zda cizi zdrojaci nejsou vic matouci, nez si to napsat znovu. Ja vysel z nejakych existujicich knihoven, ale pak jsem tam musel udelal tolik zmen a uprav, ze bych si to ted urcite napsal znovu sam, ale uz se mi to nechce predelavat, kdyz to slape.</p> <p> </p> <p>Krasny den</p> <p> </p> <p>Martin</p> <p> </p> <p> </p> <p><b>From:</b> Jiri Biba (sapi@pandora.cz) [mailto:unive.nb@[doména skryta]] <br/> <b>Sent:</b> Saturday, June 15, 2013 12:39 AM<br/> <b>To:</b> Konference "SAPI-1 a československé mikropočítače"<br/> <b>Subject:</b> Re: RE: klavesnice<br/> <b>Importance:</b> Low</p> <p> </p> <p>Tak jsem koukal na ten převodník PS2 na Sapi a narazil jsem na záhadu s kódovací tabulkou. Jak známo, scan kód PS2 klávesnice je jedno až vícebytovej a každej byte sestává z série 11 bitů, tedy 11 pulsů hodin, ke kterejm jsou přidaný bity kódu na datovým drátu. První bit je start, pak je 8 bitu dat, pak parita a stop. Scan kódy jsou popsaný v tabulkách formátem 0XXX hex a je do nich zahrnutý kromě dat i parita, start a stop bit. U toho převodníku se příjem scan kódu startuje start bitem, kterej se ale zahodí, pak se slízne 8 bitů, pak parita a stop bit, který se taky oboje zahodí. Takže výsledek je pouze 8 bitů kódu. Porovnával jsem PS2 tabulku popsanou 11 bitama a příjmovou tabulku převodníku popsanou 8 bitama. No a narazil jsem na to, že pro stejnej znak si tabulky neodpovídají. <br/> Třeba scan kód pro A je 438hex. V převodníku je ale C7 hex. Rozkreslil jsem si to po bitech a na nic jsem dlouho nemohl přijít. I když jsem odmazal start, paritu a! stop, zbytek byl stále rozdílný. Pak jsem si nějak všiml, že se obojí liší směrem čtení, tedy PS2 má první , tedy start bit na časový ose vpravo, kdežto převodník ho má vlevo a ještě je rozdíl v inverzi dat. Odzkoušel jsem to pro několik znaků a je to vždy stejný. Budu se do toho muset víc ponořit, abych přišel na to, proč to tak je.<br/> Taky jsem koukal do softu převodníku a řekl bych, že předěláním na výstup pro Sapi se soft ještě hodně zjednoduší vykucháním obsluhy LCD displeje a navíc několikanásobně zrychlí, v obsluze displeje je hromada zpožďovacích smyček, nejdelší skoro 0,4s.</p> <p>Jirka</p> <pre>---------------------</pre> <pre><a href="mailto:sapi@pandora.cz">sapi@pandora.cz</a></pre> <pre>Konference o SAPI-1</pre> <p><br/> ---<br/> <b>POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen.</b><br/> Více informací: <a href="http://goo.gl/b99cI">http://goo.gl/b99cI</a> </p>