Uliczne zegary elektroniczne są szeroko stosowane w projektowaniu nowoczesnej infrastruktury w Moskwie i innych miastach jako skuteczny sposób przyciągnięcia uwagi ludzi.

Firma produkcyjna „RusImpulse” produkuje szeroką gamę zewnętrznych zegarów LED: o wysokości cyfr 80mm i więcej oraz dowolnym kolorze świecenia.

Modele seryjne ulicy zegar ścienny„Impuls” standardowo wyświetla aktualną godzinę, datę i temperaturę powietrza w trybie naprzemiennym. Opcjonalnie taki zegarek-termometr może również wyświetlać szeroki zakres danych meteorologicznych: temperaturę wody, względną wilgotność powietrza, ciśnienie atmosferyczne, prędkość wiatru, poziom promieniowania tła. Czas wyświetlania każdego z parametrów może być ustawiony przez użytkownika niezależnie.

Płytki elektroniczne „Impuls” pracują w szerokim zakresie temperatur (od -40 do +50 °C), posiadają specjalną ochronę przed korozją, wnikaniem kurzu i wilgoci do obudowy (IP 65) i mogą pracować w każdych warunkach atmosferycznych.

Elektroniczne zegary uliczne z termometrem „Impulsowym” produkowane są z reguły w wersji jednostronnej i montowane są na ścianie budynku. Istnieje możliwość obustronnego zegarka z zapięciem pionowym lub bocznym.

W zależności od zamierzonego miejsca instalacji, zewnętrzny zegar elektroniczny z termometrem można wybrać dla zacienionej lub słonecznej strony. Do umieszczenia w cieniu nadaje się zegar z termometrem z mniej jaskrawymi czerwonymi diodami LED - 1,5Kd, natomiast na słoneczną stronę, a także do montażu w witrynach sklepowych, zalecane są zegarki z jaśniejszymi diodami LED (3,0Kd dla czerwonej poświaty / co najmniej 2Kd dla innego koloru)

Zewnętrzny zegar elektroniczny z termometrem jest standardowo sterowany za pomocą pilota pilot na promienie podczerwone o zasięgu do 10 m. Pilot pozwala na zmianę jasności blasku oraz czasu wskazania wyświetlanych parametrów. Wielkogabarytowy zegarek-termometr o wysokości czcionki 700 mm sterowany jest pilotem radiowym o zasięgu do 50 m.

Podstawowe modele outdoorowych zegarków elektronicznych „Impuls”

wyświetlane parametry Obecny czas(GG:MM), data (DD.MM), temperatura powietrza (-88°C lub 88 °C)
format wskaźnika 88:88
typ wskaźnika diody LED
jasność wskaźnika
kontrola Pilot na podczerwień (odległość do 10m)
jedzenie 220V/50Hz, kabel zasilający 1,5m.
Warunki korzystania ulica, temperatura od -40° do 50° С
rodzaj i kolor obudowy tłoczony korpus ze stali,malowany czarną farbą proszkową,profil ozdobny, szkło akrylowe, mocowanie -zawiasy z tyłu obudowy
czujniki pogodoweczujnik temperatury powietrza - zdalny, przewód czujnika 1,5m.
opcjonalnie istnieje możliwość wyposażenia tablicy w inne czujniki pogodowe
okres gwarancji 2 lata

W proponowanym urządzeniu zastosowano znakowe szesnastoelementowe wskaźniki LED PSA08-11 ze wspólnymi anodami. Wybór padł na nich ze względu na niski koszt, duży rozmiar wyświetlanego symbolu i wysoką jasność. Aby uzyskać maksimum przydatna informacja, tekst przesuwa się od prawej do lewej. Sześć pól znajomości naprzemiennie wyświetla aktualną godzinę, temperaturę wewnętrzną, temperaturę zewnętrzną, datę, dzień tygodnia i miesiąc, np. „18 marca CZWARTEK.

Czas jest przechowywany przez układ DS1307. Jest to zegar czasu rzeczywistego (RTC) z wbudowanym kalendarzem. Gdy ogólne zasilanie jest wyłączone, mikroukład ten nadal działa z zapasowego źródła - ogniwa litowego CR2032 o napięciu 3 V. Ponieważ przy braku połączeń zewnętrznych prąd pobierany przez mikroukład DS1307 nie przekracza 300 nA, odliczanie czasu w tym trybie może trwać do dziesięciu lat. Generator zegara tego mikroukładu zbudowany jest przy użyciu zewnętrznego rezonatora kwarcowego o częstotliwości 32768 Hz, co zapewnia wysoką dokładność. Mikroukład liczy sekundy, minuty, godziny, dni miesiąca (w tym lata przestępne), miesiące, dni tygodnia i lata. Jej kalendarz jest ważny do 2100. Więcej dokładna informacja o tym można uzyskać w .

Do pomiaru temperatury w urządzeniu stosuje się cyfrowe czujniki temperatury LM75, które wykazują błąd nie większy niż 2 °C w zakresie temperatur od -25 do +100 °C. Więcej informacji na ich temat można znaleźć w .
Schemat zegara i termometru z biegnącą linią pokazano na ryc. 1. Wszystkie funkcje, poza zliczaniem czasu, realizuje mikrokontroler DD2 (PIC16F873A-20I/P), taktowany wbudowanym oscylatorem z rezonatorem kwarcowym ZQ2. Przyciski SB1-SB5 służą do sterowania urządzeniem. Gdy ich styki są otwarte, rezystory R4-R8 zapewniają wysoki poziom logiczny na odpowiednich wejściach mikrokontrolera. Rezystor R11 utrzymuje stan wysoki na wejściu konfiguracyjnym mikrokontrolera, zapobiegając ponownemu uruchomieniu programu przez przypadkowe szumy.

Do zasilania zegara wymagane jest stabilizowane źródło napięcia 5 V o maksymalnym prądzie obciążenia co najmniej 600 mA. Jest podłączony do złącza XS1. Wersja autora używa Ładowarka z komórka. Kondensatory C1 i C2 wygładzają się, a pojemność kondensatora C1 musi wynosić co najmniej 1000 mikrofaradów.
Zegarek posiada budzik. Jego sygnał dźwiękowy dostarcza piezoemiter z wbudowanym generatorem HA1 (HPA24AX). Zgodnie z sygnałami mikrokontrolera jest sterowany za pomocą klucza na tranzystorze VT7. Wybierając rezystor R18 w obwodzie bazowym tego tranzystora, można regulować głośność dźwięku w określonych granicach.

Czerwone diody HL1-HL3 służą do wskazywania trybów pracy. Ich jasność zmienia się dobierając rezystory R15-R17.
Do programowania mikrokontrolera zainstalowanego na płytce posiada złącze XP1. Na czas tej operacji dołączony jest do niej programator np. PICkit2, EXTRAPIC lub inny podobny. W obecnym urządzeniu to złącze nie jest potrzebne. Nie da się go zainstalować jeśli programujesz mikrokontroler w panelu programatora przed zamontowaniem go na płytce.


Programowanie mikrokontrolera polega na pobieraniu kod programu z pliku HEX do jego pamięci FLASH. Wymaga to programu sterującego programistą, takiego jak WinPic800, który jest dostępny bezpłatnie pod adresem www.winpic800.com/descargas/WinPic800.zip w Internecie. Szczegółowe instrukcje na programowaniu mikrokontrolera można również wczytać.
Aby uprościć program mikrokontrolera i urządzenie jako całość, układ RTC DD1 i czujniki temperatury VK1 i VK2 są połączone z mikrokontrolerem za pośrednictwem tej samej magistrali I2C. Czujnik VK2 podłącza się do złącza XP2 przewodem o długości do kilku metrów zgodnie ze schematem przedstawionym na rys.1. 2.

Rezystory R2 i R9 łączą linie SCL i SDA szyny I 2 C z plusem mocy, utrzymując na nich wysoki poziom podczas przerw w przesyłaniu informacji, zgodnie ze specyfikacją szyny. Możesz dowiedzieć się więcej o korzystaniu z tego autobusu. Wejścia adresowe czujników temperatury VK1 i VK2 są połączone w różny sposób z plusem zasilania i wspólnym przewodem, co umożliwia mikrokontrolerowi programowe rozróżnienie czujników.

Szesnastobitowe kody równoległe do wyświetlania informacji na wskaźnikach są tworzone na wyjściach mikroukładów DD3 i DD4. Mikrokontroler DD2 wprowadza informacje do tych mikroukładów w kodzie szeregowym, wykorzystując do tego tylko trzy linie swoich portów B i C. Wejścia RC7 i zegarowe obu mikroukładów mają rosnącą różnicę poziomów. W tym przypadku kod już zawarty w szeregowo połączonych rejestrach przesuwnych jest przesuwany o jedną pozycję w kierunku starszego bitu rejestru DD4, a wartość ustawiona przez mikrokontroler na jego wejściu jest zapisywana do zwolnionego dolnego bitu rejestru DD3.

Po szesnastu takich operacjach cały kod jest zapisywany w szesnastobitowym rejestrze przesuwnym utworzonym przez mikroukłady DD3 i DD4. Jednak ten kod nie pojawił się jeszcze na wyjściach mikroukładów, ten, który był wyświetlany w poprzednim cyklu, nadal na nich działa. Aby zaktualizować stan wyjść, mikrokontroler generuje rosnącą różnicę poziomów na swojej linii RB0, a wejścia zapisu kodu z rejestrów przesuwnych mikroukładów DD3 i DD4 do ich rejestrów pamięci. Możesz zapoznać się z działaniem układu konwertera szeregowo-równoległego 74HC595, czytając.

Po zapisaniu kodu do mikrokontrolerów DD3 i DD4, mikrokontroler wysyła polecenie włączenia jednego z sześciu wskaźników, dla katod elementów, do których ten kod jest przeznaczony. Aby nie przeciążać wyjść mikrokontrolera, anody wskaźnikowe są z nimi połączone za pomocą przełączników na tranzystorach VT1-VT6. Schemat tablicy wskaźników pokazano na ryc. 3, a konwencje elementy wskaźnika PSA08-11SRW - - na ryc. 4. Złącza XP1 i XP2 płytki wskaźników są podłączone odpowiednio do złączy XS3 i XS2 na płycie głównej.

Rysunki płyty głównej i rozmieszczenie na niej elementów pokazano na ryc. 5. Wykonany jest z jednostronnie laminowanego włókna szklanego. Płytka przeznaczona jest do montażu czujnika temperatury BK1 w obudowie DIP8, jednak czujnik LM75AD jest produkowany w obudowie SO8 do montażu natynkowego, dlatego należy go montować poprzez płytkę adaptera (rys. 6). Na ryc. 5, kontur adaptera jest pokazany linią przerywaną. Segmenty drutu są wkładane w odpowiednie otwory adaptera i płytki i lutowane z obu stron. Możesz oczywiście, zmieniając topologię drukowanych przewodów na płycie głównej, obejść się bez adaptera.

