Schemat ideowy licznika czasu pracy pokazano na rysunku 1 Najistotniejszy jest w nim mikrokontroler ATmega48 odpowiedzialny za obsługę wyświetlacza, pamięci i odliczanie czasu. Jest on taktowany przebiegiem o częstotliwości 4 MHz stabilizowanej za pomocą rezonatora kwarcowego. Złącze J2 służy do zaprogramowania pamięci Flash, bitów zabezpieczających oraz zerowania licznika, o czym dalej. Rezystory R3...R6 uzupełniają wbudowanie w mikrokontroler rezystory podciągające.
Sterowanie wyświetlaczem LED odbywa się bez dodatkowych tranzystorów, ponieważ prąd segmentów jest niewielki - rzędu 3 mA. Jednocześnie, prąd płynący przez wyprowadzenie wspólne cyfry nie przekracza 27 mA, co jest akceptowalnym przez mikrokontrolery z rodziny AVR obciążeniem pojedynczego wyprowadzenia. Każda cyfra świeci z wypełnieniem ok. 25% z uwagi na sterowanie multipleksowe, lecz zastosowany w prototypie wyświetlacz jest bardzo czytelny przy takim zasilaniu.
Zasilanie dołącza się do zacisków złącza śrubowego J1. Przed zniszczeniem, wywołanym zamianą polaryzacji przewodów, chroni dioda D1. Kondensatory C1 i C2 znajdują się blisko stabilizatora US1, uniemożliwiając jego wzbudzenie. Dioda D2 oddziela kondensatory C3...C6 od stabilizatora.
Dzielnik złożony z rezystorów R1 i R2 wytwarza, w normalnych warunkach, napięcie zbliżone do 2,5 V. Dokładna wartość tego napięcia nie jest istotna, bowiem wchodzi ono na wejście odwracające komparatora, zawartego w strukturze ATmega48. Na wejście nieodwracające podaje się napięcie 1,1 V, pochodzące z wewnętrznego źródła referencyjnego.
Wynika z tego, że podczas pracy, wyjście komparatora znajduje się w stanie niskim. Teraz wyraźna staje się rola diody D2: po zaniku napięcia zasilającego, napięcie na wyjściu stabilizatora spada poniżej granicy przełączenia komparatora. Zbocze narastające, pojawiające się na jego wyjściu, wyzwala przerwanie rozpoczynające zapis odmierzonych wartości do pamięci EEPROM. Mikrokontroler działa wtedy dzięki energii zgromadzonej w kondensatorach C5 i C6.
Na czas zapisu wyłącza się wyświetlacz, aby nie przyśpieszał on rozładowywania. Po skończonym zapisie, wyświetlacz jest uruchamiany ponownie. Jeżeli był to tylko krótkotrwały zapad napięcia, wówczas układ powróci do normalnej pracy. Jeśli zaś napięcie zanikło całkowicie, kondensatory rozładują się i układ przestanie działać.
Konfigurowanie licznika
Tryb pracy wybierany jest za pomocą zworek ZW1...ZW3. Wykonano je jako pary punktów lutowniczych, które należy zewrzeć kroplą cyny. Przeznaczenie każdej ze zworek jest następujące:
- ZW1 - odmierzanie dni, maksymalnie 9999 dni.
- ZW2 - odmierzanie dni i godzin, maksymalnie 99 dni i 23 godziny.
- ZW3 - odmierzanie godzin i minut, maksymalnie 99 godzin i 59 minut.
Stan zworek sprawdzany jest wyłącznie w chwili uruchomienia układu - po to, aby np. zimny lut, który przerwie połączenie, nie zatrzymał odliczania. Nieprawidłowości (zwarta więcej niż jedna zworka lub brak zwarcia) sygnalizowany jest napisem "Err" - fotografia 2. Wówczas należy odłączyć zasilanie, dokonać poprawek i ponownie je włączyć.
Zerowanie zapamiętanego czasu odbywa się poprzez zwarcie dwóch wyprowadzeń złącza J2: MOSI i GND. Na płytce jest to zaznaczone jako "ZERO". Wyzerowanie może się odbyć jedynie w chwili włączenia zasilania, po to, aby późniejsze przypadkowe zwarcie na tym złączu nie skasowało ustawień. Aby dokonać resetu, należy nałożyć na te wyprowadzenia zworkę, wyłączyć zasilanie, po kilku sekundach włączyć je ponownie i zdjąć zworkę. Procedury resetu należy dokonać również w sytuacji zmiany trybu pracy.
Wykaz elementówRezystory: (SMD 0805) Kondensatory: (SMD 0805) Półprzewodniki: Inne: |
Montaż i uruchomienie
Układ licznika został zmontowany na dwustronnej płytce drukowanej o wymiarach 100 mm×20 mm, której schemat montażowy pokazano na rysunku 3. Rezonator kwarcowy Q1 należy wlutować na nieco dłuższych nóżkach, po to, aby jego metalowa obudowa nie dotykała powierzchni płytki oraz metalizowanych padów lutowniczych. Kondensatory C5 i C6 warto położyć na płytce, zostało przewidziane na to miejsce.
Przed zaprogramowaniem pamięci Flash mikrokontrolera, należy dokonać zmiany bitów zabezpieczających: trzeba przestawić źródło taktowania na zewnętrzny rezonator kwarcowy 4 MHz oraz wyłączyć podział częstotliwości zegara przez 8.
Prawidłowo zmontowany układ powita użytkownika zerem (bądź dwoma zerami) oraz migającą kropką. Kropka ta sygnalizuje, że układ działa poprawnie i odmierza czas. Oddziela ona wskazania dni od godzin lub godziny od minut. W przypadku zwarcia zworki ZW1, będzie migała po prawej stronie. Przekroczenie zakresu zostanie zasygnalizowane wyświetleniem kresek - fotografia 4. Układ przestaje wówczas liczyć, należy go wyzerować.
Kondensatory elektrolityczne, podtrzymujące działanie mikrokontrolera, wystarczają na ok. 0,6 s pracy, podczas, gdy zapis do pamięci trwa ok. 50 ms. Jest to duży zapas, zatem niewielka utrata pojemności wywołana starzeniem lub zmianą temperatury nie będzie tutaj dotkliwa.
Dokładność odmierzanego czasu jest zdeterminowana przez kwarc. Typowe rezonatory mają tolerancję ±30ppm i stabilność ±5 ppm/rok, co przekłada się na odchył, odpowiednio, ±15,5 min oraz ±2,5 min w skali roku.
Michał Kurzela, EP