DIY elektronski kalendar sa satom. Kako napraviti svoj vlastiti digitalni sat u retro stilu

Hello geektimes! U prvom dijelu članka raspravljalo se o principima dobivanja tačnog vremena na ručnom satu. Idemo dalje i razmotrimo kako i na čemu je bolje prikazati ovaj put.

1. Izlazni uređaji

Dakle, imamo određenu platformu (Arduino, Raspberry, PIC/AVR/STM kontroler itd.), a zadatak je da na nju povežemo neku vrstu indikacije. Postoji mnogo opcija koje ćemo razmotriti.

Prikaz segmenta

Ovdje je sve jednostavno. Segmentni indikator se sastoji od običnih LED dioda, koje se jednostavno spajaju na mikrokontroler preko otpornika za gašenje.

Čuvajte se saobraćaja!

Prednosti: jednostavnost dizajna, dobri uglovi gledanja, niska cijena.
Protiv: Količina prikazanih informacija je ograničena.
Postoje dvije vrste dizajna indikatora, sa zajedničkom katodom i zajedničkom anodom unutar njih izgleda otprilike ovako (dijagram sa web stranice proizvođača).

Postoji 1001 članak o tome kako spojiti LED na mikrokontroler, Google može pomoći. Poteškoće počinju kada želimo da napravimo veliki sat - uostalom, gledanje u mali indikator nije posebno zgodno. Tada su nam potrebni sljedeći indikatori (fotografija sa eBaya):

Napajaju ih 12V i jednostavno neće raditi direktno iz mikrokontrolera. Tu nam u pomoć priskače mikrokolo. CD4511, samo za ovu svrhu. Ne samo da pretvara podatke iz 4-bitne linije u željene brojeve, već sadrži i ugrađeni tranzistorski prekidač za napajanje indikatora naponom. Dakle, u krugu će nam trebati napon "napajanja" od 9-12V, i poseban step-down pretvarač (na primjer L7805) za napajanje "logike" kola.

Matrični indikatori

U suštini, to su iste LED diode, samo u obliku 8x8 matrice. Fotografija sa eBaya:

Prodaju se na eBayu u obliku pojedinačnih modula ili gotovih blokova, na primjer 4 komada. Upravljanje njima je vrlo jednostavno - mikrokolo je već zalemljeno na module MAX7219, osiguravajući njihov rad i povezivanje s mikrokontrolerom pomoću samo 5 žica. Postoji mnogo biblioteka za Arduino, svako može pogledati kod.
Prednosti: niska cijena, dobri uglovi gledanja i svjetlina.
Protiv: niska rezolucija. Ali za zadatak zaključivanja, vremena je sasvim dovoljno.

LCD indikatori

LCD indikatori mogu biti grafički ili tekstualni.

Grafički su skuplji, ali vam omogućavaju da prikažete raznovrsnije informacije (na primjer, grafikon atmosferski pritisak). Tekstualni su jeftiniji i lakši za rad, omogućavaju i prikaz pseudo-grafike - moguće je učitavanje prilagođenih simbola u ekran.

Rad s LCD indikatorom iz koda nije težak, ali postoji određeni nedostatak - indikator zahtijeva mnogo kontrolnih linija (od 7 do 12) iz mikrokontrolera, što je nezgodno. Stoga su Kinezi došli na ideju kombiniranja LCD indikatora s i2c kontrolerom, što je na kraju bilo vrlo zgodno - za povezivanje su dovoljne samo 4 žice (fotografija sa eBaya).


LCD indikatori su prilično jeftini (ako ih kupite na eBayu), veliki, jednostavni za povezivanje i mogu prikazati razne informacije. Jedini nedostatak je što uglovi gledanja nisu veliki.

OLED indikatori

Oni su poboljšani nastavak prethodne verzije. Oni se kreću od malih i jeftinih sa dijagonalom od 1,1", do velikih i skupih. Fotografija sa eBaya.

Zapravo, dobri su u svemu osim u cijeni. Što se tiče malih indikatora, veličine 0,9-1,1" onda je (osim učenja rada sa i2c) teško naći bilo kakvu praktičnu upotrebu za njih.

Indikatori pražnjenja gasa (IN-14, IN-18)