Dwustronną płytkę drukowaną wskaźników pokazano na ryc. 7. Należy pamiętać, że złącza na nim są zainstalowane po stronie przeciwnej do tej, w której znajdują się wskaźniki. Podczas podłączania złącz obie płytki znajdują się jedna nad drugą „cokolwiek”, co widać na zdjęciu z ryc. osiem.
Tranzystory KT502B można zastąpić dowolną z tej samej serii. Zamiast diod AL307BM nadają się również inne czerwone poświaty o małej mocy, na przykład AL310A.
Prawidłowo zmontowane urządzenie z poprawnie zaprogramowanym mikrokontrolerem nie wymaga regulacji i zaczyna działać natychmiast po włączeniu.

Po włączeniu zasilania najpierw na wskaźnikach wyświetlany jest komunikat powitalny. Po nim następuje czas w formacie 12- lub 24-godzinnym, który można wybrać w odpowiedniej pozycji menu. Dalej biegnąca linia z aktualnym czasem zatrzymuje się na 10 sekund. Po ich wygaśnięciu wyświetlana jest temperatura w pomieszczeniu (odczyty czujnika VK1), temperatura na zewnątrz (odczyty czujnika VK2) i utrzymywana jest kolejna dziesięciosekundowa przerwa, podczas której wskaźnik pokazuje temperaturę ulicy. Następnie wyświetlany jest numer, a następnie słownie miesiąc i dzień tygodnia, po czym cykl (z wyjątkiem komunikatu powitalnego) się powtarza.

Aby ustawić aktualny czas i inne parametry, przejdź do trybu „Menu”, naciskając krótko przycisk SB3 „M”. Dioda HL2 zapala się, wskazując, że ten tryb jest włączony. Na wskaźniku po komunikacie „USTAWIENIA” wyświetlany jest wiersz „XX GODZINA” i zatrzymuje się, gdzie XX to aktualna wartość godziny, którą można zwiększyć, naciskając przycisk SB1 „+” lub zmniejszyć, naciskając przycisk SB5 „- " przycisk.
Aby przejść do następnej pozycji menu, naciśnij przycisk SB2 „>”. Dzięki niemu możesz „przewijać” menu w następującej kolejności, używając SB4 „<” – в противоположном. После первого нажатия на кнопку SB2 “>” wyświetla wiersz „MIN XX”, następnie „ROK 20XX” (domyślnie 2011), następnie „MIESIĄC XX”, „DATA XX”, „DZIEŃ TYGODNIA XX”, „GODZINA_TYGODNIA XX” (godzina alarmu), „WEEK_MIN XX ” (minuty alarmu).

Następnie na wskaźniku pojawia się jedna z linii „BUD OFF” lub „BUD ON”, pokazując aktualny stan alarmu. Można go zmienić, naciskając przycisk SB1 „+” lub SB5 „-”. Gdy alarm jest włączony, świeci dioda HL1 sygnalizując to.
Następnie wyświetlany jest wiersz „FORMAT XX”, gdzie XX jest równe 12 lub 24, w zależności od formatu wyświetlania czasu wybranego przez naciśnięcie przycisku SB1 „+” lub SB5. Po ponownym naciśnięciu SB2 „>” wyświetla się wiersz „BYE”, dioda HL2 gaśnie, zegar przełącza się w normalny tryb pracy.


Gdy aktualny czas zbiega się z ustawionym czasem alarmu, włącza się dioda HL3 i emiter dźwięku HA1. Aby wyłączyć alarmy świetlne i dźwiękowe, wystarczy nacisnąć dowolny przycisk. Sygnał elektryczny do sterowania zewnętrznym elementem wykonawczym, w razie potrzeby, można usunąć z wyjścia RB5 mikrokontrolera, do którego jest podłączona dioda LED HL3 przez rezystor R17.
Gdy zasilanie zewnętrzne jest wyłączone, urządzenie kontynuuje odliczanie czasu - chip DD1 zasilany jest z ogniwa litowego G1.

Załączone pliki: source.zip

LITERATURA
1. DS1307 - 64 x 8 zegar czasu rzeczywistego z interfejs szeregowy. – www.piclist.ru/D-DS-DSB1 „+”307-RUS/D-DS-DS1307-RUS.html
2. LM75A Cyfrowy czujnik temperatury i czujnik termiczny. www.alldatasheet.com/datasheet-pdf/pdf/100962/PHILIPS/LM75AD.html
3. Długie A. Programiści i programowanie mikrokontrolerów. - Radio, 2004, nr 1, s. 53.
4. Semyonov B. Yu Bus I2C w konstrukcjach radiotechnicznych. – M.: „SOLON-R”, 2002.
5. 74HC595; 74HST595 8-bitowy rejestr przesuwny z wejściem szeregowym, wyjściem szeregowym lub wyjściem równoległym z zatrzaskami wyjściowymi; 3-stanowe. - www.nxp.com/documents/data_sheet/74HC_HCT595.pdf

V. BALANDINA, s. Pietrowskie, obwód tambowski
„Radio” №9 2012

