PROSTY ZAMEK KODOWY CMOS
Pod koniec lat 80-tych, przymuszony potrzebą, „popełniłem” w 1 szt. działający, sprawdzony układ zamka kodowego na ogólnie „już” wtedy dostępnych układach cyfrowych CMOS, o gigantycznej możliwości kombinacji (10 do 10). Teraz odkopałem przypadkowo ten schemacik, stwierdziłem, że, nie chwaląc się, układ jest genialny w swej prostocie i elegancki, działa w sposób niekonwencjonalny, więc odkurzyłem go rysunkowo, „elementowo”, i przedstawiam na tym forum do oceny. Układ działa następująco:
Głównymi elementami kodowania i wyboru z klawiatury KLAW właściwych cyfr, są dwie popularne kostki CD4028 – US4, US1. Kostki ta wystawiają 1 na swoich 10 wyjściach (0 do 9) w zależności od wartości logicznej 4 bitowego słowa, podanego na wejścia A, B, C, D, o wagach odpowiednio 1, 2, 4, 8. Przy wartości wejściowej 0000, 1 pojawia się na wyjściu 0 - początkowym.
Gdy po włączeniu zasilania żaden z przycisków KLAW nie jest wciśnięty, na wejściach komparatora okienkowego (W1 i W2 – 2 x LMC7211) do niej podłączonych, ustala się napięcie Uz/2=9/2=4V5.
W tym stanie oba wyjścia komparatorów 7211 przyjmują stan 0. Nic się nie dzieje – na wyjściu 9 US4, pojawia się zaprogramowany na polu programowania POLE PR stan 1, a na pozostałych 0. Jeżeli teraz na KLAW zostanie wciśnięty przycisk inny niż S9, na komparator zostanie podane 0, co spowoduje pojawienie się 1 na W2 (pp3). Ponieważ wyjście to podłączone jest do wejścia licznika dwójkowego US3, licznik naliczy - „zapamięta”, 1-szy błędny impuls.
Rezystory R2, R3 oraz kondensatory C2 i C3 czynią razem dużą stała czasową dla wejść komparatora, likwidując w ten sposób skutki zjawiska drgania zestyków przycisków KLAW.
Przy wciśnięciu przycisku właściwego, czyli S9, komparator wygeneruje 1 na wyjściu W1, przesuwając licznik US2 na następną pozycję – 1 pojawi się na wyjściu 2 US1, przygotowując klawiaturę do wciśnięcia następnego, prawidłowego przycisku, czyli S2. Tak więc każde wciśnięcie kolejnego, właściwego przycisku, powoduje stosowne przesuwanie 1 na wyjściach US1, a tym samym na polu programującym. Z kolei każde wciśnięcie fałszywe, powoduje naliczanie błędów na liczniku US3.
Po 3 wciśnięciach fałszywych, 1 pojawia się na wyjściu C US3 (pp2), co zeruje licznik US2. oraz z lekkim (ok. 1s) opóźnieniem licznik błędów US3. Sygnał 1 z punktu pp2 można wykorzystać do uruchomienia alarmu i/lub blokady działania całości, ja jednak z tej możliwości nie skorzystałem.
Po wybraniu wszystkich 6 prawidłowych cyfr, na wyjściu 6 US1 pojawia się poziom 1, dzięki któremu, poprzez R1 zaczyna powoli ładować się kondensator C1. Przy poziomie ok. 4V5, następuje reset US3 i US2 i C1 zostaje szybko rozładowany (dioda D1) do poziomu pierwotnego. Stała czasowa t=R1C1 (ok. 5s) decyduje o czasie działania przekaźnika P1 (lub zamka).
Programowanie polega na zwarciu szyn komutacyjnych pola programującego z pomocą zworek ZD z wlutowanymi diodami. Wybór wartości kolejnej cyfry to włożenie (na kołki zworek) właściwej liczby zworek, na właściwe szyny, wg zasady; wartość cyfry, np: 7, powstaje przez zsumowania wag szyn wejściowych US4 – 1+2+4. Wykorzystując wszystkie 10 wyjść US1 (0 do 9) otrzymujemy możliwość programowania liczby 10-cio cyfrowej (10 miliardów - 1), a więc bardzo dużo. Jednak kosztem rozbudowy pola programowania – 80 kołków wtykowych. Można też zrobić tak jak ja onegdaj – polutowałem od strony druku kilkanaście diod, bez możliwości szybkiej zmiany zaprogramowanej liczby.
Całość w stanie czuwania pobiera zaledwie kilkadziesiąt μA przy napięciu 9V, pod warunkiem, że będą zastosowane komparatory jak w opisie – ten typ żre ok. 7 μA na sztukę – tyle co nic. Układ znakomicie nadaje się więc do długotrwałej pracy z lekko podładowywanego, niewielkiego akumulatorka.
Tak, czy owak, urządzonko, głównie ze względu na zawarty w nim sposób podejścia do problemu, wydaje mi się interesujące i może znajdzie się chętny do jego powielenia.
POZDRAWIAM.
golesz
Pod koniec lat 80-tych, przymuszony potrzebą, „popełniłem” w 1 szt. działający, sprawdzony układ zamka kodowego na ogólnie „już” wtedy dostępnych układach cyfrowych CMOS, o gigantycznej możliwości kombinacji (10 do 10). Teraz odkopałem przypadkowo ten schemacik, stwierdziłem, że, nie chwaląc się, układ jest genialny w swej prostocie i elegancki, działa w sposób niekonwencjonalny, więc odkurzyłem go rysunkowo, „elementowo”, i przedstawiam na tym forum do oceny. Układ działa następująco:
Głównymi elementami kodowania i wyboru z klawiatury KLAW właściwych cyfr, są dwie popularne kostki CD4028 – US4, US1. Kostki ta wystawiają 1 na swoich 10 wyjściach (0 do 9) w zależności od wartości logicznej 4 bitowego słowa, podanego na wejścia A, B, C, D, o wagach odpowiednio 1, 2, 4, 8. Przy wartości wejściowej 0000, 1 pojawia się na wyjściu 0 - początkowym.
Gdy po włączeniu zasilania żaden z przycisków KLAW nie jest wciśnięty, na wejściach komparatora okienkowego (W1 i W2 – 2 x LMC7211) do niej podłączonych, ustala się napięcie Uz/2=9/2=4V5.
W tym stanie oba wyjścia komparatorów 7211 przyjmują stan 0. Nic się nie dzieje – na wyjściu 9 US4, pojawia się zaprogramowany na polu programowania POLE PR stan 1, a na pozostałych 0. Jeżeli teraz na KLAW zostanie wciśnięty przycisk inny niż S9, na komparator zostanie podane 0, co spowoduje pojawienie się 1 na W2 (pp3). Ponieważ wyjście to podłączone jest do wejścia licznika dwójkowego US3, licznik naliczy - „zapamięta”, 1-szy błędny impuls.
Rezystory R2, R3 oraz kondensatory C2 i C3 czynią razem dużą stała czasową dla wejść komparatora, likwidując w ten sposób skutki zjawiska drgania zestyków przycisków KLAW.
Przy wciśnięciu przycisku właściwego, czyli S9, komparator wygeneruje 1 na wyjściu W1, przesuwając licznik US2 na następną pozycję – 1 pojawi się na wyjściu 2 US1, przygotowując klawiaturę do wciśnięcia następnego, prawidłowego przycisku, czyli S2. Tak więc każde wciśnięcie kolejnego, właściwego przycisku, powoduje stosowne przesuwanie 1 na wyjściach US1, a tym samym na polu programującym. Z kolei każde wciśnięcie fałszywe, powoduje naliczanie błędów na liczniku US3.
Po 3 wciśnięciach fałszywych, 1 pojawia się na wyjściu C US3 (pp2), co zeruje licznik US2. oraz z lekkim (ok. 1s) opóźnieniem licznik błędów US3. Sygnał 1 z punktu pp2 można wykorzystać do uruchomienia alarmu i/lub blokady działania całości, ja jednak z tej możliwości nie skorzystałem.
Po wybraniu wszystkich 6 prawidłowych cyfr, na wyjściu 6 US1 pojawia się poziom 1, dzięki któremu, poprzez R1 zaczyna powoli ładować się kondensator C1. Przy poziomie ok. 4V5, następuje reset US3 i US2 i C1 zostaje szybko rozładowany (dioda D1) do poziomu pierwotnego. Stała czasowa t=R1C1 (ok. 5s) decyduje o czasie działania przekaźnika P1 (lub zamka).
Programowanie polega na zwarciu szyn komutacyjnych pola programującego z pomocą zworek ZD z wlutowanymi diodami. Wybór wartości kolejnej cyfry to włożenie (na kołki zworek) właściwej liczby zworek, na właściwe szyny, wg zasady; wartość cyfry, np: 7, powstaje przez zsumowania wag szyn wejściowych US4 – 1+2+4. Wykorzystując wszystkie 10 wyjść US1 (0 do 9) otrzymujemy możliwość programowania liczby 10-cio cyfrowej (10 miliardów - 1), a więc bardzo dużo. Jednak kosztem rozbudowy pola programowania – 80 kołków wtykowych. Można też zrobić tak jak ja onegdaj – polutowałem od strony druku kilkanaście diod, bez możliwości szybkiej zmiany zaprogramowanej liczby.
Całość w stanie czuwania pobiera zaledwie kilkadziesiąt μA przy napięciu 9V, pod warunkiem, że będą zastosowane komparatory jak w opisie – ten typ żre ok. 7 μA na sztukę – tyle co nic. Układ znakomicie nadaje się więc do długotrwałej pracy z lekko podładowywanego, niewielkiego akumulatorka.
Tak, czy owak, urządzonko, głównie ze względu na zawarty w nim sposób podejścia do problemu, wydaje mi się interesujące i może znajdzie się chętny do jego powielenia.
POZDRAWIAM.
golesz
Fajne? Ranking DIY