Ovi indikatori su sada vrlo popularni, očito zbog "zvuka tople cijevi svjetlosti" i originalnosti dizajna.


(fotografija sa nocrotec.com)

Njihov dijagram povezivanja je nešto složeniji, jer Ovi indikatori koriste napon od 170V za paljenje. Pretvarač od 12V=>180V može se napraviti na mikrokolu MAX771. Za napajanje indikatora naponom koristi se sovjetski mikro krug K155ID1, koji je kreiran posebno za ovu svrhu. Cijena izdanja na samoproizvodnja: oko 500 rubalja za svaki indikator i 100 rubalja za K155ID1, svi ostali dijelovi, kako su pisali u starim časopisima, "nisu manjkavi." Glavna poteškoća ovdje je što su i IN-xx i K155ID1 odavno van proizvodnje, a možete ih kupiti samo na radio marketima ili u nekoliko specijaliziranih trgovina.

2. Odabir platforme

Manje-više smo shvatili ekran, ostaje nam samo da odlučimo koju je hardversku platformu najbolje koristiti. Ovdje postoji nekoliko opcija (ne razmišljam o domaćim, jer onima koji znaju kako usmjeriti ploču i lemiti procesor ne treba ovaj članak).

Arduino

Najlakša opcija za početnike. Gotova ploča je jeftina (oko 10$ na eBayu sa besplatnom dostavom) i ima sve potrebne konektore za programiranje. Fotografija sa eBaya:

Postoji ogroman broj različitih biblioteka za Arduino (na primjer, za iste LCD ekrane, module u realnom vremenu), Arduino je hardverski kompatibilan s raznim dodatnim modulima.
Glavni nedostatak: teškoća otklanjanja grešaka (samo preko konzole serijskog porta) i prilično slab procesor po modernim standardima (2KB RAM-a i 16MHz).
Glavna prednost: možete raditi puno stvari, praktički bez muke sa lemljenjem, kupovinom programatora i ploča za ožičenje, samo trebate povezati module jedan s drugim.

32-bitni STM procesori

Za one koji žele nešto snažnije, postoje gotove ploče sa STM procesorima, na primjer ploča sa STM32F103RBT6 i TFT ekranom. Fotografija sa eBaya:

Ovdje već imamo potpuno otklanjanje grešaka u punopravnom IDE-u (od svih različitih, najviše mi se dopao Coocox IDE), međutim, trebat će nam poseban ST-LINK programator-debugger sa JTAG konektorom (problem cijena je 20-40 dolara na eBayu). Alternativno, možete kupiti razvojnu ploču STM32F4Discovery, u koju je ovaj programator već ugrađen, i može se koristiti zasebno.

Raspberry PI

I na kraju, za one koji žele potpunu integraciju sa modernim svijetom, tu su jednopločni računari sa Linuxom, vjerovatno već svima poznati - Raspberry PI. Fotografija sa eBaya:

Ovo je punopravni računar sa Linuxom, gigabajtom RAM-a i 4-jezgarnim procesorom na ploči. Panel od 40 pinova nalazi se na ivici ploče, što vam omogućava da povežete razne periferne uređaje (pinovi su dostupni iz koda, na primjer u Pythonu, da ne spominjemo C/C++), tu je i standardni USB u obliku 4 konektora (možete povezati WiFi). Tu je i standardni HDMI.
Snaga ploče je dovoljna, na primjer, ne samo za prikaz vremena, već i za pokretanje HTTP servera za postavljanje parametara preko web sučelja, učitavanje vremenske prognoze putem interneta i tako dalje. Općenito, ima puno prostora za let mašte.

Postoji samo jedna poteškoća sa Raspberryjem (i STM32 procesorima) - njegovi pinovi koriste 3-V logiku, a većina vanjskih uređaja (na primjer LCD ekrani) radi na "staromodni" način od 5V. Naravno, možete ga spojiti na ovaj način, i u principu će funkcionirati, ali ovo nije baš ispravan način, i šteta je uništiti ploču od 50 dolara. Pravi put- koristite "konverter logičkog nivoa", koji košta samo 1-2 dolara na eBayu.
Fotografija sa eBaya:

Sada je dovoljno povezati naš uređaj preko takvog modula i svi parametri će biti konzistentni.

