- Wymagane składniki
- Schemat obwodu i wyjaśnienie
- Projekt i wykonanie PCB dla zegara cyfrowego
- Zamawianie PCB za pomocą PCBGoGo
- Montaż PCB
- Testowanie zegara cyfrowego
Każdy zegar cyfrowy ma w sobie kryształ, który śledzi czas. Ten kryształ jest obecny nie tylko w zegarze, ale także we wszystkich komputerowych systemach czasu rzeczywistego. Ten kryształ generuje impulsy zegarowe, które są potrzebne do obliczeń czasowych. Chociaż istnieją inne sposoby uzyskania impulsów zegara dla większej dokładności i częstotliwości, ale najbardziej preferowanym sposobem jest użycie kryształu do śledzenia czasu. Tutaj będziemy DS3231 RTC IC, aby zbudować cyfrowy zegar ścienny oparty na Atmega16. DS3231 RTC ma wewnątrz bardzo dokładny kryształ, więc nie jest potrzebny żaden zewnętrzny oscylator kwarcowy.
W tym projekcie zegara cyfrowego do wyświetlania godziny i daty zastosowano dziesięć wspólnych 7-segmentowych wyświetlaczy anodowych o przekątnej 0,8 cala. Tutaj siedem segmentów wyświetla godzinę, minuty, datę, miesiąc i rok. Nasz projekt PCB ma również opcje wyświetlania sekund i temperatury, które można wyświetlić, dodając więcej wyświetlaczy.
Wymagane składniki
- Mikrokontroler ATmega16 AVR
- DS3231 RTC IC
- Wspólna anoda 0,8-calowy siedmiosegmentowy wyświetlacz (większy niż typowy wyświetlacz (0,56 cala)
- Naciśnij przycisk
- Komórka guzikowa 3v
- 7805 regulator napięcia
- Kondensator 1000uf
- Buzzer (opcjonalnie)
- Tranzystory BC547 i BC557
- Kondensator 10uf
- Rezystor 100 Ohm
- Rezystor 1k
- Rezystor 10k
- Tablica PCB
- Przewody połączeniowe
- Burgstips
- Zasilacz
Użytkownik może również użyć Atmega32, przed wygenerowaniem szesnastkowego należy go skonfigurować w kompilatorze.
Schemat obwodu i wyjaśnienie
Istnieją dwie części tego obwodu cyfrowego zegara ściennego, jedna to część wyświetlająca, która ma 5 par 7-segmentów na pięciu różnych płytkach drukowanych, a druga jest kontrolowana Część jednostki, która jest odpowiedzialna za pobieranie czasu z układu RTC i wysyłanie tych danych i czasu do Wyświetlacz 7-segmentowy. Ponieważ wykorzystaliśmy 10 wyświetlaczy siedmiosegmentowych, nie możemy podłączyć każdego wyświetlacza do osobnego portu IO. Więc tutaj technika multipleksowania jest używana do łączenia wielu siedmiu segmentów przy użyciu mniejszej liczby pinów mikrokontrolera.
Piny LED a, b, c, d, e, f, g, h siedmiosegmentowego wyświetlacza są podłączone do PORTB równolegle atmega16. Tutaj użyliśmy 10 siedmiosegmentowych wyświetlaczy, więc potrzebujemy 10 pinów sterujących, które są podłączone do PORTD, PORTA i PORTC.
RTC DS3231 z wewnętrznym kryształem jest podłączony do pinów SDA i SCL PORTC, ponieważ ten układ działa na komunikacji I2C. Metoda łączenia tego układu jest taka sama jak w DS1307. Użyliśmy DS1307 z Arduino, Raspberry Pi i 8051 MCU. Ten sam kod może być użyty zarówno dla DS3231, jak i DS1307.
Dwa rezystory podciągające 10k są podłączone do linii SDA i SCL. Bateria pastylkowa 3 V służy do zasilania układu RTC w celu śledzenia czasu, nawet gdy główne zasilanie jest wyłączone. Za każdym razem, gdy zasilanie powróci, czas zacznie wyświetlać się na wyświetlaczu siedmiosegmentowym. Teraz mamy kilka przycisków do ustawiania czasu na PORCIE A, cały proces jest wyjaśniony w wideo podanym na końcu. Regulator napięcia 5 V służy do konwersji napięcia wejściowego na 5 V. Wszystkie połączenia pokazano na poniższym schemacie połączeń:
W przypadku jednej płytki wyświetlacza zastosowano dwa wyświetlacze siedmiosegmentowe i 2 diody LED. Mamy tutaj pięć różnych tablic wyświetlających czas w godzinach i minutach (GG-MM) oraz datę w formacie DD-MM-RR.
Projekt i wykonanie PCB dla zegara cyfrowego
W tym projekcie zegara ściennego opartego na Atmega16 zaprojektowaliśmy dwie płytki PCB. Jedna dotyczy jednostki sterującej, która służy do sterowania wszystkimi operacjami projektu, a druga część służy do wyświetlania czasu i daty na wyświetlaczach siedmiu segmentów. Część wyświetlacza zawiera pięć par siedmiosegmentowego wyświetlacza 0,8 cala. Więc składając 5 sztuk, mamy kompletny zegar cyfrowy. Aby multipleksować 7-segmentowe wyświetlacze, linia danych 5 płytek drukowanych będzie podłączona do tego samego portu jednostki sterującej, a linia sterująca jest podłączona do innego styku jednostki sterującej.
Poniżej znajdują się widoki górny i dolny układów PCB jednej tablicy wyświetlacza, która składa się z dwóch siedmiosegmentowych wyświetlaczy:
Poniżej znajdują się widoki z góry i z dołu płytek drukowanych jednostki sterującej
Tutaj załączamy plik Gerber dla obu płyt:
- Plik Gerber dla jednostki sterującej opartej na Atmega16
- Plik Gerber dla tablicy siedmiosegmentowej
Zamawianie PCB za pomocą PCBGoGo
Istnieje wiele usług produkcji PCB dostępnych online, ale ponieważ wcześniej korzystałem z PCBGoGo w jednym z moich innych projektów, okazało się, że jest to tanie i bezproblemowe w porównaniu z innymi dostawcami.
Oto kroki, aby zamówić PCB w PCBGoGo:
Krok 1: Wejdź na www.pcbgogo.com, zarejestruj się, jeśli to Twój pierwszy raz. Następnie w zakładce PCB Prototyp wprowadź wymiary swojej płytki PCB, liczbę warstw i liczbę potrzebnych PCB.
Krok 2: Kontynuuj, klikając przycisk Cytuj teraz . Zostaniesz przeniesiony na stronę, na której możesz ustawić kilka dodatkowych parametrów, jeśli to konieczne, takich jak zastosowany materiał, rozstaw ścieżek itp. Ale głównie wartości domyślne będą działać dobrze. Jedyne, co musimy tutaj wziąć pod uwagę, to cena i czas. Jak widać, czas budowy wynosi tylko 2-3 dni i kosztuje tylko 5 USD dla naszego PSB. Następnie możesz wybrać preferowaną metodę wysyłki w oparciu o swoje wymagania.
Krok 3: Ostatnim krokiem jest załadowanie pliku Gerber i kontynuacja płatności. Aby upewnić się, że proces przebiega bezproblemowo, PCBGOGO sprawdza, czy Twój plik Gerber jest ważny przed przystąpieniem do płatności. W ten sposób możesz mieć pewność, że Twoja płytka drukowana jest przyjazna dla produkcji i dotrze do Ciebie zgodnie z zaangażowaniem.
Teraz PCBGoGo zajmie trochę czasu około 10 minut do 1 godziny, aby przejrzeć twój plik Gerber. Po zakończeniu przeglądu możesz przystąpić do płatności.
Montaż PCB
Po zamówieniu płytki dotarła do mnie po kilku dniach, choć kurier w ładnie oznaczonym, dobrze zapakowanym pudełku i jak zawsze jakość PCB była niesamowita. Udostępniam kilka zdjęć poniższych tablic do oceny.
Włączyłem lutownicę i przystąpiłem do montażu płytki. Ponieważ Footprinty, podkładki, przelotki i sitodruk są idealnie dopasowane do kształtu i rozmiaru, nie miałem problemu z montażem płytki. Deska była gotowa już po 10 minutach od rozpakowania pudełka.
Kilka zdjęć płytki po wlutowaniu pokazano poniżej.
Testowanie zegara cyfrowego
Kompletny kod znajduje się na końcu tego samouczka, wystarczy podłączyć płytki drukowane, jak pokazano na schemacie obwodu, i przesłać kod do Atmega16. Zobaczysz czas i datę pojawiające się na dziesięciu wyświetlaczach Siedmiu segmentów.
Godzinę i datę można ustawić za pomocą czterech przycisków na jednostce sterującej, jak pokazano na poniższym filmie.