prosty zegar włączony matryce LED Oh. Wielu radioamatorów, początkujących i nie tylko lubi "wymyślać koło na nowo" - budować SWÓJ zegar elektroniczny. Ten los też mnie nie oszczędził. Oczywiście w Internecie jest dziś mnóstwo wzorów zegarków, ale z jakiegoś powodu jest tylko kilka zegarków na matrycach LED. W rosyjskojęzycznym Internecie znalazłem tylko jeden w pełni ukończony i opisany projekt. Jednocześnie matryce LED są obecnie znacznie tańsze, a ich koszt nie jest wyższy, ani nawet niższy niż w przypadku wskaźniki siedmiosegmentowe ten sam rozmiar. Na przykład używane przeze mnie GNM23881AD o wymiarach 60x60mm zostały kupione za 1,5u (3 wskaźniki kosztują 4,5u), za te pieniądze trudno kupić cztery siedmiosegmentowe jednostki tego samego rozmiaru. Ale informacji, które można umieścić na wskaźniku matrycowym, może być znacznie więcej. Oprócz cyfr mogą wyświetlać dowolne litery, znaki, a za pomocą linii biegnącej wyświetlać również tekst.

Na tej podstawie pojawiła się chęć zbudowania zegara na matrycach LED, ale aby obwód okazał się nie bardziej skomplikowany niż na siedmiosegmentowych. Chciałem też, żeby był wystarczająco funkcjonalny i nie przypominał innych. Tak narodził się następujący schemat.

Funkcjonalność zegarka wygląda następująco:

  • Odliczanie, kalendarz, dzień tygodnia. (uwzględniany jest rok przestępny, przejście na czas letni / zimowy nie jest przeprowadzane).
  • Zapisywanie zegara w przypadku zgubienia zewnętrzny zasilacz(pobór wynosi 15mA).
  • Korekta podróży + - 59,9 s \ dzień, w odstępach 0,1 s. 9 alarmów. 3 z nich są „jednorazowe”, a 6 są „stałe”, indywidualnie ustawiane w zależności od dnia tygodnia.
  • Indywidualnie regulowany czas trwania sygnału dźwiękowego dla każdego alarmu (1-15min).
  • Dźwiękowe potwierdzenie naciśnięć przycisków (możliwość wyłączenia).
  • Sygnał godzinowy (można wyłączyć).
  • Od 00-00 do 08-00 sygnał nie jest podawany.
  • 1 lub 2 czujniki temperatury (ulica i dom).
  • Konfigurowalny pasek wyświetlający wszystkie informacje (z wyjątkiem czasu)
  • Wartość korekcji skoku oraz ustawienia „linii pełzania” są zapisywane nawet w przypadku utraty zasilania awaryjnego.

AtMega16A został wybrany jako „serce” zegarka, ze względu na jego dostępność, taniość i „nogi”. Chciałem maksymalnie uprościć obwód, więc wszystko, co było możliwe, zostało przypisane do sterownika. W rezultacie udało nam się poradzić sobie z zaledwie dwoma mikroukładami, kontrolerem i rejestrem TPIC6B595. Jeśli TPIC6B595 nie jest dla kogoś dostępny, możesz go zastąpić 74HC595 + ULN2803. Obie opcje zostały przetestowane. Możesz też spróbować użyć TPIC6C595, jest trochę słaby i lekko nagrzany, ale ogólnie działał stabilnie. Czas liczony jest za pomocą czasu asynchronicznego - T2. Zegar jest utrzymywany nawet w przypadku awarii zasilania. W tym czasie większość obwodu jest pozbawiona zasilania, a sterownik zasilany jest baterią, akumulatorem lub jonizatorem. Ciekawe było dla mnie „pobawić się” jonizatorem, więc go zastosowałem. Pobór prądu zegarka w trybie czuwania wynosi 15mA. Przy zasilaniu z jonizatora przy 1F zegarek „trwał” przez cztery dni. To wystarczy, aby utrzymać kurs podczas przerw w dostawie prądu. Jeśli używasz baterii CR2032, to teoretycznie, zgodnie z obliczeniami, ładowanie powinno wystarczyć na 1,5 roku. Dostępność napięcie sieciowe sterownik "nasłuchuje" przez pin PB.3 Ten pin jest wejściem odwracającym komparatora. Napięcie zasilania, poprzez dzielnik R2-R3, podawane jest na wyjście PB.3 iw stanie normalnym wynosi około 1,5V. Jeśli napięcie zewnętrzne spadnie poniżej 4,1 V, wówczas napięcie na pinie PB.3 spadnie poniżej 1,23 V, zostanie wygenerowane przerwanie z komparatora, a wszystkie „niepotrzebne” węzły kontrolera zostaną wyłączone w obsłudze przerwań i sam kontroler zostaje uśpiony. W tym trybie działa tylko timer T2. Gdy pojawi się zasilanie zewnętrzne, napięcie na PB.3 ponownie wzrośnie powyżej 1,23 V, kontroler "widząc" to przekaże wszystkie węzły do warunki pracy. Jeśli zamiast jonizatora zastosowano baterię CR2032, należy ją podłączyć przez diodę (najlepiej diodę Schottky'ego). Anoda diody jest podłączona do + baterii, a katoda do katody VD1. W Tryb normalny Ekran wyświetla czas w formacie godzina-minuta. W odstępie jednej minuty uruchamiana jest bieżnia. Linia biegnąca wyświetla dzień tygodnia, datę, rok, temp. w domu i temp. na ulicy. Linia do biegania jest konfigurowalna, tj. Możesz włączyć / wyłączyć wyświetlanie dowolnego z elementów. (Na przykład zawsze wyłączam wyświetlanie roku). Gdy wszystkie elementy są wyłączone, linia pełzania nie uruchamia się, a zegar stale wyświetla aktualny czas. 9 alarmów podzielono na 3 jednorazowe i 6 wielokrotnego użytku. Gdy włączysz alarmy 1-3, działają tylko raz. Aby ponownie działały, należy je ponownie włączyć ręcznie. A budziki 4-9 są wielokrotnego użytku, czyli będą kursować codziennie ustaw czas. Ponadto alarmy te można ustawić tak, aby działały tylko w określone dni tygodnia. Jest to wygodne, na przykład, jeśli nie chcesz, aby budzik budził Cię w weekend. Lub na przykład musisz wstawać w dni powszednie o 7-00, w czwartek o 8-00, a w weekendy nie potrzebujesz budzika. Następnie ustawiamy jeden wielokrotnego użytku na 7-00 w poniedziałek-środa i piątek, a drugi na 8-00 w czwartek ..... Dodatkowo wszystkie budziki mają ustawienie czasu trwania sygnału, a jeśli nie masz dość sygnał na 1 minutę, aby się obudzić, następnie można go zwiększyć na czas od 1 do 15 minut. Korekta kursu odbywa się raz dziennie, o godzinie 00-00. Jeśli zegar jest szybszy, na przykład o 5 sekund dziennie, to o 00-00-00 czas zostanie ustawiony na 23-59-55, jeśli zegar się opóźni, to o 00-00-00 czas będzie być ustawiony na 00-00-05. Krok korekty - 0,1 sek. Maksymalna korekta to 59,9 s/dzień. W przypadku sprawnego kwarcu więcej nie będzie potrzebne. Korekta odbywa się również w trybie czuwania przy zasilaniu bateryjnym. Tablice LED mogą wykorzystywać dowolne 8*8 zwykłych diod LED katodowych. Jak już wskazano, użyłem GNM23881AD. W zasadzie można "wykręcić" matrycę z poszczególnych diod LED. Mikrokontroler AtMega16a można zastąpić „starym” AtMega16 z literą L. W takim przypadku teoretycznie pobór prądu z akumulatora powinien nieznacznie wzrosnąć. Prawdopodobnie będzie działał właśnie na AtMega16, ale mogą wystąpić problemy podczas pracy na bateriach. Dioda D1 - najlepiej dowolna dioda Schottky'ego. Współpracuje również z konwencjonalnym prostownikiem, ale aby uchronić się przed różnymi usterkami związanymi z tym, że część obwodu zasilana jest napięciem „przed diodą”, a część „za diodą” lepiej poszukać Schottky'ego . Tranzystor VT1 - dowolna n-p-n. Zegar sterowany jest dwoma przyciskami. Ich liczbę można było zwiększyć do 8 sztuk, nie dodając w ogóle żadnych elementów, poza samymi przyciskami, ale chciałem spróbować „wyjść” tylko dwoma. Przyciski są konwencjonalnie nazywane „OK” i „STEP”. Przycisk „KROK” zwykle przełącza do następnej pozycji menu, a przycisk „OK” zmienia parametry bieżącego menu. Sygnał wyzwolonego alarmu jest również wyłączany przyciskami „OK” lub „KROK”. Naciśnięcie dowolnego przycisku podczas alarmu wyłączy alarm. Schemat sterowania wyglądał tak:

Wideo, jak to działa!

Ta pełzająca linia pozwala na odczytanie tekstu składającego się z nie więcej niż 8192 liter ze spacjami.Tekst wpisywany jest do pamięci 24C64 biegnącej linii za pomocą klawiatury z komputera bez podłączania samego komputera. Podczas wpisywania tekstu możliwe jest kasowanie liter za pomocą klawisza (Backspace) obserwując tę ​​akcję kasowania liter na tablicy wyników.

Za pomocą dwóch klawiszy obok cyfr na klawiaturze (+ i -) można regulować szybkość wyświetlania liter. Szybkość działania linii jest zapisywana w najnowszej komórce pamięci 24C64, dlatego po pierwszym włączeniu bez regulacji prędkości będzie obserwowany powolny bieg liter i dlatego należy dokonać pierwszej regulacji. Szybkość działania zmienia się znacznie podczas dostosowywania wpisu liczby w ostatniej komórce 24C64 liczby od 1 .... 30 w postaci dziesiętnej lub szesnastkowej 1..1E, co można zweryfikować za pomocą programatora PICKIT2, ale nie jest to konieczne.

Pamięć ciągów zawiera generator znaków, który ma w swojej pamięci cały alfabet rosyjskich liter wielkich i małych, a także niektóre znaki i wszystkie cyfry.

Wskazanie linii linia po linii dynamicznej składającej się z 8 linii, które świecą się kolejno od góry do dołu 300 razy na sekundę, wykonywany jest cały cykl 8 linii, co pozwala na obserwację obrazu bez migotania.

Chipy tablicy wyników 74NS595 pełnią rolę zapalania poziomej tablicy wyników lub rzędu 160 diod LED, a tranzystory umożliwiają zmianę poziomych lub rzędów kolejno od góry do dołu, czyli tablica jest zapalana linia po linii kolejno od góry do dołu z prędkością 300 klatek na sekundę.

Sam mikroukład 74NS595 jest konwencjonalnym rejestrem przesuwnym z wyjściem każdego rejestru do matrycy LED, ale istnieje duża macierz NO z rejestrami połączonymi nie bezpośrednio, ale poprzez rejestry ustalające stan logiczny.

Dlaczego jest to potrzebne? Jest to konieczne, aby podczas ładowania rejestrów przesuwnych z MK w łańcuchu od jednego do drugiego z każdym sygnałem zegarowym na pinie 11, a jednocześnie było to obserwowane na matrycach LED, których wcale nie potrzebujemy, ponieważ obraz był oświetlony diodami LED nie w właściwe miejsca. Dlatego dodatkowe rejestry blokujące blokują wyprowadzanie informacji do macierzy podczas ładowania i aktualizacji danych dopiero po pojawieniu się sygnału zegarowego na pinach 12 do przodu z rejestrów przesuwnych do danych blokujących, a te z blokadą są przesyłane do macierzy.

Dane tablicy wyników, które tworzą cały obraz linii, pochodzą z MK od wyjścia 34 do wejścia rejestru 14 mikroukładu 74NS595 z pierwszego mikroukładu 74NS595 do drugich danych są przesyłane z wyjścia 9 do wejścia 14 i tak dalej przez łańcuch do ostatnich 20 mikroukładów.

Powtarzam, dane przesuwają się z każdym cyklem na wejściu 11 wszystkich mikroukładów 74NS595 wzdłuż łańcucha do najnowszego mikroukładu 74NS595, a po załadowaniu wszystkich 20 mikroukładów na rejestrach blokujących wyjścia 12 pojawia się cykl, aktualizując w ten sposób obraz całego wiersz, a nie cały wyświetlany obraz. Rzędy są aktualizowane za każdym razem po przejściu do niższego rzędu.

Przy montażu tablicy wyników bardzo wygodnie jest wykonać tablice z dwóch matryc 8x8 lub aby tablica zawierała dwie macierze z możliwością zwiększenia ilości tablic, podłączając pierwszą tablicę wyświetlacza do tablicy mikrokontrolera można mieć pewność, że działa bez reszty płytek wyświetlacza i dopiero po tym sprawdza kolejne płytki, dzięki czemu łatwiej będzie szukać wad i błędów lutowniczych.

Aby sprawdzić pierwszą tablicę wyświetlacza, należy podłączyć klawiaturę do tablicy MK, włączyć zasilanie, nacisnąć jedną lub więcej liter, wydać polecenie końca linii, aby tekst wpisać naciskając klawisz ENTER, wtedy linia będzie działać z niską prędkością, ponieważ prędkość działania również musi być regulowana przez naciśnięcie klawisza (-) do, aż stała z 5..1E zostanie zapisana w postaci szesnastkowej w pamięci 24C64.

Jeśli nie potrzebujesz ciągu o tak dużej długości składającego się z 20 matryc 8x8, to mogę wysłać Ci oprogramowanie układowe o mniejszej liczbie od 2 do 19, robi się to prosto i szybko.

Płytki wyświetlacza są okablowane pod matryce 6x6 centymetrów czerwonej poświaty z oznaczeniem QFT 2388ASR.Płytka mikrokontrolera wykonana pod warunkiem doposażenia o linię zegarową i termometr, ale ponieważ firmware do tego przypadku nie został ukończony , nie polecam dodawania przycisków aby nie spalić portu MK.

przyciski poleceń.

(Zmiana) – przycisk do przełączenia na wielkie litery, klikając na nią i puszczając, naciska się literę i wyświetla się wielka litera; jeśli naciśniesz następną literę bez uprzedniego naciśnięcia Shift, wyświetli się mała litera, czyli przed każdym wprowadzeniem Wielka litera musisz nacisnąć i zwolnić klawisz Shift.

(+ oraz - ) - te klawisze działają po włączeniu uruchomionej linii przed wpisaniem i dostosowują prędkość ruchu liter na tablicy wyników + zwiększa prędkość zmniejsza prędkość poruszania się liter.

Backspace- klawisz do kasowania tekstu podczas pisania, działa tylko w trybie pisania, wyświetlając usuniętą literę na tablicy wyników poprzez przesunięcie tekstu w lewo.

Wchodzić ten klawisz uruchamia linię uruchamianą po wpisaniu, wskazując koniec tekstu w pamięci 24C64 i mówi, że trzeba rozpocząć uruchamianie linii od początku od tego miejsca w tekście.

W przypadku nowego pisania należy wyłączyć i ponownie włączyć linię przewijania przy podłączonej klawiaturze, klawiszami plus i minus wybrać szybkość przewijania tekstu, a po pierwszym kliknięciu na literę tablica wyników jest czyszczona za pomocą pierwszego litera wyświetlana po prawej stronie linii, wpisywanie tekstu przesuwa się na lewą stronę, po czym naciska się klawisz Enter i linia przechodzi w tryb pracy bez odpowiadania na klawiaturę.

Aby ponownie wprowadzić tekst, należy pamiętać o włączaniu i wyłączaniu linii.

Ticker z zegarem, kalendarzem i pisaniem na klawiaturze PS/2

Linia biegnąca pokazuje czas godziny minuty sekundy dzień w liczbach, a miesiąc i dzień tygodnia w słowach, na przykładGODZINA 12.30.10 20 STYCZNIA ŚRODA.

Dokładnie ten sam ticker z pisaniem na klawiaturze ma tylko zegar z kalendarzem. W tej linii nie można zmienić ilości matryc LED, ponieważ wszystkie 20 z nich bierze udział w ustawianiu godziny, daty i miesiąca oraz dnia tygodnia.

Podczas pisania naciśnięcie lewego klawisza CTRL wstawia zegar z kalendarzem do tekstu na giełdzie. Ta linia ma te same funkcje, co poprzednie linie w PIC16F628 i PIC16F877 i jest sterowana w ten sam sposób.

Aby ustawić czas należy nacisnąć przycisk wyboru na płytce z mikrokontrolerem i pojawi się ekran ustawiania czasu, sekundy zaczynają migać przez naciśnięcie przycisku zmiany, sekundy są resetowane do zera. Ponownie naciskamy przycisk wyboru, minuty zaczynają migać przez naciśnięcie przycisku zmiany, zwiększamy minuty, tak samo z zegarem, datą, miesiącem i dniem tygodnia.

W ustawieniach czasu dzień tygodnia i miesiąc są wyświetlane jako liczby.

Oto nieco zmodyfikowany układ tej linii, tutaj dodano dwa przyciski z rezystorami podciągającymi do zmiany czasu i zegarem kwarcowym na 32768 Hz, oraz kolejny rezystor podciągający wejście kontrolera odpowiedzialne za wejście na klawiaturę.

Więcej stabilna praca Lepiej jest zasilać PIC16F877 przez rezystor 11 omów 0,25 W na dodatnim zasilaczu, aby zredukować szumy pochodzące z tranzystorów, które przełączają rzędy tablicy wyników.

Bieżnia z zegarem i termometrem na ulicę iw domu.

Linia pełzania działa na czujnikach DS1820 i pokazuje temperaturę w domu i na ulicy, wstawiając odczyty na tablicy wyników do tekstu linii pełzania.

Odczyty wyświetlane są w postaci napisu TEMPERATURA DOM 25.2 ULICA -12,4 odczyty temperatury mają dolny wskaźnik w postaci dziesiątej części stopnia.

Aby wstawić termometr do tekstu, naciśnij lewy klawisz ALT na klawiaturze komputera podłączonego do uruchomionej linii.

Zakres temperatur wyświetlanego termometru to -55 do 99 stopni, jednak nie zaleca się podgrzewania czujnika powyżej 70 stopni, aby uniknąć jego uszkodzenia.

Długość przewodu prowadzącego do czujnika na ulicy nie powinna przekraczać 4 metrów.

Istnieje oprogramowanie układowe z trzema ukraińskimi literami.
Sygnał alarmowy jest traktowany jako log 0 podczas sygnału z 38. pinu PIC16F877

Lista elementów radiowych

Przeznaczenie Typ Określenie Ilość NotatkaWynikMój notatnik
Schemat 1
IC MK PIC 8-bitowy

PIC16F877

1 Do notatnika
IC1 karta pamięci24C641 Do notatnika
IC2, IC3 rejestr przesuwny

CD74HC595

20 Do notatnika
VT1-VT8 tranzystor bipolarny

BD140

8 Do notatnika
C1, C2 Kondensator100 nF2 Do notatnika
C3, C4 Kondensator15 pF2 Do notatnika
C5 Kondensator3,3 nF1 Do notatnika
R1-R16, R18, R19, R21-R24, R30, R31 Rezystor

330 omów

24 Do notatnika
Rezystor

330 omów

144 Do notatnika
R26, R27 Rezystor

5,1 kΩ

2 Do notatnika
R28, R29 Rezystor

4,7 kΩ

2 Do notatnika
Cr1 Rezonator kwarcowy20.000 MHz1 Do notatnika
Matryca LED8x820 Do notatnika
złączePS/21 Do notatnika
Schemat 2
IC MK PIC 8-bitowy

PIC16F877

1 Do notatnika
IC1 karta pamięci24C641 Do notatnika
rejestr przesuwny

CD74HC595

20 Do notatnika
tranzystor bipolarny

BD140

8 Do notatnika
C2 Kondensator100 nF1 Do notatnika
C3, C4 Kondensator15 pF2 Do notatnika
C5 Kondensator3,3 nF1 Do notatnika
C6, C7 Kondensator33 pF2 Do notatnika
C8 kondensator elektrolityczny47uF1 Do notatnika
R18, R19, R21-R24, R30, R31 Rezystor

330 omów

24 Do notatnika
Rezystor

330 omów

144 Do notatnika
R26, R27, R32, R33 Rezystor

5,1 kΩ

4 Do notatnika
R29, R34, R35 Rezystor

4,7 kΩ

3 Do notatnika
R36 Rezystor

11 omów

1 Do notatnika
Cr1 Rezonator kwarcowy20.000 MHz1 Do notatnika
Cr2 Rezonator kwarcowy32768 Hz1 Do notatnika
S1, S2 Przycisk zegara 2 Do notatnika
Matryca LED8x820 Do notatnika
złączePS/21 Do notatnika
Schemat 3
IC MK PIC 8-bitowy

PIC16F877

1 Do notatnika
IC1 karta pamięci24C641 Do notatnika
rejestr przesuwny

CD74HC595

20 Do notatnika
czujnik temperatury

DS18B20

2





  • DS18b20) .
  • Druga opcja DS18b20) .

Wyświetlanie w trybie linii pełzającej - data, miesiąc, rok i dzień tygodnia.

Schemat ogólny.


- Po naciśnięciu Kn2 Kn2


Kn1Kn3 Kn2


UA-EN-RU .


ds 18 b 20 #1 lub #2.

Możliwe są rozwiązania schematyczne, z opcjami kombinacyjnymi do podłączenia czujników, poniżej przykłady opcji, z którymi ten program będzie działać poprawnie.

Zegarek Zegar + RF Zegar + RF + ds18b20



Zegar + ds18b20 (2szt) Oglądaj+ds18b20 Nadajnik RF



Schemat w proteusie

Firmware bootloadera ATmega328.)


BEZPIECZNIK, jeśli ktoś będzie używał programatora ICSP do oprogramowania układowegoATmega328 w tym obwodzie.

Ze zworkami Jp -1, Jp -2, Jp RF

1 sekunda.

2 sekundy.

4sek.

8sek.

16sek.

32sek.

64sek.

128sek.

Jp-1

Jp-2

Jp-3

bezpiecznik, ATtiny24a są zainstalowane na wewnętrznym oscylatorze MK - 8MHz.



w archiwum.

Czujnik radiowy do zegarów matrycowych, zasilany bateryjnie, schemat i firmware na forum.

DS18b20, RTCDS1307, czujnik światła, przyciski sterujące, zestaw RF -moduły i zasilacz 5 V (pobór prądu w szczytowych momentach przy maksymalnej jasności wynosi do 0,6A, a średnio 0,3A, można dodatkowo doładować z telefonu komórkowego, jeśli jest dostępny o odpowiednich parametrach)).
Jaki jest interes używaniaArduino Nano Atmega328.
Fakt, że na pokładzie tego szalika jest już modem z wyjściem mini USB, możesz bez większych trudności sflashować taki kontroler przez bootloader, używając komputera i przewodu telefonicznego do ładowania telefon komórkowy ze złączem mini USB.
Wszystko to można łatwo zrobić za pomocą prostego programu.XLloader.
Trochę więcej o doświadczeniu flashowania przez bootloader, opisany tutaj" Nano wolt - amperomierz 2 kanały. ".
W razie potrzeby wszystkie niezbędne moduły można kupić w okazyjnej cenie na Aliexpress.

MAX7219 matryca punktowa

Nano Atmega328

DS1307

DS18b20

Czujnik światła

Zasilacz

Po złożeniu zamówienia trochę cierpliwości, aż wszystkie te części dotrą pocztą, a możesz mieć pewność, że zmontujesz ten bardzo interesujący obwód z zegarem i termometrem.


Ogólnie rzecz biorąc, przy podstawowej podstawie myślę, że nie powinno być pytań, ponieważ tutaj wszystko jest standardowe.


Konstrukcja wyświetlacza typu pracy zegara - termometr, jest już wersją amatorską.
Program posiada trzy opcje projektowania działania zegara termometru.

  • Pierwsza opcja to naprzemienne wyświetlanie czasu (godziny i minuty), temperatury zewnętrznej i temperatury pokojowej (dwa czujniki)DS18b20) .

Wyświetlanie w trybie linii pełzającej - data, miesiąc, rok i dzień tygodnia.

  • Druga opcja wyświetlanie czasu (godziny i minuty), temperatury otoczenia (jeden czujnik)DS18b20) .

Wyświetlanie w trybie linii pełzającej - data, miesiąc, rok i dzień tygodnia.

  • Trzecia opcja, tylko zegar, wyświetlanie czasu (godziny i minuty),

wyświetlanie w trybie linii pełzającej - data, miesiąc, rok i dzień tygodnia (wyświetlanie temperatury jest wyłączone).

W rzeczywistości różnice między opcjami są niewielkie i polegają tylko na różnicach w wyświetlaniu temperatury na matrycy zegara termometru, prawie każda opcja może być potrzebna.


Schemat.


- Schemat wykorzystuje trzy przyciski sterujące, z krótkim naciśnięciem tych przycisków, jednorazową rotacją wskazań na ekranie głównym zegar - data - dzień tygodnia - temperatura.


- Po naciśnięciu Kn2 dłużej niż 2 sekundy, następuje wejście do menu ustawień (w menu naciśnięcie Kn2 dłużej niż 2 sek., wyjdź z menu ustawień).


- Po wejściu do menu użyj przycisków Kn1Kn3można dokonać korekty daty i godziny, odbywa się poruszanie się po menu Kn2 , zmieniany parametr zostanie odwrócony.


- Również w menu można w razie potrzeby ustawić korekcję niedokładności zegara, w ciągu dnia ± 9 sek.


- Następną pozycją w menu będzie wybór używanego języka, jedno oprogramowanie przewiduje używanie języków UA-EN-RU .


- Opcja animacji przedmiotu na ekranie, jedna z trzech opisanych na początku artykułu.


- Czujnik radiowy, po wybraniu wartości "0" czujnik radiowy nie jest używany w programie, po wybraniu 1 lub 2, na wyświetlaczu będą odbywać się odczyty temperatury z czujnika radiowego zamiast ds 18 b 20 #1 lub #2.

Zdjęcie zegara debugowanego na płytce prototypowej.

Schemat w proteusie

Schemat nadajnika dla tego zegarka.

Ze zworkami Jp -1, Jp -2, Jp -3, możesz wybrać częstotliwość transmisji; RF -moduł pakietów danych z temperaturą z czujnika nr 3.

1 sekunda.

2 sekundy.

4sek.

8sek.

16sek.

32sek.

64sek.

128sek.

Jp-1

Jp-2

Jp-3

(1 - zworka zamknięta, 0 - nie)

Płytka obwodu czujnika zegara i radiowego.

FUSE do pracy ATmega328 z bootloaderem (archiwum z Firmware bootloadera ATmega328.)

BEZPIECZNIK, jeśli ktoś będzie używał programatora ICSP do flashowania ATmega328 w tym obwodzie.

Firmware „Zegar - termometr na modułach matrycy”, płytki z obwodami drukowanymi, proteus, zarchiwizowane .