ESP8266

Metoda je prilično egzotična, ali prilično obećavajuća zbog kompaktnosti i niske cijene rješenja. Za vrlo malo novca (oko $4-5 na eBayu) možete kupiti ESP8266 modul koji sadrži procesor i WiFi na ploči.
Fotografija sa eBaya:

U početku su takvi moduli bili zamišljeni kao WiFi most za razmjenu preko serijskog porta, ali entuzijasti su napisali mnoge alternativne firmvere koji im omogućavaju rad sa senzorima, i2c uređajima, PWM-om itd. Hipotetički je sasvim moguće primiti vrijeme od NTP server i iznesite ga preko i2c na ekran. Za one koji žele povezati puno različitih perifernih uređaja, postoje posebne NodeMCU ploče s velikim brojem pinova, cijena je oko 500 rubalja (naravno na eBayu):

Jedini nedostatak je što ESP8266 ima vrlo malo RAM-a (u zavisnosti od firmvera, od 1 do 32 KB), ali to čini zadatak još zanimljivijim. Moduli ESP8266 koriste 3V logiku, tako da će vam gornji pretvarač nivoa također dobro doći.

Ovim je završen uvodni izlet u domaću elektroniku, autor svima želi uspješne eksperimente.

Umjesto zaključka

Na kraju sam odlučio da koristim Raspberry PI sa tekstualnim indikatorom konfigurisanim za rad sa pseudo-grafikom (što se pokazalo jeftinijim od grafičkog ekrana iste dijagonale). Slikao sam ekran radnog sata dok sam pisao ovaj članak.

Sat prikazuje tačno vreme preuzeto sa interneta, a vreme je ažurirano sa Yandexa, sve je to napisano na Pythonu i radi prilično dobro već nekoliko meseci. Istovremeno, na satu radi FTP server, koji omogućava (zajedno sa prosljeđivanjem portova na ruteru) da ažurira svoj firmver ne samo od kuće, već i sa bilo kojeg mjesta gdje postoji internet. Kao bonus, Raspberry resursi su u principu dovoljni za povezivanje kamere i/ili mikrofona sa mogućnošću daljinskog nadzora stana, ili za upravljanje raznim modulima/relejima/senzorima. Možete dodati sve vrste "dobroća", kao što je LED indikacija dolazne pošte i tako dalje.

PS: Zašto eBay?
Kao što vidite, cijene ili fotografije sa eBaya date su za sve uređaje. Žašto je to? Nažalost, naše prodavnice često žive po principu „kupljeno za 1 dolar, prodato za 3 dolara i živi od tih 2 procenta“. Kao jednostavan primjer, Arduino Uno R3 košta (u vrijeme pisanja) 3600 rubalja u Sankt Peterburgu i 350 rubalja na eBayu uz besplatnu dostavu iz Kine. Razlika je zaista reda veličine, bez ikakvog književnog preterivanja. Da, morat ćete čekati mjesec dana da preuzmete paket u pošti, ali mislim da se takva razlika u cijeni isplati. Međutim, ako nekome treba odmah i hitno, onda vjerojatno postoji izbor u lokalnim trgovinama, ovdje svako odlučuje za sebe.

Predstavljam Vašoj pažnji elektronski sat mikrokontrolera. Satni krug je vrlo jednostavan, sadrži minimum dijelova i mogu ga ponoviti početnici radio-amateri.

Dizajn je sastavljen na mikrokontroleru i satu realnog vremena DS1307. Kao indikator trenutnog vremena koristi se četvorocifreni indikator sa sedam segmenata. led indikator(ultra-sjaj, plavo obojeni sjaj, koji dobro izgleda u mraku, a istovremeno sat igra ulogu noćnog svjetla). Satom se upravlja pomoću dva dugmeta. Zahvaljujući upotrebi DS1307 čipa za sat realnog vremena, algoritam programa se pokazao prilično jednostavnim. Mikrokontroler komunicira sa satom realnog vremena preko I2C magistrale, a organiziran je softverom.

Dijagram sata:

Nažalost, postoji greška u dijagramu:
— MK terminali moraju biti povezani na baze tranzistora:
RV0 do T4, RV1 do T3, RV2 do T2, RV3 do T1
ili promijenite vezu tranzistorskih kolektora na cifre indikatora:
T1 do DP1….. T4 do DP4

Dijelovi koji se koriste u krugu sata:

♦ ATtiny26 mikrokontroler:

♦ sat realnog vremena DS1307:

♦ 4-cifreni LED indikator sa sedam segmenata – FYQ-5641UB-21 sa zajedničkom katodom (ultra-sjajno, plavo):

♦ kvarc 32,768 kHz, sa ulaznim kapacitetom od 12,5 pF (može se preuzeti sa matične ploče računara), tačnost sata zavisi od ovog kvarca:

♦ svi tranzistori su NPN strukture, možete koristiti bilo koji (KT3102, KT315 i njihovi strani analozi), ja sam koristio BC547S
♦ Stabilizator napona mikrokola tipa 7805
♦ svi otpornici snage 0,125 vati
♦ polarni kondenzatori za radni napon koji nije niži od napona napajanja
♦ rezervno napajanje DS1307 – 3V litijumska ćelija CR2032

Za napajanje sata možete koristiti bilo koji nepotreban punjač za mobitel (u ovom slučaju, ako je izlazni napon punjač unutar 5 volti ± 0,5 volti, dio kruga je stabilizator napona na mikrokrugu tipa 7805, može se isključiti)
Trenutna potrošnja uređaja je 30 mA.
Ne morate instalirati rezervnu bateriju za sat DS1307, ali tada, ako nestane struje, potrebno je ponovo postaviti trenutno vrijeme.
Štampana ploča uređaja nije data; dizajn je sastavljen u kućištu od neispravnog mehaničkog sata. LED (sa frekvencijom treptanja od 1 Hz, sa pina SQW DS1307) služi za razdvajanje sati i minuta na indikatoru.

Postavke mikrokontrolera su fabrička: frekvencija takta - 1 MHz, bitove FUSE ne treba dirati.

Algoritam rada sata(u Algoritam Builder):

1. Postavljanje pokazivača steka
2. Podešavanje tajmera T0:
— frekvencija SK/8
- prekidi prekoračenja (na ovoj unaprijed postavljenoj frekvenciji, prekid se poziva svake 2 milisekunde)
3. Inicijalizacija portova (pinovi PA0-6 i PB0-3 su konfigurisani kao izlaz, PA7 i PB6 kao ulaz)
4. Inicijalizacija I2C sabirnice (pinovi PB4 i PB5)
5. Provjera 7. bita (CH) nule registra DS1307
6. Omogućavanje globalnog prekida
7. Ulazak u petlju i provjera da li je neko dugme pritisnuto

Kada se uključi po prvi put ili ponovo uključi ako nema rezervnog napajanja za DS307, trenutno vrijeme se resetuje na originalnu postavku. U ovom slučaju: dugme S1 – za podešavanje vremena, dugme S2 – prelazak na sledeću cifru. Podešavanje vremena - sati i minute se upisuju u DS1307 (sekunde su postavljene na nulu), a SQW/OUT pin (7. pin) je konfigurisan da generiše kvadratne impulse frekvencije od 1 Hz.
Kada pritisnete dugme S2 (S4 - u programu), globalni prekid je onemogućen, program prelazi u potprogram za korekciju vremena. U ovom slučaju, pomoću dugmadi S1 ​​i S2, postavljaju se desetice i jedinice minuta, a zatim, od 0 sekundi, pritiskom na dugme S2 bilježi se ažurirano vrijeme u DS1307, rješava globalni prekid i vraća se na glavni program.

Sat je pokazao dobru tačnost, gubitak vremena mjesečno je bio 3 sekunde.
Da biste poboljšali preciznost, preporučuje se da povežete kvarc na DS1307, kao što je navedeno u tablici sa podacima:

Program je napisan u okruženju Algoritam Builder.
Koristeći program sata kao primjer, možete se upoznati s algoritmom za komunikaciju između mikrokontrolera i drugih uređaja putem I2C magistrale (svaka linija je detaljno komentarisana u algoritmu).

Fotografija sastavljen uređaj i štampanu ploču u .lay formatu od čitaoca sajta Anatolija Pilguka, na čemu mu veliko hvala!

Uređaj koristi: Tranzistori - SMD BC847 i CHIP otpornici

Prilozi uz članak:

(42,9 KiB, 3,233 pogodaka)

(6,3 KiB, 4,183 pogodaka)

(3,1 KiB, 2,662 pogodaka)

(312,1 KiB, 5,932 pregleda)


Druga verzija programa sata u AB (za one koji ne mogu preuzeti gornju)

(11,4 KiB, 1,947 pogodaka)

U ovom upute korak po korak Reći ću ti kako da to uradiš Zidni sat vlastitim rukama.

Karakteristike sata:

  • Veliki brojevi (svaki broj je približno jednak veličini A4 lista).
  • Tanki zidovi (mogu se umetnuti u okvir za slike).
  • Automatsko podešavanje u zavisnosti od jačine osvetljenja u prostoriji.
  • Namjensko dugme za ljetno računanje vremena.

Korak 1: Potrebni materijali


Ono što sam koristio za digitalni zidni sat sa velikim brojevima.

elektronika:

  • Arduino nano V3.0 (nažalost, pošto ne mogu priuštiti originalni Arduino, koristio sam kineski klon) - 150 rubalja.
  • Digitalni modul za mjerenje intenziteta svjetlosti Fotootpornik za Arduino - 60 rubalja.
  • DS3231 AT24C32 IIC memorijski modul za precizno vrijeme za Arduino - 60 rubalja.
  • DC-DC pretvarač LM2596, Izlazna snaga 1,23V-30V - 50 rubalja.
  • 4 metra LED trake WS2811 30 dioda/m - 700 rubalja. (jedan WS2811 kontroliše 3 LED čipa)

Ukupni troškovi elektronike: 900 rubalja.

Ostali materijali:

  • Termoskupljajuća cijev - 400 rubalja (33m na lageru)
  • 20 kom. Štampana ploča 5 x 7 cm - 200 rubalja.
  • 3 kom. Mikroprekidač - 60 rubalja.
  • Lemljenje - 50 rubalja
  • Flux - 50 rubalja.
  • UTP (neoklopljeni upredeni par) kabel
  • LCD font (http://www.dafont.com/lcd-lcd-mono.font) - besplatan.
  • Karton je besplatan u supermarketu.
  • Polistirenska ploča - 100 rubalja.

Kao i razni alati.

Korak 2: Priprema - Brojevi


  1. Preuzmite i instalirajte font za sat
  2. Otvorite Word ili neki drugi program i kreirajte predložak poput onog na prvoj fotografiji.
  • Veličina fonta ~ 800,
  • Font bijela sa crnim obrisom,
  • Sive trake na kojima će biti LED trake

Odštampajte predložak i izrežite pruge pomoćnim nožem (kao na drugoj fotografiji)

Korak 3: Priprema - rezanje kartona i LED trake

Koristeći digitalni predložak, izrežite karton na veličinu (ne zaboravite ostaviti mjesta za tačke između sati i minuta)

Ako vaše LED trake imaju konektor na svakom kraju (kao što je moj), isključite konektor i izrežite ih na 3 dijela.

Korak 4: Pričvrstite LED traku


Koristeći šablon, zalijepite LED traka na kartonu.

Ovo nije potrebno, ali sam olovkom označio gdje treba postaviti LED trake.

Mnogo je zgodnije zalijepiti ih kada vidite konačni oblik. Zahvaljujući tome primijetio sam da sam ostavio previše mjesta za tačke između brojeva i to na vrijeme ispravio.

Korak 5: Zalemite LED traku


Sada počinje dugi proces lemljenja.

Zalemite LED traku da formirate kontinuiranu traku. Obratite pažnju na redosled kojim su trake lemljene na fotografiji. Za tačke sam koristio jedan komad trake i zalijepio ga po sredini.

Boje koje sam odabrao:

  • Plava za zemlju
  • Zelena za podatke
  • Crvena za +12V

Korak 6: Instaliranje Arduina na PCB


Pokušao sam da skiciram u Fritzingu ali nisam mogao pronaći sve detalje :)

Dakle, prva fotografija prikazuje dijagram ožičenja, a druga fotografija pokazuje kako izgleda za mene.

Korak 7: LED provjera


Prije nego što otpremite kod (sa kojim ja nemam nikakve veze), obavezno instalirajte FastLED biblioteku.

Ako sve radi u redu, LED diode bi se trebale kretati kroz boje. Ako imate problema, prvo provjerite svoje lemljenje.

Fajlovi

Korak 8: Programirajte sat

Nakon nekog vremena uspio sam napraviti sat koji mi u potpunosti odgovara. Međutim, svako će pronaći nešto što se može poboljšati.

Kod je dobro komentiran, tako da ne bi trebalo biti problema s njim.

Sve poruke za otklanjanje grešaka su također komentirane.

Da biste promijenili boju koja se koristi, morate promijeniti varijablu u redu 22 (int ledColor = 0x0000FF; // Boja korištena (u heksadecimalnom)). Listu boja možete pronaći na dnu ove stranice

Nedavno se pojavila potreba za satom u kući, ali samo elektronskim, pošto ne volim satove, jer otkucavaju. Imam dosta iskustva u krugovima za lemljenje i jetkanje. Nakon što sam pretražio internet i pročitao literaturu, odlučio sam odabrati najviše jednostavan dijagram, pošto mi ne treba budilnik.

Odabrao sam ovu šemu jer je lak napravi svoj sat

Počnimo, pa šta nam je potrebno da bismo napravili sat vlastitim rukama? Pa, naravno, ruke, vještina (čak ni velika) u čitanju dijagrama kola, lemilice i dijelova. Evo kompletne liste onoga što sam koristio:

10 MHz kvarc – 1 kom., mikrokontroler ATtiny 2313, otpornici 100 oma – 8 kom., 3 kom. 10 kOhm, 2 kondenzatora od 22 pF, 4 tranzistora, 2 dugmeta, LED indikator 4-bitni KEM-5641-ASR (RL-F5610SBAW/D15). Instalaciju sam izvršio na jednostranoj štampanoj ploči.

Ali u ovoj šemi postoji mana: pinovi mikrokontrolera (u daljem tekstu MK), koji su odgovorni za kontrolu pražnjenja, primaju prilično pristojno opterećenje. Ukupna struja je mnogo veća od maksimalne struje porta, ali uz dinamičku indikaciju MK nema vremena da se pregrije. Kako bismo spriječili kvar MK, dodamo otpornike od 100 Ohma u krugove pražnjenja.

U ovoj shemi, indikator se kontrolira prema principu dinamičke indikacije, prema kojem se segmenti indikatora kontroliraju signalima s odgovarajućih izlaza MK. Brzina ponavljanja ovih signala je veća od 25 Hz i zbog toga se sjaj indikatorskih brojeva čini kontinuiranim.

Elektronski satovi napravljeni prema gornjoj shemi može prikazati samo vrijeme (sati i minute), a sekunde su prikazane tačkom između segmenata, koji treperi. Za upravljanje načinom rada sata u njegovoj strukturi su predviđeni prekidači na dugme, koji kontrolišu podešavanje sati i minuta. Ovo kolo se napaja iz napajanja od 5V. Tokom proizvodnje štampana ploča U krug je uključena 5V zener dioda.

Pošto imam napajanje od 5V, isključio sam zener diodu iz kola.

Za izradu ploče, kolo je primijenjeno pomoću željeza. Odnosno, štampano kolo je štampano na inkjet štampaču pomoću sjajnog papira; Nakon toga je izrezan tekstolit potrebne veličine. Moja veličina je ispala 36*26 mm. Tako mala veličina je zbog činjenice da su svi dijelovi odabrani u SMD paketu.

Ploča je nagrizana pomoću željeznog klorida (FeCl 3 ). Bakiranje je trajalo oko sat vremena, budući da je kada sa pločom bila na kaminu; Ali nemojte pretjerivati ​​s temperaturom.

Dok je trajao proces brisanja, da se ne bih razbijao i pisao firmware za sat, otišao sam na internet i našao ovaj dijagram firmware Kako flešovati MK se takođe može naći na internetu. Koristio sam programator koji flešuje samo ATMEGA MK.

I konačno, naša ploča je spremna i možemo započeti lemljenje naših satova. Za lemljenje vam je potreban lemilica od 25 W sa tankim vrhom kako ne bi spalili MK i ostale dijelove. Lemljenje vršimo pažljivo i po mogućnosti prvi put lemimo sve noge MK-a, ali samo odvojeno. Za one koji nisu upoznati, znajte da dijelovi napravljeni u SMD paketu imaju lim na terminalima za brzo lemljenje.

A ovako izgleda ploča sa zalemljenim dijelovima.

Predlažem za ponavljanje krug jednostavnog elektronskog sata sa budilnikom, napravljen na tipu PIC16F628A. Velika prednost ovog sata je LED indikator tipa ALS za prikaz vremena. Osobno, prilično sam umoran od svih vrsta LCD-a i želim da mogu vidjeti vrijeme s bilo kojeg mjesta u prostoriji, uključujući i mrak, a ne samo direktno uz dobro osvjetljenje. Krug sadrži minimum dijelova i ima odličnu ponovljivost. Sat je testiran mjesec dana, što je pokazalo njegovu pouzdanost i performanse. Mislim od svih šema na internetu, ova je najlakša za sastavljanje i pokretanje.

Šematski dijagram elektronskog sata sa budilnikom na mikrokontroleru:


Kao što se može vidjeti iz dijagrama sata, to je jedino mikrokolo koje se koristi u ovom uređaju. Za podešavanje taktne frekvencije koristi se kvarcni rezonator od 4 MHz. Za prikaz vremena koriste se crveni indikatori sa zajedničkom anodom. U slučaju korištenja piezo emitera, kondenzator C1 - 100 μF se može izostaviti.

Možete koristiti bilo koji indikator sa zajedničkom anodom, sve dok svaka znamenka ima svoju anodu. Kako biste bili sigurni da je elektronski sat jasno vidljiv u mraku i sa velike udaljenosti, pokušajte odabrati veći ALS.


Prikaz sata je dinamičan. U datom trenutku prikazuje se samo jedna znamenka, što vam omogućava značajno smanjenje trenutne potrošnje. Anodama svake cifre upravlja mikrokontroler PIC16F628A. Segmenti sve četiri cifre su spojeni zajedno i, preko otpornika za ograničavanje struje R1 ... R8, povezani na terminale MK porta. Pošto indikator svijetli vrlo brzo, treperenje brojeva postaje neprimjetno.


Trenutni tasteri se koriste za podešavanje minuta, sati i budilnika. Pin 10 se koristi kao izlaz za alarmni signal, a kaskada tranzistora VT1,2 se koristi kao pojačalo. Emiter zvuka je piezoelektrični element tipa ZP. Da biste poboljšali jačinu zvuka, možete ga zamijeniti malim zvučnikom.


Sat se napaja iz stabilizovanog izvora od 5V. Može se napajati i baterijama. Sat ima 9 modova prikaza. Prebacivanje između načina rada vrši se pomoću tipki “+” i “-”. Prije nego što se prikažu sama očitanja, na indikatorima se prikazuje kratak savjet o nazivu režima. Trajanje prikaza nagoveštaja je jedna sekunda.


Pomoću dugmeta "Ispravka" budilnik se prebacuje u režim podešavanja. U tom slučaju, kratkotrajni upit se prikazuje na pola sekunde, nakon čega podešena vrijednost počinje da treperi. Korekcija očitanja vrši se pomoću tipki “+” i “-”. Kada dugme pritisnete duže vreme, aktivira se režim automatskog ponavljanja na određenoj frekvenciji. Sve vrijednosti, osim sati, minuta i sekundi, upisuju se u EEPROM i vraćaju se nakon ciklusa napajanja.


Ako se u roku od nekoliko sekundi ne pritisne nijedno dugme, elektronski sat prelazi u režim prikaza vremena. Pritiskom na dugme "On/Off" budilnik se uključuje ili isključuje, ova radnja se potvrđuje kratkim zvukom. Kada je budilnik uključen, tačka u nižoj cifri indikatora svetli. Razmišljao sam o tome gdje da stavim sat u kuhinji i odlučio da ga montiram direktno šporet na plin:) Materijal poslao in_sane.


Diskutujte o članku ELEKTRONSKI BUDILNIK



Pročitajte također: