Ogromny zegar LCD bez procesora

Ogromny zegar LCD bez procesora

Czasami robimy jakieś projekty tylko po to, by się przy tym bawić i nauczyć czegoś ciekawego. Tak właśnie powstał zegar z wielkim wyświetlaczem LCD. Choć nie jest tańszy od gotowego rozwiązania, to jego projektowanie dało wieje nowego doświadczenia, a finalna konstrukcja doskonale się prezentuje.

Podstawowe parametry:
  • konstrukcja wykonana bez zastosowania mikrokontrolera (układu programowanego)
  • podczas pracy pobiera prąd średni ok. 800 μA,
  • zastosowano wyświetlacz typu reflective, który nie wymaga podświetlania,
  • cyfry wyświetlacza są bardzo duże i są czytelne nawet przy słabym oświetleniu w środku nocy.

Gotowy zegar został pokazany na fotografii tytułowej, dla porównania na fotografii 1 widoczny jest też prototyp zmontowany na pięciu płytkach stykowych, zasilanych z power banka. Projekt rozpoczął się od promocji na cyfrowe wyświetlacze LCD w jednym z polskich sklepów z elementami elektronicznymi. Udało mi się kupić 6-cyfrowy wyświetlacz DE 337-RU-30 firmy Display Elektronik. Wyświetlacz na konstrukcję „tafli szkła” z metalowymi wyprowadzeniami połączonymi z każdym aktywnym segmentem na matrycy. Nie zawiera żadnego wbudowanego kontrolera, na szczęście samodzielne wykonanie odpowiedniego układu sterującego nie jest skomplikowane.

Fotografia 1. Prototyp urządzenia zmontowany na płytkach stykowych

Budowa i działanie

Schemat zegara został pokazany na rysunku 1. Każdy segment wyświetlacza, a jest ich 49, jest wyprowadzony na osobny pin. Ponadto, wyprowadzone są piny, sterujące elektrodą wspólną, nazywaną backplane, która stanowi podłoże dla wszystkich segmentów.

Rysunek 1. Schemat zegara (w bloku XOR Matrix znajdują się tylko bramki XOR, pominięte dla czytelności)

Sterowanie wyświetlaczem LCD różni się od wyświetlaczy LED. Na elektrodę wspólną trzeba dostarczyć sygnał prostokątny o częstotliwości kilkudziesięciu herców, wypełnieniu 50% i amplitudzie 5 V. Aby zaczernić wybrany segment, trzeba dostarczyć do odpowiadającego mu pinu, taki sam sygnał jak do backplane, lecz zanegowany. Aby segment był niewidoczny, należy mu dostarczyć taki sam sygnał jak do backplane, bez negacji. Natomiast poważnym błędem jest sterowanie wyświetlaczy LCD napięciem stałym i prowadzi do szybkiego uszkodzenia segmentów.

Bufor wyświetlacza

Najprostszą metodą dostarczenia odpowiednich sygnałów do wyświetlacza LCD jest zastosowanie bramek XOR typu 74HC86. Uproszczony schemat takiego bufora został pokazany na rysunku 2. Każda bramka XOR ma dwa wejścia. Oznaczmy je A i B. Wszystkie wejścia B połączone są ze sobą i sterowane sygnałem prostokątnym o częstotliwości 16 Hz, pochodzącym z generatora. Ten sam sygnał doprowadzony jest do elektrody wspólnej backplane. Wejścia A połączone są do pinów sterujących segmentami, wychodzącymi ze sterowników 4511. Jeżeli do wejścia A dostarczymy stan niski, wówczas bramka XOR przepuszcza sygnał sterujący bez odwracania.

Rysunek 2. Uproszczony schemat bufora wyświetlacza LCD zbudowanego z bramek XOR

