Kódový zámek
Existuje spousta zapojení s logickými obvody a někdy dokonce jen s tyristory, ale vždy je možné používat jen kód, kde se neopakují stejné čísla. Díky tomu je limitovaná i délka kódu. Tento problém by sice bylo možné vyřešit pomocí třeba EPROM, ale zapojení by se neúměrně komplikovalo. Nejlepším řešením v dnešní době je tedy mikroprocesor. K naprogramování mě vedlo především to, že se mi doma válí spousta klávesnic z tuzemských telefonů a chtěl jsem je nějak využít. Popis zapojení
Klávesnice je zapojena maticově a je připojena na port P1. Použít lze libovolný typ.
V případě silného rušení by mohly být
interní zdvihací rezistory s odporem asi 50k v procesoru dost velké, a tak by bylo vhodné zapojit ještě
externí odporovou síť s odporem asi 1k.
Propojkou na pinech označených MÓD se volí chování zámku. Pokud propojka není zapojena, chová se zámek způsobem kódem zapni, kódem vypni.
Se zkratovací propojkou se výstup kódem zapne a po uplynutí programově nastavené doby se sám vypne.
Tato doba se mění ve zdrojovém kódu od 4 do 255 vteřin (mnou nastavená je 10). Vlastní kód je nastaven programově a
může mít délku až 255 cifer, které se mohou libovolně opakovat (mnou zadaný kód je: 555823).
Ke kódovému zámku jsem navrhl i pošný spoj s rozměry asi 50x50mm. Obsahuje vše podle schématu mimo klávesnici,
která se připojuje na připravené piny. Na desce plošných spojů je připraveno i místo pro případnou odporovou síť. Program pro jednočip
Na začátku kódu jsou některé konstanty. První z nich je zpožděné vypnutí po době nastavitelné
od 4 do 255 vteřin. Další konstanta je doba, po které se vynuluje vnitřní ukazatel pozice v kódu.
Tato doba se počítá vždy od stisku libovolného tlačítka, takže pokud po dobu asi 4 vteřin nedojde ke stisku,
vrací se ukazatel v kódu na první číslo kódu. Tuto hodnotu lze měnit od 1 do 255 (50 = asi 1 vteřina).
Poslední konstantou se ovlivňuje délka vteřiny, která je nastavena jen přibližně.
Téměř na konci zdrojového kódu je zadán vlastní číselný kód. Musí být vždy uzavřen v apostorfech a může
mít délku až 255 cifer. Kód může mimo čísel obsahovat i znaky # a *.
Na konci kódu je překódovací tabulka pro různé klávesnice. Některé mají 1, 2 a 3
dole a jiné zase nahoře (já mám klávesnici s 1, 2 a 3 dole).
Změnu lze provést buďto v programu nebo prohozením
příslušných vývodů klávesnice. Přímo v kódu jsou ještě vysvětlivky, takže by to mělo být bez problémů.
Přeložený kód zabírá 389 bytů + 1 byte za každé číslo kódu.
(c) 2004, Stanislav Mašláň - využití programu ke komerčním účelům bez souhlasu autora je trestné.
Poslední aktualizace: 23.6.2004 |