Schody.  Grupa wejściowa.  Przybory.  Drzwi.  Zamki  Projekt

Schody. Grupa wejściowa. Przybory. Drzwi. Zamki Projekt

» Chcę sam złożyć zegarek elektroniczny. Zegar LED wykonany samodzielnie. Projekt, części i ich ewentualna wymiana

Chcę sam złożyć zegarek elektroniczny. Zegar LED wykonany samodzielnie. Projekt, części i ich ewentualna wymiana

Dla tych, którzy mają choć odrobinę wiedzy na temat mikrokontrolerów, a jednocześnie chcą stworzyć proste i przydatne urządzenie do domu, nie ma nic lepszego niż montaż ze kierunkowskazami LED. Taka rzecz może ozdobić Twój pokój, lub może posłużyć jako wyjątkowy, ręcznie wykonany prezent, dzięki któremu nabierze dodatkowej wartości. Układ działa jak zegar i jak termometr - przełączanie trybów odbywa się za pomocą przycisku lub automatycznie.

Schemat elektryczny domowego zegara z termometrem

Mikrokontroler PIC18F25K22 zajmuje się przetwarzaniem i synchronizacją danych oraz udostępnianiem ULN2803A Pozostaje tylko skoordynować jego wyjścia ze wskaźnikiem LED. Mały chip DS1302 działa jako timer precyzyjnych sygnałów sekundowych, jego częstotliwość jest stabilizowana standardowym rezonatorem kwarcowym 32768 Hz. To nieco komplikuje projekt, ale nie będziesz musiał ciągle dostosowywać i dostosowywać czasu, co nieuchronnie będzie opóźnione lub przyspieszone, jeśli poradzisz sobie z losowym, niestrojonym rezonatorem kwarcowym o częstotliwości kilku MHz. Taki zegarek to raczej prosta zabawka niż wysokiej jakości, dokładny zegarek.

W razie potrzeby czujniki temperatury można umieścić z dala od jednostki głównej - są z nią połączone kablem trójżyłowym. W naszym przypadku jeden czujnik temperatury jest zamontowany w bloku, a drugi na zewnątrz, na kablu o długości około 50 cm. Kiedy testowaliśmy kabel o długości 5 m, również działał idealnie.

Wyświetlacz zegara składa się z czterech dużych cyfrowych wskaźników LED. Pierwotnie były to wspólna katoda, ale w ostatecznej wersji zmieniono je na wspólną anodę. Możesz zainstalować dowolne inne, a następnie po prostu wybrać rezystory ograniczające prąd R1-R7 w zależności od wymaganej jasności. Można by go umieścić na wspólnej płytce z częścią elektroniczną zegarka, jednak jest to o wiele bardziej uniwersalne – nagle zapragniemy umieścić bardzo duży wskaźnik LED, aby był widoczny z dużej odległości. Przykład takiego projektu zegara ulicznego znajduje się tutaj.

Sama elektronika zaczyna się od 5 V, ale aby diody LED świeciły jasno, konieczne jest użycie napięcia 12 V. Z sieci zasilanie dostarczane jest poprzez adapter transformatora obniżającego napięcie do stabilizatora 7805 , który wytwarza napięcie dokładnie 5 V. Zwróć uwagę na małą zieloną cylindryczną baterię - służy ona jako zapasowe źródło zasilania w przypadku utraty sieci 220 V. Nie jest konieczne pobieranie jej na 5 V - lit 3,6-. akumulator jonowy lub Ni-MH ma wystarczające napięcie.

Do obudowy można użyć różnych materiałów - drewna, plastiku, metalu lub zintegrować całą konstrukcję domowego zegarka z gotowym zegarkiem przemysłowym, na przykład z multimetru, tunera, odbiornika radiowego i tak dalej. Zrobiliśmy go z pleksi, ponieważ jest łatwa w obróbce i pozwala zajrzeć do wnętrza tak, aby każdy mógł zobaczyć - ten zegarek został zmontowany własnymi rękami. I co najważniejsze, był dostępny :)

Tutaj znajdziesz wszystkie niezbędne szczegóły proponowanego projektu domowego zegara cyfrowego, w tym schemat obwodu, układ PCB, oprogramowanie układowe PIC i

Jak sama nazwa wskazuje, głównym zadaniem tego urządzenia jest sprawdzenie aktualnej godziny i daty. Ale ma wiele innych przydatnych funkcji. Pomysł na jego powstanie pojawił się po tym jak natknąłem się na na wpół rozbity zegarek ze stosunkowo dużą (jak na nadgarstek) metalową kopertą. Pomyślałam, że mogłabym wstawić tam własnoręcznie wykonany zegar, którego możliwości ogranicza jedynie moja wyobraźnia i umiejętności. W rezultacie powstało urządzenie posiadające następujące funkcje:

