English version

Jednoduchý kódový zámek

     Úvod:
Toto je velmi jednoduchý číselný kódový zámek. Je řízený mikroprocesorem Atmel AVR ATTiny24A (případně starším ATTiny24 čiATTiny24V), program ke stažení a nastavení bitů je níže. Mikroprocesor je taktován na frekvenci 1MHz (vnitřní RC oscilátor 8MHz a předdělič 8). Kód (0 - 31 cifer) je uložen v paměti EEPROM a díky tomu je zachován i při odpojení napájení. Je možno ho měnit, aniž by bylo nutno procesor přeprogramovat. K ovládání kódového zámku slouží standardní 12-tlačítková klávesnice, maticově zapojená do obdélníku 3 x 4, s klávesami 0 - 9, *, #. Klávesy jsou skenovány maticově po sloupcích zprava doleva s frekvencí cca 100Hz. K indikaci stavu zámku slouží tři LED a piezo reproduktorek. Kondenzátor C1 umístěte co nejblíže k mikroprocesoru. Odběr IO1 v klidu při 5V je cca 0,3 - 0,5 mA. Celkový odběr číselného zámku záleží hlavně na spotřebě LED a zatížení výstupu. Odpory R1, R2 a R3 určují proud a tím i jas příslušných diod LED. Napětí 5V lze získat z vyššího napětí např. jednoduchým zdrojem s obvodem 7805.
     Módy provozu:
Pomocí drátové propojky DP1 (Volič módu) lze zvolit jeden z pracovních módů:
1 = Kódem odemkni, tlačítkem zamkni
2 = Kódem odemkni, kódem zamkni
3 = Impulz 2s
4 = Impulz 6s
5 = Impulz 18s
V módu 1 je nutno pro odemčení zadat kód, zamčení se provede tlačítkem bez zadávání kódu. V módu 2 je nutno zadávat kód pro zamčení i pro odemčení. Módy 3 až 5 slouží k impulznímu odemykání - po zadání kódu se zámek odemkne na stanovenou dobu po té se automaticky zamkne. Módy 3 až 5 se od sebe liší pouze časovou prodlevou do automatického zamčení.
     Zamykání a odemykání:
Kód zadáváme pomocí číselné klávesnice s číslicemi 0 - 9. Pro potvrzení zadaného kódu a odemčení používáme # (křížek - v pravém dolním rohu klávesnice). Pro zamčení používáme * (hvězdičku - v levém dolním rohu). Při odemykání tedy zadáme kód a potvrdíme křížkem. Při zamykání v módu 2 zadáme kód a stiskneme hvězdičku. V ostatních módech stačí k zamčení pouhý stisk hvězdičky. V módech 3 - 5 se po vypršení času zámek automaticky zamkne, hvězdičkou ho však můžeme zamknout ještě dříve. Stisk klávesy je signalizován krátkým pípnutím. Zamčení je signalizováno pípnutím vyššího tónu a následně nižšího tónu, odemčení pípnutím nižšího a pak vyššího tónu. Při zadání špatného kódu se ozve 5 krátkých pípnutí. Při překročení maximální délky kódu (31 cifer) se ozvou 3 krátké pípnutí a další cifry jsou ignorovány. LED1 svítí, když je zamčeno, a LED2, když je odemčeno.
     Změna kódu:
Pokud jste ještě nenastavili kód, je prázdný (0 cifer). V tomto stavu lze zamykat a odemykat pouhým stiskem hvězdičky a křížku bez zadávání kódu. Abyste spustili proces změny kódu, podržte křížek stisknutý cca 2s (až do zaznění dlouhého pípnutí). Poté zadejte starý kód (nebo nic, pokud je nastaven prázdný kód) a potvrďte křížkem. Ozvou se 2 dlouhá pípnutí (označují 2. krok). Nyní zadejte nový kód (0 - 31 cifer). Potvrďte křížkem. Ozvou se 3 dlouhá pípnutí, signalizující poslední, tedy 3. krok změny kódu - opětovné zadání nového kódu (pro kontrolu, zda nedošlo k překlepu). Poté ještě jednou potvrďte křížkem. Ozve se famfára (4 tóny), nový kód je uložen a proces změny kódu je dokončen. Pokud chcete kódový zámek odemykat bez zadávání kódu, lze při změně kódu zadat prázdný kód (místo zadání stisknete rovnou křížek).
     Obnova zapomenutého kódu:
Pokud byste kód zapomněli a nemáte možnost procesor přeprogramovat, je zde možnost záchrany :). Vypněte obvod, propojte PB1 s PA4 a opět jej zapněte. Nyní je zámek v režimu obnovy. Dlouhým stiskem křížku vstupte do procesu změny kódu. V režimu obnovy je až do prvního úspěšného uložení nového kódu přeskočeno zadávání starého kódu, ozvou se rovnou dvě dlouhá pípnutí. Dvakrát zadáte nový kód a poté vždy potvrdíte. Nezapomeňte pak záchrannou propojku odstranit.
     Celý program ke stažení:
zdrojový kód v assembleru (ASM)
přeložený v HEX souboru (1174 Bajtů)

Případným zájemcům mohu naprogramovaný mikroprocesor poslat. Více info zde.


Schéma jednoduchého kódového zámku s Atmel AVR ATtiny24A / ATtiny24 / ATtiny24V.


Nastavení konfiguračních bitů.
V hexadecimálním tvaru Low Fuse: 62, High Fuse: DD, Extended Fuse: FF.


Jednoduchý kódový zámek během vývoje v kontaktním poli (písmena na klávesnici nejsou využita).





Velmi jednoduchý obvod kódového zámku s ATtiny24A.


Video - Test jednoduchého kódového zámku - módy 1 a 2.


Video - Nově přidané módy 3, 4, 5 (pulzní otevírání).



Přidáno: 8. 2. 2014
zpět na úvodní stránku