Powoduje to, że segment, podłączony do wyjścia bramki, jest niewidoczny. Jeżeli natomiast do wejścia A dostarczymy stan wysoki, to bramka XOR odwraca sygnał dostarczony do wejścia B. Powoduje to zaczernienie segmentu. Musimy zastosować po jednej bramce XOR na każdy segment. Z tego powodu w układzie jest aż 12 układów 74HC86, co daje razem 48 bramek.

Dekodery BCD

W zegarze zastosowano dekodery kodu BCD typu 4511 – po jednym na każdą cyfrę. Działanie tych scalaków jest niesamowicie proste. Na wejściu są cztery linie, odbierające sygnały z liczników w standardzie BCD, czyli kodzie binarnym dla cyfr od 0 do 9. Dekodery przekształcają tę informację na siedem sygnałów, które doprowadzone są do bramek XOR, sterujących segmentami wyświetlacza. Oprócz tego, mają także kilka innych wejść sterujących, jednak nie są one używane w tej aplikacji.

Liczniki

W układzie zastosowano sześć liczników typu 4029, po jednym na każdą cyfrę. Liczą od 0 do 9 i reagują na zbocze rosnące sygnału zegarowego doprowadzonego do wejścia CLK. Licznik 4029 ma wyjście przeniesienia Cout, które umożliwia łączenie wielu liczników i łączy się je z wejściem CLK następnego licznika. Działanie wyjścia przeniesienia Cout jest bardzo proste – kiedy licznik na swoim wyjściu ma cyfry od 0 do 8, wówczas to wyjście jest w stanie wysokim. W momencie ustawienia dziewiątki, stan tego wyjścia zmienia się na niski. W momencie przepełnienia się licznika i przełączenia z 9 na 0, wówczas wyjście Cout zmienia stan z niskiego na wysoki, co powoduje inkrementację kolejnego licznika.

Niestety liczba sekund i minut nie może przekroczyć 60, a liczba godzin 24. Z tego powodu musimy sami zadbać o wykrywanie stanów, kiedy ma nastąpić przeniesienie oraz zerowanie licznika.

Zacznijmy od zerowania. Licznik minut i sekund należy zresetować, kiedy osiągną one wartość 60. Wejście resetujące licznik działa na stan wysoki, a liczba 6 zapisana binarnie to 0110. Zatem wystarczy zastosować bramkę AND do wykrywania czy dwa środkowe bity mają wartość 1. Na schemacie są to układu U83A, U83B i U83C typu 74HC08. Licznik dziesiątek sekund i dziesiątek minut liczy od 0 do 6, jednak cyfra 6 występuje tak krótko, że nie da się jej zauważyć. Czas występowania tego stanu zależy tylko od czasu reakcji licznika i bramki AND.

Trochę większy problem jest z sygnałem przeniesienia. Nie możemy zastosować tego samego sygnału, który resetuje licznik w momencie wystąpienia szóstki, ponieważ mogłoby się tak zdarzyć, że licznik dziesiątek sekund zresetuje się wcześniej, nim licznik jedności minut zdąży zareagować na ten sygnał.

Aby uzyskać prawidłowy sygnał przeniesienia, musimy zbudować układ, który wykryje kombinację cyfr 59, ustawi wtedy stan na 0, a następnie po przełączeniu licznika na 60 (lub jego zresetowaniu) zmieni stan na 1, co będzie sygnałem dla kolejnego licznika w szeregu, by wykonać inkrementację. W ten sposób sygnał przeniesienia będzie wystarczająco długi. Rozwiązaniem tego problemu są układy U84A i U84B, czterowejściowe bramki NAND typu 74HC20, które wykrywają wystąpienie liczby 59 na licznikach.

Generator zegarowy

Doszliśmy do układu, który jest na początku całego cyklu przetwarzania i napędza on licznik jedności sekund, a także sygnał sterujący backplane oraz sygnały ustawiania czasu, o których będzie za chwilę.