1. Zegar - kalendarz:

    Liczenie i wyświetlanie godzin, minut, sekund, dnia tygodnia, daty, miesiąca, roku.

    Dostępność automatycznej regulacji aktualnego czasu, która odbywa się co godzinę (maksymalne wartości +/-9999 jednostek, 1 jednostka = 3,90625 ms.)

    Obliczanie dnia tygodnia na podstawie daty (dla bieżącego stulecia)

    Automatyczne przejście między czasem letnim i zimowym (można wyłączyć)

  • Uwzględnia się lata przestępne

2. Dwa niezależne budziki (po uruchomieniu rozbrzmiewa melodia)
3. Timer z przyrostem co 1 sekundę. (Maksymalny czas zliczania 99h 59m 59s)
4. Stoper dwukanałowy z rozdzielczością zliczania 0,01 sek. (maksymalny czas zliczania 99h 59m 59s)
5. Stoper z rozdzielczością zliczania 1 sekundy. (maksymalny czas liczenia 99 dni)
6. Termometr w zakresie od -5°C. do 55°C (ograniczone zakresem temperatur normalnej pracy urządzenia) w krokach co 0,1°C.
7. Czytnik i emulator kluczy elektronicznych - tabletów typu DS1990 wykorzystujących protokół Dallas 1-Wire (pamięć na 50 sztuk, w których znajduje się już kilka uniwersalnych „kluczy terenowych”) z możliwością podglądu kodu klucza bajt po bajcie .
8. Pilot na podczerwień (realizowana jest tylko komenda „Zrób zdjęcie”) do aparatów cyfrowych „Pentax”, „Nikon”, „Canon”
9. Latarka LED
10. 7 melodii
11. Sygnał dźwiękowy na początku każdej godziny (można wyłączyć)
12. Dźwiękowe potwierdzenie naciśnięcia przycisków (można wyłączyć)
13. Monitorowanie napięcia akumulatora z funkcją kalibracji
14. Regulacja jasności wskaźnika cyfrowego

Może taka funkcjonalność jest zbędna, ale lubię rzeczy uniwersalne i plus moralną satysfakcję, że ten zegarek zostanie wykonany własnoręcznie.

Schemat ideowy zegara

Urządzenie zbudowane jest na mikrokontrolerze ATmega168PA-AU. Zegar tyka według timera T2, pracującego w trybie asynchronicznym z zegarem kwarcowym o częstotliwości 32768 Hz. Mikrokontroler prawie cały czas znajduje się w stanie uśpienia (kontrolka zgaszona), wybudza się co sekundę, aby dodać tę właśnie sekundę do aktualnego czasu i ponownie zasypia. W trybie aktywnym MK jest taktowany z wewnętrznego oscylatora RC z częstotliwością 8 MHz, ale wewnętrzny preskaler dzieli go przez 2, w wyniku czego rdzeń jest taktowany z częstotliwością 4 MHz. Do wskazań służą cztery jednocyfrowe cyfrowe wskaźniki siedmiosegmentowe LED ze wspólną anodą i kropką dziesiętną. Istnieje również 7 diod LED stanu, których przeznaczenie jest następujące:
D1- Znak wartości ujemnej (minus)
D2- Znak działającego stopera (miga)
D3- Znak pierwszego włączenia budzika
D4- Znak włączenia drugiego alarmu
D5- Znak sygnału dźwiękowego na początku każdej godziny
D6- Znak działającego timera (miga)
D7- Wskaźnik niskiego napięcia akumulatora

R1-R8 - rezystory ograniczające prąd segmentów wskaźników cyfrowych HG1-HG4 i diod LED D1-D7. R12,R13 – dzielnik kontroli napięcia akumulatora. Ponieważ napięcie zasilania zegara wynosi 3 V, a biała dioda LED D9 przy znamionowym poborze prądu potrzebuje około 3,4-3,8 V, nie świeci ona pełną mocą (ale wystarczy, aby uniknąć potknięcia się w ciemności) i dlatego jest podłączona bez prądu -rezystor ograniczający. Elementy R14, Q1, R10 przeznaczone są do sterowania diodą podczerwieni D8 (implementacja zdalnego sterowania do aparatów cyfrowych). R19, ​​R20, R21 służą do parowania podczas komunikacji z urządzeniami posiadającymi interfejs 1-Wire. Sterowanie odbywa się za pomocą trzech przycisków, które umownie nazwałem: MODE (tryb), UP (w górę), W DÓŁ (w dół). Pierwszy z nich przeznaczony jest także do wybudzania MK zewnętrznym przerwaniem (w tym przypadku włącza się sygnalizacja), dlatego jest podłączany osobno do wejścia PD3. Naciśnięcie pozostałych przycisków ustala się za pomocą przetwornika ADC i rezystorów R16, R18. Jeśli przyciski nie zostaną naciśnięte w ciągu 16 sekund, MK przejdzie w stan uśpienia, a kontrolka zgaśnie. W trybie „Pilot do kamer” odstęp ten wynosi 32 sekundy, a przy włączonej latarce - 1 minutę. MK można także uśpić ręcznie za pomocą przycisków sterujących. Gdy stoper pracuje z rozdzielczością zliczania 0,01 sek. Urządzenie nie przechodzi w tryb uśpienia.

PCB

Urządzenie zmontowano na dwustronnej płytce drukowanej o okrągłym kształcie dostosowanym do wielkości wewnętrznej średnicy koperty zegarka. Ale w produkcji użyłem dwóch jednostronnych desek o grubości 0,35 mm. Grubość tę ponownie uzyskano poprzez oderwanie jej z dwustronnego laminatu z włókna szklanego o grubości 1,5 mm. Następnie deski zostały sklejone ze sobą. Wszystko to zostało zrobione dlatego, że nie miałem cienkiego dwustronnego włókna szklanego, a każdy milimetr grubości zaoszczędzony w ograniczonej przestrzeni wewnętrznej koperty zegarka jest bardzo cenny i nie było potrzeby osiowania przy produkcji drukowanych przewodników przy użyciu LUT metoda. Rysunek płytki drukowanej i lokalizacja części znajdują się w załączonych plikach. Po jednej stronie znajdują się wskaźniki i rezystory ograniczające prąd R1-R8. Z tyłu znajdują się wszystkie pozostałe szczegóły. Istnieją dwa otwory przelotowe dla diod LED białych i podczerwieni.

Styki przycisku oraz uchwyt baterii wykonane są z elastycznej blachy sprężynowej o grubości 0,2...0,3 mm. i konserwowane. Poniżej zdjęcia płytki z obu stron:

Projekt, części i ich ewentualna wymiana

Mikrokontroler ATmega168PA-AU można zastąpić mikrokontrolerem ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Wskaźniki cyfrowe - 4 sztuki KPSA02-105 superjasnoczerwone świecące z wysokością cyfr 5,08 mm. Mogą być dostarczane z tej samej serii KPSA02-xxx lub KCSA02-xxx. (tylko nie zielone - będą słabo świecić) Nie znam innych analogów o podobnych rozmiarach i przyzwoitej jasności. W HG1, HG3 połączenie segmentów katody jest inne niż w HG2, HG4, ponieważ wygodniej było mi okablować płytkę drukowaną. W związku z tym w programie używana jest dla nich inna tabela generatorów znaków. Używane rezystory i kondensatory SMD do montażu powierzchniowego o standardowych rozmiarach 0805 i 1206, diody LED D1-D7 o standardowych rozmiarach 0805. Diody LED białe i podczerwone o średnicy 3 mm. Na płytce znajduje się 13 otworów przelotowych, w które należy włożyć zworki. Jako czujnik temperatury zastosowano DS18B20 z interfejsem 1-Wire. LS1 to zwykły piezoelektryczny głośnik wysokotonowy, montowany w pokrywie. Jednym stykiem łączy się go z płytką za pomocą zamontowanej na nim sprężyny, a drugim stykiem łączy się z korpusem zegarka za pomocą samej pokrywy. Rezonator kwarcowy z zegarka naręcznego.

Programowanie, firmware, bezpieczniki

Do programowania w obwodzie płytka ma tylko 6 okrągłych punktów stykowych (J1), ponieważ pełne złącze nie mieści się na wysokości. Podłączyłem je do programatora za pomocą styku wykonanego z wtyczki PLD2x3 pin i przylutowanych do nich sprężynek, dociskając je jedną ręką do miejsc. Poniżej zdjęcie urządzenia.

Użyłem go, ponieważ podczas procesu debugowania musiałem wielokrotnie flashować MK. Przy jednorazowym flashowaniu firmware łatwiej jest przylutować cienkie przewody podłączone do programatora do patchy, a następnie ponownie je odlutować. Wygodniej jest flashować MK bez akumulatora, ale tak, aby zasilanie pochodziło albo z zewnętrznego źródła +3 V, albo z programatora o tym samym napięciu zasilania. Program napisany jest w asemblerze w środowisku VMLAB 3.15. Kody źródłowe, firmware dla FLASH i EEPROM w aplikacji.

Bity FUSE mikrokontrolera DD1 należy zaprogramować w następujący sposób:
CKSEL3...0 = 0010 - taktowanie z wewnętrznego oscylatora RC 8 MHz;
SUT1...0 =10 - Czas rozruchu: 6 CK + 64 ms;
CKDIV8 = 1 - dzielnik częstotliwości przez 8 wyłączony;
CKOUT = 1 - Zegar wyjściowy na CKOUT wyłączony;
BODLEVEL2…0 = 111 - wyłączona kontrola napięcia zasilania;
EESAVE = 0 - kasowanie EEPROM-u podczas programowania kryształu jest zabronione;
WDTON = 1 – Timer Watchdog nie zawsze jest włączony;
Pozostałe bity FUSE najlepiej pozostawić nietknięte. Bit FUSE jest programowany, jeśli jest ustawiony na „0”.

Wymagane jest flashowanie pamięci EEPROM za pomocą zrzutu zawartego w archiwum.

Pierwsze komórki pamięci EEPROM zawierają początkowe parametry urządzenia. Poniższa tabela opisuje przeznaczenie niektórych z nich, które w rozsądnych granicach można zmieniać.

Adres komórki

Zamiar

Parametr

Notatka

Poziom napięcia akumulatora, przy którym występuje sygnał niskiego poziomu

260 (104 USD) (2,6 V)

współczynnik korygujący wartość zmierzonego napięcia akumulatora

odstęp czasowy do przejścia w tryb uśpienia

1 jednostka = 1 sek

odstęp czasowy przejścia w tryb uśpienia, gdy latarka jest włączona

1 jednostka = 1 sek

przedział czasowy przejścia w tryb uśpienia w trybie zdalnego sterowania kamerami

1 jednostka = 1 sek

Tutaj przechowywane są numery kluczy IButton

Małe wyjaśnienia dotyczące punktów:

1 punkt. Wskazuje poziom napięcia na akumulatorze, przy którym zapali się dioda LED, wskazując jego niską wartość. Ustawiłem na 2,6 V (parametr - 260). Jeśli potrzebujesz czegoś innego, na przykład 2,4 V, musisz wpisać 240 (00F0 $). Młodszy bajt jest przechowywany w komórce pod adresem $0000, a starszy bajt jest przechowywany w komórce pod adresem $0001.

2 punkty. Ponieważ z braku miejsca nie zamontowałem na płytce rezystora zmiennego w celu regulacji dokładności pomiaru napięcia akumulatora, wprowadziłem kalibrację programową. Procedura kalibracji w celu dokładnego pomiaru jest następująca: początkowo w tej komórce EEPROM zapisywany jest współczynnik 1024 (400 $), należy przełączyć urządzenie w tryb aktywny i spojrzeć na napięcie na wskaźniku, a następnie zmierzyć rzeczywiste napięcie na akumulator za pomocą woltomierza. Współczynnik korekcyjny (K), który należy ustawić, oblicza się ze wzoru: K=Uр/Ui*1024 gdzie Uр to rzeczywiste napięcie zmierzone przez woltomierz, Ui to napięcie zmierzone przez samo urządzenie. Po obliczeniu współczynnika „K” wprowadza się go do urządzenia (zgodnie z instrukcją obsługi). Po kalibracji mój błąd nie przekraczał 3%.

3 punkty. Tutaj możesz ustawić czas, po którym urządzenie przejdzie w tryb uśpienia, jeśli nie zostanie naciśnięty żaden przycisk. Mój kosztuje 16 sekund. Jeśli na przykład chcesz zasnąć w 30 sekund, musisz zapisać 30 (26 USD).

W punktach 4 i 5 to samo.

6 punktów. Pod adresem $0030 przechowywany jest kod rodziny klucza zerowego (Dallas 1-Wire), następnie jego 48-bitowy numer i CRC. I tak 50 klawiszy po kolei.

Konfiguracja, funkcje operacyjne

Konfiguracja urządzenia sprowadza się do kalibracji pomiaru napięcia akumulatora, jak opisano powyżej. Należy także wykryć odchyłkę taktowania zegara za 1 godzinę, obliczyć i wprowadzić odpowiednią wartość korekcyjną (procedura opisana jest w instrukcji obsługi).

Urządzenie zasilane jest baterią litową CR2032 (3V) i pobiera w trybie uśpienia około 4 µA, a w trybie aktywnym 5...20 mA, w zależności od jasności wskaźnika. Przy codziennym pięciominutowym korzystaniu z trybu aktywnego bateria powinna wystarczyć na około 2...8 miesięcy w zależności od jasności. Obudowa zegarka jest podłączona do ujemnego bieguna akumulatora.

Odczyt klawiszy został przetestowany na DS1990. Emulacja została przetestowana na domofonach METAKOM. Pod numerami seryjnymi od 46 do 49 (ostatnie 4) migają uniwersalne klucze do domofonów (wszystkie klucze są przechowywane w EEPROM, można je zmienić przed flashowaniem). Klucz zarejestrowany pod numerem 49 otwierał wszystkie domofony METAKOM, na które trafiłem, pozostałych kluczy uniwersalnych nie miałem okazji przetestować, ich kody wziąłem z sieci.

Pilot do aparatów był testowany na modelach Pentax optio L20 i Nikon D3000. Nie udało się uzyskać Canona do recenzji.

Instrukcja obsługi zajmuje 13 stron, dlatego nie umieściłem jej w artykule, ale umieściłem ją w załączniku w formacie PDF.

Archiwum zawiera:
Schemat w i GIF;
Rysunek płytki drukowanej i rozmieszczenie elementów w formacie;
Oprogramowanie sprzętowe i kod źródłowy w asemblerze;

Lista radioelementów

Oznaczenie Typ Określenie Ilość NotatkaSklepMój notatnik
DD1 MK AVR 8-bitowy

ATmega168PA

1 PA-AU Do notatnika
U2 Czujnik temperatury

DS18B20

1 Do notatnika
Pytanie 1 Tranzystor MOSFET

2N7002

1 Do notatnika
C1, C2 Kondensator30 pF2 Do notatnika
C3, C4 Kondensator0,1 µF2 Do notatnika
C5 Kondensator elektrolityczny47 µF1 Do notatnika
R1-R8, R17 Rezystor

100 omów

9 Do notatnika
R9 Rezystor

10 kiloomów

1 Do notatnika
R10 Rezystor

8,2 oma

1 Do notatnika
R11 Rezystor

300 omów

1 Do notatnika
R12 Rezystor

2 MOhmy

1 Do notatnika
R13 Rezystor

220 kiloomów

1 Do notatnika
R14 Rezystor

30 kiloomów

1 Do notatnika
R15, R19 Rezystor

4,7 kOhm

2 Do notatnika
R16 Rezystor

20 kiloomów

1

W sprzedaży można znaleźć wiele różnych modeli i opcji elektronicznych zegarków cyfrowych, ale większość z nich jest przeznaczona do użytku w pomieszczeniach, ponieważ liczby są niewielkie. Czasem jednak konieczne jest umieszczenie zegara na ulicy – ​​np. na ścianie domu, czy na stadionie, placu, czyli tam, gdzie będzie on widoczny z dużej odległości przez wiele osób. W tym celu opracowano i pomyślnie zmontowano obwód dużego zegara LED, do którego można podłączyć (poprzez wewnętrzne przełączniki tranzystorowe) wskaźniki LED dowolnej wielkości. Schemat można powiększyć klikając na niego:

Opis zegara

  1. Oglądać. W tym trybie dostępny jest standardowy sposób wyświetlania czasu. Istnieje cyfrowa korekcja dokładności zegara.
  2. Termometr. W tym przypadku urządzenie mierzy temperaturę pomieszczenia lub powietrza na zewnątrz z jednego czujnika. Zakres od -55 do +125 stopni.
  3. Zapewniona jest kontrola zasilania.
  4. Wyświetla na przemian informacje na wskaźniku – zegar i termometr.
  5. Do zapisywania ustawień i ustawień w przypadku utraty napięcia 220 V wykorzystywana jest pamięć nieulotna.


Podstawą urządzenia jest ATMega8 MK, który flashuje się ustawiając bezpieczniki według tabeli:

Zarządzanie pracą i zegarem

Gdy włączysz zegarek po raz pierwszy, na ekranie pojawi się reklamowy ekran powitalny, po czym zegarek przełączy się na wyświetlanie godziny. Naciśnięcie przycisku SET_TIME wskaźnik zakręci się w kółko z trybu głównego:

  • tryb wyświetlania minut i sekund. Jeśli w tym trybie jednocześnie naciśniesz przycisk PLUS I MINUS, wtedy sekundy zostaną zresetowane;
  • ustawienie minut aktualnego czasu;
  • ustawienie aktualnego zegara;
  • symbol T. Ustawianie czasu wyświetlania zegara;
  • symbol o. Czas wyświetlania symboli wskazania temperatury zewnętrznej (out);
  • wielkość dziennej korekty dokładności zegara. Symbol C i wartość korekty. Ustawianie limitów od -25 do 25 sek. Wybrana wartość będzie dodawana lub odejmowana od aktualnego czasu każdego dnia o godzinie 0 godzin 0 minut i 30 sekund. Aby uzyskać więcej informacji, przeczytaj instrukcje znajdujące się w archiwum z plikami oprogramowania sprzętowego i płytek drukowanych.

Ustawianie zegara

Przytrzymując przyciski PLUS/MINUS Wykonujemy przyspieszone ustawianie wartości. Po zmianie jakichkolwiek ustawień, po 10 sekundach nowe wartości zostaną zapisane w pamięci nieulotnej i stamtąd odczytane po ponownym włączeniu zasilania. Nowe ustawienia zaczną obowiązywać podczas instalacji. Mikrokontroler monitoruje obecność głównego zasilania. Gdy jest wyłączony, urządzenie zasilane jest ze źródła wewnętrznego. Schemat redundantnego modułu zasilania pokazano poniżej:


Aby zmniejszyć pobór prądu, wskaźnik, czujniki i przyciski są wyłączone, ale sam zegar nadal odlicza czas. Po pojawieniu się napięcia sieciowego 220V przywracane są wszystkie funkcje sygnalizacyjne.


Ponieważ urządzenie zostało pomyślane jako duży zegar LED, posiada dwa wyświetlacze: duży LED - dla ulicy i mały LCD - dla łatwej konfiguracji głównego wyświetlacza. Duży wyświetlacz znajduje się kilka metrów od jednostki sterującej i jest podłączony dwoma kablami po 8 żył. Do sterowania anodami wskaźnika zewnętrznego stosuje się przełączniki tranzystorowe zgodnie ze schematem podanym w archiwum. Autorzy projektu: Alexandrovich & SOIR.

Przedstawiam Państwu wersję elektroniczną zegar mikrokontrolera. Obwód zegara jest bardzo prosty, zawiera minimum części i może być powtarzany przez początkujących radioamatorów.

Konstrukcja zmontowana jest na mikrokontrolerze i zegarze czasu rzeczywistego DS1307. Do wskazania aktualnej godziny służy czterocyfrowy, siedmiosegmentowy wskaźnik LED (bardzo jasny, w kolorze niebieskim, który dobrze prezentuje się w ciemności, a jednocześnie zegar pełni rolę nocnika) światło). Sterowanie zegarem odbywa się za pomocą dwóch przycisków. Dzięki zastosowaniu układu zegara czasu rzeczywistego DS1307 algorytm programu okazał się dość prosty. Mikrokontroler komunikuje się z zegarem czasu rzeczywistego poprzez magistralę I2C i jest zorganizowany programowo.

Schemat zegara:

Niestety na schemacie jest błąd:
— zaciski MK należy podłączyć do baz tranzystorów:
РВ0 do Т4, РВ1 do Т3, РВ2 do Т2, РВ3 do Т1
lub zmień podłączenie kolektorów tranzystorów do cyfr wskaźnika:
T1 do DP1….. T4 do DP4

Części użyte w obwodzie zegara:

♦ Mikrokontroler ATTiny26:

♦ zegar czasu rzeczywistego DS1307:

♦ 4-cyfrowy siedmiosegmentowy wskaźnik LED – FYQ-5641UB-21 ze wspólną katodą (ultra jasny, niebieski):

♦ kwarc 32,768 kHz, o pojemności wejściowej 12,5 pF (można pobrać z płyty głównej komputera), dokładność zegara zależy od tego kwarcu:

♦ wszystkie tranzystory to konstrukcje NPN, można zastosować dowolne (KT3102, KT315 i ich zagraniczne odpowiedniki), ja użyłem BC547S
♦ mikroukładowy stabilizator napięcia typu 7805
♦ wszystkie rezystory o mocy 0,125 wata
♦ kondensatory polarne na napięcie robocze nie niższe niż napięcie zasilania
♦ zasilacz rezerwowy DS1307 – ogniwo litowe 3 V CR2032

Do zasilania zegarka można użyć dowolnej niepotrzebnej ładowarki do telefonu komórkowego (w tym przypadku, jeśli napięcie na wyjściu ładowarki mieści się w granicach 5 woltów ± 0,5 wolta, część obwodu - stabilizator napięcia na chipie typu 7805 - może zostać wyeliminowane)
Pobór prądu urządzenia wynosi 30 mA.
Do zegara DS1307 nie trzeba instalować baterii zapasowej, ale wówczas w przypadku zaniku zasilania sieciowego konieczne będzie ponowne ustawienie aktualnej godziny.
Nie podano płytki drukowanej urządzenia; konstrukcja została zmontowana w obudowie z wadliwego zegarka mechanicznego. Do oddzielenia godzin i minut na wskaźniku służy dioda LED (z częstotliwością migania 1 Hz, z pinu SQW DS1307).

Ustawienia mikrokontrolera są fabryczne: częstotliwość taktowania - 1 MHz, bity FUSE nie wymagają dotykania.

Algorytm działania zegara(w Konstruktorze algorytmów):

1. Ustawianie wskaźnika stosu
2. Ustawianie timera T0:
— częstotliwość SK/8
- przerwania przepełnienia (przy tej zadanej częstotliwości przerwanie wywoływane jest co 2 milisekundy)
3. Inicjalizacja portów (piny PA0-6 i PB0-3 konfigurujemy jako wyjście, PA7 i PB6 jako wejście)
4. Inicjalizacja magistrali I2C (piny PB4 i PB5)
5. Sprawdzenie 7. bitu (CH) zera rejestru DS1307
6. Włącz globalne przerwanie
7. Wejście w pętlę i sprawdzenie czy przycisk został wciśnięty

Przy pierwszym włączeniu lub ponownym włączeniu, jeśli DS307 nie ma zasilania rezerwowego, bieżący czas zostaje zresetowany do pierwotnego ustawienia. W tym przypadku: przycisk S1 – ustawienie czasu, przycisk S2 – przejście do kolejnej cyfry. Ustaw czas - do DS1307 zapisywane są godziny i minuty (sekundy są ustawione na zero), a pin SQW/OUT (7-ty pin) jest skonfigurowany do generowania impulsów fali prostokątnej o częstotliwości 1 Hz.
Po naciśnięciu przycisku S2 (S4 - w programie) przerwa globalna zostaje wyłączona, program przechodzi do podprogramu korekty czasu. W tym przypadku za pomocą przycisków S1 i S2 ustawia się dziesiątki i jednostki minut, następnie od 0 sekund naciśnięcie przycisku S2 rejestruje zaktualizowany czas w DS1307, rozwiązuje przerwanie globalne i wraca do programu głównego.

Zegarek wykazywał dobrą dokładność, miesięczna strata czasu wyniosła 3 sekundy.
Aby poprawić dokładność, zaleca się podłączenie kwarcu do DS1307, jak wskazano w karcie katalogowej:

Program napisany jest w środowisku Algorithm Builder.
Na przykładzie programu zegarowego można zapoznać się z algorytmem komunikacji mikrokontrolera z innymi urządzeniami poprzez magistralę I2C (każda linia jest szczegółowo komentowana w algorytmie).

Zdjęcie zmontowanego urządzenia i płytki drukowanej w formacie .lay od czytelnika strony Anatolija Pilguka, za co mu serdecznie dziękujemy!

W urządzeniu zastosowano: Tranzystory - SMD BC847 oraz rezystory CHIP

Załączniki do artykułu:

(42,9 KiB, 3227 odsłon)

(6,3 KiB, 4180 odsłon)

(3,1 KiB, 2657 odsłon)

(312,1 KiB, 5929 odsłon)


Druga wersja programu zegarowego w AB (dla tych, którzy nie mogą pobrać wyższej)

(11,4 KiB, 1942 odsłon)

Zegarek ten był już wielokrotnie recenzowany, ale mam nadzieję, że moja recenzja również będzie dla Was interesująca. Dodano opis zadania i instrukcje.

Projektant został kupiony na ebay.com za 1,38 funta (0,99 + 0,39 wysyłki), co stanowi równowartość 2,16 dolara. W momencie zakupu jest to najniższa oferowana cena.

Dostawa trwała około 3 tygodni, zestaw przyszedł w zwykłej plastikowej torbie, która z kolei została zapakowana w małą torebkę bąbelkową. Na zaciskach kierunkowskazów był mały kawałek pianki, reszta części była bez zabezpieczenia.

Z dokumentacji wynika jedynie mała kartka formatu A5, na której z jednej strony znajduje się spis podzespołów radia, a z drugiej schemat połączeń.

1. Schemat obwodu elektrycznego, użyte części i zasada działania



Podstawą, czyli „sercem” zegarka jest 8-bitowy mikrokontroler CMOS AT89C2051-24PU wyposażony w programowalną i kasowalną pamięć ROM o pojemności 2kb Flash.
Węzeł generatora zegara zmontowany zgodnie z obwodem (rys. 1) i składa się z rezonatora kwarcowego Y1, dwóch kondensatorów C2 i C3, które razem tworzą równoległy obwód oscylacyjny.


Zmieniając pojemność kondensatorów, można w małych granicach zmienić częstotliwość generatora zegara i, odpowiednio, dokładność zegara. Rysunek 2 przedstawia wariant obwodu generatora zegara z możliwością regulacji błędu zegara.

Węzeł resetu początkowego służy do ustawienia rejestrów wewnętrznych mikrokontrolera do stanu początkowego. Służy do podania po podłączeniu zasilania na 1 pin MK pojedynczego impulsu o czasie trwania co najmniej 1 μs (12 okresów zegara).
Składa się z obwodu RC utworzonego przez rezystor R1 i kondensator C1.

Obwód wejściowy składa się z przycisków S1 i S2. Oprogramowanie zostało zaprojektowane w taki sposób, że jednokrotne naciśnięcie któregokolwiek z przycisków powoduje usłyszenie w głośniku pojedynczego sygnału, a przytrzymanie go powoduje usłyszenie podwójnego sygnału.

Moduł wyświetlacza zmontowany na czterocyfrowym wskaźniku siedmiosegmentowym ze wspólną katodą DS1 i zespołem rezystancyjnym PR1.
Zespół rezystancyjny to zestaw rezystorów w jednej obudowie:


Część dźwiękowa Obwód to obwód złożony z rezystora 10 kOhm R2, tranzystora pnp Q1 SS8550 (działającego jako wzmacniacz) i elementu piezoelektrycznego LS1.

Odżywianie zasilany poprzez złącze J1 z kondensatorem wygładzającym C4 połączonym równolegle. Zakres napięcia zasilania od 3 do 6V.

2. Montaż konstruktora

Montaż nie sprawiał żadnych trudności, na tablicy było napisane gdzie i jakie części lutować.

Mnóstwo zdjęć - montaż projektanta ukryty jest pod spojlerem

Zacząłem od gniazda, gdyż jako jedyne nie jest ono elementem radiowym:

Następnym krokiem było przylutowanie rezystorów. Nie da się ich pomylić, oba mają 10 kOhm:


Następnie zamontowałem na płytce zachowując polaryzację kondensator elektrolityczny, zespół rezystorów (zwracając także uwagę na pierwszy pin) oraz elementy generatora zegara - 2 kondensatory i rezonator kwarcowy

Następnym krokiem jest przylutowanie przycisków i kondensatora filtra zasilania:

Następnie przyszedł czas na dźwiękowy element piezoelektryczny i tranzystor. Najważniejsze w tranzystorze jest zainstalowanie go po właściwej stronie i nie pomylenie zacisków:

Na koniec lutuję wskaźnik i złącze zasilania:

Podłączam go do źródła 5V. Wszystko działa!!!


3. Ustawianie aktualnej godziny, alarmów i sygnału godzinowego.

Po włączeniu zasilania wyświetlacz znajduje się w trybie „GODZINY: MINUTY” i wyświetla domyślny czas 12:59. Sygnał godzinowy jest włączony. Obydwa alarmy są włączone. Pierwsza ma działać o godzinie 13:01, a druga o 13:02.


Za każdym razem, gdy naciśniesz krótko przycisk S2, wyświetlacz będzie przełączał się pomiędzy trybami („GODZINY: MINUTY”) i („MINUTY: SEKUND”).
Długie naciśnięcie przycisku S1 powoduje wejście do menu ustawień, które składa się z 9 podmenu, oznaczonych literami A, B, C, D, E, F, G, H, I. Przełączanie podmenu odbywa się za pomocą Przycisk S1, wartości zmienia się przyciskiem S2. Z podmenu I następuje wyjście z menu ustawień.

Odp.: Ustawianie aktualnego zegara
Po naciśnięciu przycisku S2 wartość zegara zmienia się od 0 do 23. Po ustawieniu zegara należy nacisnąć S1, aby przejść do podmenu B.

B: Ustawianie minut aktualnego czasu


C: Włącz sygnał dźwiękowy co godzinę
Wartość domyślna to WŁ. – sygnał dźwiękowy rozlega się co godzinę od 8:00 do 20:00. Naciśnięcie przycisku S2 powoduje zmianę wartości pomiędzy ON i OFF. Po ustawieniu wartości należy nacisnąć S1, aby przejść do podmenu D.

D: Włącz/wyłącz pierwszy alarm
Domyślnie alarm jest włączony. Naciśnięcie przycisku S2 powoduje zmianę wartości pomiędzy ON i OFF. Po ustawieniu wartości należy nacisnąć S1 aby przejść do kolejnego podmenu. Jeżeli alarm jest wyłączony, podmenu E i F są pomijane.

E: Ustaw zegar na pierwszy alarm
Po naciśnięciu przycisku S2 wartość zegara zmienia się od 0 do 23. Po ustawieniu zegara należy nacisnąć S1, aby przejść do podmenu F.

F: Ustawianie minut pierwszego alarmu
Po naciśnięciu przycisku S2 wartość minut zmienia się od 0 do 59. Po ustawieniu minut należy nacisnąć S1, aby przejść do podmenu C.

G: Włącz/wyłącz drugi budzik
Domyślnie alarm jest włączony. Naciśnięcie przycisku S2 powoduje zmianę wartości pomiędzy ON i OFF. Po ustawieniu wartości należy nacisnąć S1 aby przejść do kolejnego podmenu. Jeżeli alarm jest wyłączony, podmenu H i I zostaną pominięte i nastąpi wyjście z menu ustawień.

H: Ustawianie drugiego budzika
Po naciśnięciu przycisku S2 wartość zegara zmienia się od 0 do 23. Po ustawieniu zegara należy nacisnąć S1, aby przejść do podmenu I.

I: Ustawianie minut drugiego alarmu
Po naciśnięciu przycisku S2 wartość minut zmienia się od 0 do 59. Po ustawieniu minut należy nacisnąć S1, aby wyjść z menu ustawień.

Korekta sekund
W trybie („MINUTY: SEKUND”) należy przytrzymać przycisk S2, aby zresetować sekundy. Następnie krótko naciśnij przycisk S2, aby rozpocząć odliczanie sekund.

4. Ogólne wrażenia z zegarka.

Plusy:
+ Niska cena
+ Łatwy montaż, minimalna liczba części
+ Przyjemność samodzielnego montażu
+ Dość niski błąd (w ciągu dnia byłem kilka sekund do tyłu)

Wady:
- Nie odmierza czasu po wyłączeniu zasilania
- Brak jakiejkolwiek dokumentacji poza schematem (w tym artykule częściowo rozwiązano tę wadę)
- Oprogramowanie sprzętowe mikrokontrolera jest zabezpieczone przed odczytem

5. Dodatkowo:

1) W nieskończonych przestrzeniach Internetu znalazłem instrukcje dotyczące tego zegarka w języku angielskim i przetłumaczyłem je na rosyjski. Możesz go pobrać