Zastosowano generator 4521 – układ umożliwiający dołączenie rezonatora kwarcowego o częstotliwości 4,194304 MHz, wyposażony w szereg przerzutników dzielących tę częstotliwość przez dwa. Układ ma kilka wyjść, które umożliwiają otrzymanie sygnałów prostokątnych o wypełnieniu 50% o częstotliwości od 16 Hz do 0,25 Hz.

W zegarze wykorzystano trzy wyjścia tego układu:

  • 1 Hz – jest to sygnał idealny do taktowania licznika jedności sekund U61,
  • 16 Hz – ten sygnał taktuje elektrodę backplane wyświetlacza oraz 48 bramek XOR,
  • 4 Hz – ten sygnał zastosowano w układzie umożliwiającym ustawienie aktualnej godziny.

Ustawianie czasu

Liczniki jednostek minut i godzin taktowane są odpowiednio sygnałami przeniesienia z liczników dziesiątek sekund i dziesiątek minut. Aby wykorzystać sygnał 4 Hz musimy „podmienić” sygnał sterujący tymi licznikami. Do tego celu nadaje się multiplekser 4053, który zawiera trzy przełączniki dwupozycyjne.

Ustawieniem multiplekserów sterują przyciski K1, K2 i K3. Kiedy nie są wciśnięte, wówczas na liniach sterujących HourSet, MinSet i ZeroSec jest stan niski. Naciśnięcie przycisku powoduje ustawienie stanu wysokiego, a to z kolei spowoduje przełączenie multipleksera. W rezultacie do liczników jedności minut i godzin, zamiast sygnałów przeniesienia, zostanie dostarczony sygnał o częstotliwości 4 Hz. Przyciski należy naciskać tak długo, aż na wyświetlaczu pojawi się aktualna godzina. Elementy R12, C91, R14, C92 mają za zadanie odfiltrowanie drgań przycisków, które mogłyby sprawić, że w momencie naciskania i puszczania, licznik przełącza się wielokrotnie. Przycisk K3 resetuje licznik sekund. Można go użyć do precyzyjnego ustawienia zagra.

Power on reset

Ostatnim układem wartym omówienia jest blok „power on reset”. Po włączeniu zasilania, liczniki 4029 zaczynają pracę od losowej liczby. To może spowodować wyświetlanie cyfr większych, niż zegar wyświetlać powinien, np. godzinę 49:71:88, co mogłoby zostać odebrane przez użytkownika jako wadliwe działanie. Rozwiązaniem tego problemu jest dodanie układu czasowego, który przez krótką chwilę po włączeniu zasilania będzie podawał sygnał resetujący liczniki. W tym celu zastosowano rezystor R90 oraz kondensator C90. Krótko po włączeniu zasilania, kondensator jest rozładowany, co daje stan 0. Następnie kondensator jest ładowany poprzez rezystor R90 i po chwili układ czasowy daje stan 1 i tak pozostaje aż do wyłączenia zasilania.

Liczniki 4029 resetowane są stanem 1, a żeby pracowały normalnie, trzeba do nich doprowadzić 0. Z tego powodu zastosowano pojedynczą bramkę NAND typu 74HC00 z połączonymi wejściami, co w rezultacie daje bramkę NOT i zapewnia właściwy sygnał resetujący. Jest on łączony z kilkoma innymi sygnałami resetującymi, generowanymi przez układy wykrywające liczby 60 na licznikach sekund i minut oraz 24 na liczniku godzin.

Montaż i uruchomienie

Wybierając wyświetlacz dla zegara należy koniecznie zwrócić uwagę na typ polaryzatora, możliwe są trzy opcje:

  • Reflective – tylna ścianka wyświetlacza pokryta jest srebrną folią. Nie wymaga podświetlania, aby treść była widoczna wystarczy światło zewnętrzne;
  • Transmissive – wyświetlacz jest niemal przezroczysty. Trzeba umieścić za nim białe tło lub panel podświetlający;
  • Transflective – tylna ścianka wyświetlacza zawiera półprzepuszczalną srebrną folię. Umożliwia zastosowanie podświetlania oraz dodatkowo korzysta ze światła z innych źródeł. Wadą jest słabszy kontrast.

Wyświetlacz zastosowany w zegarze jest typu reflective. Dzięki temu, że cyfry wyświetlacza są bardzo duże to są czytelne nawet przy słabym oświetleniu w środku nocy.

Rysunek 3. Schemat płytki PCB

Schemat płytki PCB został pokazany na rysunku 3. Wszystkie elementy, za wyjątkiem gniazd baterii i samego wyświetlacza, są w technologii SMD. Wszystkich, którzy jeszcze nie opanowali lutowania elementów SMD gorąco zachęcam, by się tego nauczyć, ponieważ takie elementy, wbrew opinii początkujących, lutuje się łatwiej i szybciej niż elementy przewlekane. Na płytce zastosowano układy scalone w obudowach SO14 lub SO16, które są dość duże, a rezystory i kondensatory w obudowach SMD1206 lutuje się równie łatwo.

Wyświetlacz ma 80 pinów przewlekanych. Ponieważ może wystąpić potrzeba jego wymontowania, zalecam montaż w podstawkach. W tym celu rozcinamy dwie podstawki DIL40 i lutujemy je po przeciwnej stronie niż elementy. Zamontowana płytka została pokazana na fotografii 2.

Fotografia 2. Wygląd zmontowanej płytki zegara zamontowanej na wyświetlaczu

Aby ustawić czas należy nacisnąć i przytrzymać przyciski HOUR i MIN. Przycisk SEC służy do resetowania licznika sekund, aby precyzyjnie ustawić czas. Zegar podczas pracy pobiera prąd średni ok. 800 μA. Wyświetlacz pobiera tylko 300 μA, natomiast najbardziej prądożernym układem jest generator zegarowy – „pożera” 500 μA. Pozostałe układy scalone, ponieważ są wykonane w technologii CMOS i pracują z bardzo małą częstotliwością, pobierają naprawdę mały prąd.

Gdyby udało się zastąpić układ 4521 jakimś innym, mniej prądożernym generatorem sygnałów zegarowych to można by zdecydowanie wydłużyć czas pracy na baterii. Szacuje się, że cztery alkaliczne paluszki AA powinny wystarczyć na pół roku pracy przy obecnym generatorze. Gdyby któryś z czytelników miał pomysł czym zastąpić układ 4521, zachowując wysoką precyzję to proszę o kontakt.

Dominik Bieczyński
leonow32@gmail.com

Wykaz elementów:
Rezystory: (SMD1206)
  • R11, R13: 1 kΩ
  • R70: 1 MΩ
  • R12, R14, R15, R90: 100 kΩ
Kondensatory:
  • C11, C12, C21, C22, C31, C32, C41, C42, C51, C52, C61, C62, C80, C83, C81, C84, C82, C85: 100 nF
  • C70, C71: 22 pF
  • C72: 100 nF
  • C90: 100 nF
  • C91, C92: 1 nF
Półprzewodniki: (SMD)
  • U12, U22, U32, U42, U52, U62: 4511
  • U11, U21, U31, U41, U51, U61: 4029
  • U13, U14, U23, U24, U33, U34, U43, U44, U53, U54, U63, U64: 74HC32
  • U70: 4521
  • U80, U81: 74HC32
  • U82: 4053
  • U83: 74HC08
  • U84: 74HC20
  • U85: 74HC00
Pozostałe:
  • X70: rezonator kwarcowy 4,194304 MHz
  • LCD1: 6-cyfrowy wyświetlacz DE 337-RU-30 firmy Display Elektronik
  • 2× koszyk na baterie 2×R6
  • 3× mikroswitch
  • 2× podstawka DIL40
Artykuł ukazał się w
Elektronika Praktyczna
lipiec 2022
DO POBRANIA
Materiały dodatkowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich grudzień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów