Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows Phone
  • Uradi sam sat na mikrokontroleru. Jednostavan sat na mikrokontroleru Attiny2313

Uradi sam sat na mikrokontroleru. Jednostavan sat na mikrokontroleru Attiny2313

Ova budilica temelji se na čipu sata u stvarnom vremenu, koji mu omogućuje rad iz rezervnog izvora napajanja u nedostatku glavnog. Postavljeno vrijeme alarma i način rada pohranjuju se u trajnu memoriju mikrokontrolera. Način prikaza - 24 sata. Sadrži imitaciju "otkucavanja" Vrijeme i načini rada prikazani su LED indikatorima.

Princip rada

Osnova ovog sata je mikro krug DS1307 - sat u stvarnom vremenu koji razmjenjuje informacije s kontrolnim kontrolerom putem I2C sučelja. Označavanje vremena provodi se putem 4 7-segmentna indikatora koji rade u dinamičkom načinu rada. Unos i podešavanje vremena vrši se pomoću 5 gumba: “+ minute”, “+ sati”, “set”, “alarm” i “reset”. Zvučni signal budilice izlazi preko standardnog piezo emitera i radi se o signalu frekvencije 1 kHz sa sekundnim pauzama.

Atmega48 je odabran kao upravljački mikrokontroler zbog svoje dostupnosti i prisutnosti potrebnih periferija na ploči (čak i u višku). DS1307 sat realnog vremena spojen je na I2C hardverske izlaze upravljačkog mikrokontrolera. Za rad DS1307 u samostalnom načinu rada (u slučaju nestanka struje glavnog kontrolera), koristi se 3V litijska baterija za rezervno napajanje, koja će trajati nekoliko godina zbog male potrošnje energije čipa.

Pogledajmo pobliže kontrolni program:

Program radi na principu flag-timer stroja: sva stanja i događaji su predstavljeni u obliku odgovarajućih zastavica, koje se izvode u prekidima odgovarajućeg timera 1s, 1ms i 263.17ms. Program koristi 2 hardverska mjerača vremena.

Čip sata se ispituje i gumbi se pritišću u intervalu od 263,17 ms. Interval od 1 ms koristi se za generiranje zvučnog signala zvona, a 1 s za njegovu modulaciju. Drugi interval također kontrolira treptanje točke u 2. znamenki indikatora, odvajajući sate i minute i također služeći za formiranje "kvačice".
Pogledajmo shematski dijagram sata.

Oznake i denominacije:
S4 - Povećanje takta
S3 - Povećanje minuta
S2 - Instalacija
S1 - Uključi alarm
S5 - Reset

R6-R10 - 10k
R1-R5 - 510 ohma

Napon napajanja - 5 volti.

Postavljanje i korištenje

Ispravno sastavljen sat ne zahtijeva dodatno podešavanje. Samo trebate postaviti trenutno vrijeme i alarm.
Postavljanje trenutnog vremena je kako slijedi:
1) Tipkama S1 i S2 postavite trenutno vrijeme (točka između znamenki ne treperi)
2) Pokrenite sat tipkom S3
Postavljanje alarma:
1) Pritisnite S3 i uvjerite se da svijetli točka na 1. znamenki
2) Postavite vrijeme poziva pomoću gumba S1 i S2
3) Uključite poziv pomoću gumba S4
Dodatne mogućnosti:
Uključite otkucavanje - držite S4 i pritisnite S2 dok se ne pojave karakteristični zvukovi. Isključuje se na isti način.
Prikaz minuta i sekundi - držite S4 i pritisnite S1. Ako nakon toga pritisnete S3, sekunde će se resetirati na 00. Povratak - ista kombinacija.

Fotografije i video satova

Sat je sastavljen u kućište napravljeno od neradne "elektronike".


Kao što naziv govori, glavna svrha ovog uređaja je saznati trenutno vrijeme i datum. Ali ima mnogo drugih korisnih značajki. Ideja za njegovu izradu javila se nakon što sam naišao na polurazbijeni sat s relativno velikim (za ručni) metalnim kućištem. Mislio sam da bih tu mogao ubaciti sat kućne izrade čije su mogućnosti ograničene samo mojom vlastitom maštom i vještinom. Rezultat je bio uređaj sa sljedećim funkcijama:

1. Sat - kalendar:

    Brojanje i prikaz sati, minuta, sekundi, dana u tjednu, dana, mjeseca, godine.

    Dostupnost automatskog podešavanja trenutnog vremena, koje se izvodi svaki sat (maksimalne vrijednosti +/-9999 jedinica, 1 jedinica = 3,90625 ms.)

    Izračunavanje dana u tjednu iz datuma (za tekuće stoljeće)

    Automatski prijelaz između ljetnog i zimskog vremena (može se isključiti)

  • Prijestupne godine su uzete u obzir

2. Dvije neovisne budilice (zvuči melodija kada se aktivira)
3. Mjerač vremena s koracima od 1 sekunde. (Maksimalno vrijeme brojanja 99h 59m 59s)
4. Dvokanalna štoperica s rezolucijom brojanja od 0,01 sek. (maksimalno vrijeme brojanja 99h 59m 59s)
5. Štoperica s rezolucijom brojanja od 1 sekunde. (maksimalno vrijeme brojanja 99 dana)
6. Termometar u rasponu od -5°C. do 55°C (ograničeno rasponom temperature normalnog rada uređaja) u koracima od 0,1°C.
7. Čitač i emulator elektroničkih ključeva - tableti tipa DS1990 koji koriste Dallas 1-Wire protokol (memorija za 50 komada, koja već sadrži nekoliko univerzalnih "ključeva za sve terene") s mogućnošću pregleda koda ključa bajt po bajt .
8. IR daljinski upravljač (implementirana je samo naredba “Snimi sliku”) za digitalne fotoaparate “Pentax”, “Nikon”, “Canon”
9. LED svjetiljka
10. 7 melodija
11. Zvučni signal na početku svakog sata (može se isključiti)
12. Zvučna potvrda pritiska tipki (može se isključiti)
13. Praćenje napona baterije s funkcijom kalibracije
14. Podešavanje svjetline digitalnog indikatora

Možda je takva funkcionalnost suvišna, ali volim univerzalne stvari, plus moralno zadovoljstvo da će ovaj sat biti napravljen vlastitim rukama.

Shematski dijagram sata

Uređaj je izgrađen na mikrokontroleru ATmega168PA-AU. Sat otkucava prema mjeraču vremena T2, koji radi u asinkronom načinu rada od kvarcnog sata na 32768 Hz. Mikrokontroler je gotovo cijelo vrijeme u stanju mirovanja (indikator je isključen), budi se jednom u sekundi kako bi tu sekundu dodao trenutnom vremenu i ponovno zaspi. U aktivnom načinu rada, MK radi na internom RC oscilatoru na 8 MHz, ali interni prescaler ga dijeli s 2, kao rezultat toga, jezgra radi na 4 MHz. Za indikaciju se koriste četiri jednoznamenkasta LED digitalna sedmosegmentna indikatora sa zajedničkom anodom i decimalnom točkom. Tu je i 7 statusnih LED dioda čija je namjena sljedeća:
D1- Predznak negativne vrijednosti (minus)
D2- Znak štoperice koja radi (treperi)
D3- Znak uključenja prvog alarma
D4- Znak uključenja drugog alarma
D5- Znak zvučnog signala na početku svakog sata
D6- Znak uključenog mjerača vremena (treperi)
D7- Indikator niskog napona baterije

R1-R8 - otpornici za ograničavanje struje segmenata digitalnih indikatora HG1-HG4 i LED D1-D7. R12,R13 – razdjelnik za praćenje napona baterije. Budući da je napon napajanja sata 3V, a bijela LED D9 zahtijeva oko 3,4-3,8V pri nazivnoj potrošnji struje, ne svijetli punom snagom (ali dovoljno da se ne spotakne u mraku) pa se spaja bez struje. -ograničavajući otpornik. Elementi R14, Q1, R10 dizajnirani su za upravljanje infracrvenim LED D8 (implementacija daljinskog upravljanja za digitalne kamere). R19, ​​​​R20, R21 koriste se za uparivanje pri komunikaciji s uređajima koji imaju 1-Wire sučelje. Kontrola se vrši pomoću tri tipke, koje sam konvencionalno nazvao: MODE (način), UP (gore), DOWN (dolje). Prvi od njih također je dizajniran da probudi MK vanjskim prekidom (u ovom slučaju se uključuje indikacija), pa je zasebno spojen na PD3 ulaz. Pritisak preostalih gumba određuje se pomoću ADC-a i otpornika R16, R18. Ako se tipke ne pritisnu unutar 16 sekundi, MK odlazi u stanje mirovanja i indikator se gasi. Kada je u načinu rada “Daljinski upravljač za kamere” ovaj interval je 32 sekunde, a sa svjetiljkom - 1 minuta. MK se također može staviti u stanje mirovanja ručno pomoću upravljačkih gumba. Kada štoperica radi s rezolucijom brojanja od 0,01 sek. Uređaj ne prelazi u stanje mirovanja.

Isprintana matična ploča

Uređaj je sastavljen na obostrano tiskanoj pločici kružnog oblika do veličine unutarnjeg promjera kućišta ručnog sata. Ali u proizvodnji sam koristio dvije jednostrane ploče debljine 0,35 mm. Ova debljina opet je dobivena odvajanjem od dvostranog laminata od stakloplastike debljine 1,5 mm. Ploče su zatim zalijepljene. Sve je to učinjeno jer nisam imao tanki dvostrani fiberglas, a svaki milimetar debljine ušteđen u ograničenom unutarnjem prostoru kućišta sata je vrlo vrijedan, a nije bilo potrebe za poravnavanjem u izradi tiskanih vodiča pomoću LUT-a. metoda. Nacrt tiskane pločice i položaj dijelova nalaze se u priloženim datotekama. S jedne strane nalaze se indikatori i otpornici za ograničavanje struje R1-R8. Na poleđini su svi ostali detalji. Postoje dvije prolazne rupe za bijele i infracrvene LED diode.

Kontakti gumba i držač baterije izrađeni su od fleksibilnog opružnog čeličnog lima debljine 0,2...0,3 mm. i konzervirana. Ispod su fotografije ploče s obje strane:

Dizajn, dijelovi i njihova moguća zamjena

Mikrokontroler ATmega168PA-AU može se zamijeniti s ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Digitalni indikatori - 4 komada KPSA02-105 super-jarko crvenog sjaja s visinom znamenke od 5,08 mm. Može se isporučiti iz iste serije KPSA02-xxx ili KCSA02-xxx. (samo ne zelene - slabo će svijetliti) Ne znam za druge analoge sličnih veličina s pristojnom svjetlinom. U HG1, HG3, veza segmenata katode je drugačija od HG2, HG4, jer mi je bilo prikladnije za ožičenje tiskane ploče. U tom smislu, za njih se u programu koristi druga tablica generatora znakova. Korišteni otpornici i kondenzatori SMD za nadgradnu montažu standardne veličine 0805 i 1206, LED D1-D7 standardne veličine 0805. Bijele i infracrvene LED diode promjera 3 mm. Ploča ima 13 prolaznih rupa u koje se moraju ugraditi skakači. Kao senzor temperature koristi se DS18B20 s 1-Wire sučeljem. LS1 je obični piezoelektrični visokotonac, umetnut u poklopac. Jednim kontaktom je povezan s pločom pomoću opruge koja je na njoj ugrađena, drugim je spojen s tijelom sata pomoću samog poklopca. Kvarcni rezonator iz ručnog sata.

Programiranje, firmware, osigurači

Za programiranje unutar kruga, ploča ima samo 6 okruglih kontaktnih mjesta (J1), budući da puni konektor ne odgovara visini. Spojio sam ih na programator pomoću kontaktnog uređaja napravljenog od PLD2x3 utikača i opruga zalemljenih na njih, pritišćući ih jednom rukom na mjesta. Ispod je fotografija uređaja.

Koristio sam ga jer sam tijekom postupka otklanjanja pogrešaka morao mnogo puta ponovno bljeskati MK. Prilikom treptanja jednokratnog firmvera, lakše je zalemiti tanke žice spojene na programator na zakrpe, a zatim ih ponovno odlemiti. Pogodnije je treptati MK bez baterije, ali tako da napajanje dolazi ili iz vanjskog +3V izvora ili iz programatora s istim naponom napajanja. Program je napisan u asembleru u okruženju VMLAB 3.15. Izvorni kodovi, firmware za FLASH i EEPROM u aplikaciji.

FUSE bitovi mikrokontrolera DD1 moraju se programirati na sljedeći način:
CKSEL3...0 = 0010 - takt iz internog RC oscilatora 8 MHz;
SUT1...0 =10 - Vrijeme pokretanja: 6 CK + 64 ms;
CKDIV8 = 1 - djelitelj frekvencije za 8 je onemogućen;
CKOUT = 1 - Izlazni takt na CKOUT onemogućen;
BODLEVEL2…0 = 111 - kontrola napona napajanja je onemogućena;
EESAVE = 0 - brisanje EEPROM-a pri programiranju kristala je zabranjeno;
WDTON = 1 - Watchdog Timer nije uvijek uključen;
Preostale FUSE bitove najbolje je ostaviti netaknute. Bit FUSE je programiran ako je postavljen na “0”.

Potrebno je flešovanje EEPROM-a s dumpom uključenim u arhivu.

Prve ćelije EEPROM-a sadrže početne parametre uređaja. Tablica u nastavku opisuje namjenu nekih od njih, koja se može mijenjati u razumnim granicama.

Adresa ćelije

Svrha

Parametar

Bilješka

Količina napona baterije pri kojoj se javlja signal niske razine

260 (104 USD) (2,6 V)

koeficijent za korekciju vrijednosti izmjerenog napona baterije

vremenski interval za prebacivanje u stanje mirovanja

1 jedinica = 1 sek

vremenski interval za prebacivanje u stanje mirovanja kada je svjetiljka uključena

1 jedinica = 1 sek

vremenski interval za prebacivanje u način mirovanja kada je u načinu daljinskog upravljanja za kamere

1 jedinica = 1 sek

Ovdje su pohranjeni brojevi ključeva IButton

Mala objašnjenja o točkama:

1 bod. To označava razinu napona na bateriji pri kojoj će LED zasvijetliti, označavajući njegovu nisku vrijednost. Postavio sam ga na 2,6 V (parametar - 260). Ako vam treba nešto drugo, na primjer 2.4V, onda trebate napisati 240 ($00F0). Niži bajt je pohranjen u ćeliji na adresi $0000, a visoki bajt je pohranjen u $0001.

2 boda. Kako zbog nedostatka prostora na pločicu nisam ugradio promjenjivi otpornik za podešavanje točnosti mjerenja napona baterije, uveo sam softversku kalibraciju. Procedura kalibracije za točno mjerenje je sljedeća: u početku je koeficijent 1024 ($400) zapisan u ovoj EEPROM ćeliji, trebate prebaciti uređaj u aktivni način rada i pogledati napon na indikatoru, a zatim izmjeriti stvarni napon na bateriju s voltmetrom. Faktor korekcije (K) koji se mora podesiti izračunava se po formuli: K=Ur/Ui*1024 gdje je Ur stvarni napon izmjeren voltmetrom, Ui napon koji je izmjerio sam uređaj. Nakon izračuna koeficijenta “K” isti se unosi u uređaj (kao što je navedeno u uputama za uporabu). Nakon kalibracije, moja greška nije prelazila 3%.

3 boda. Ovdje možete postaviti vrijeme nakon kojeg će uređaj prijeći u stanje mirovanja ako se ne pritisne nijedan gumb. Moj košta 16 sekundi. Ako, na primjer, trebate zaspati za 30 sekundi, tada morate zapisati 30 (26 dolara).

U točkama 4. i 5. isto.

6 bodova. Na adresi $0030 pohranjen je nulti kod obitelji ključa (Dallas 1-Wire), zatim njegov 48-bitni broj i CRC. I tako 50 ključeva u nizu.

Postavljanje, značajke rada

Postavljanje uređaja svodi se na kalibriranje mjerenja napona baterije, kao što je gore opisano. Također je potrebno detektirati odstupanje takta sata za 1 sat, izračunati i unijeti odgovarajuću vrijednost korekcije (postupak je opisan u uputama za rad).

Uređaj se napaja litijskom baterijom CR2032 (3V) i troši približno 4 µA u stanju mirovanja, odnosno 5...20 mA u aktivnom načinu rada, ovisno o svjetlini indikatora. Uz dnevno petominutno korištenje aktivnog načina rada, baterija bi trebala trajati otprilike 2....8 mjeseci ovisno o svjetlini. Kućište sata spojeno je na minus baterije.

Očitavanje ključa testirano je na DS1990. Emulacija je testirana na METAKOM portafonima. Pod serijskim brojevima od 46 do 49 (zadnja 4) flešuju se univerzalni ključevi za portafone (svi ključevi su pohranjeni u EEPROM-u, mogu se mijenjati prije flashanja). Ključ registriran pod brojem 49 otvarao je sve METAKOM portafone na koje sam naišao, ostale univerzalne ključeve nisam imao priliku testirati, šifre sam im uzeo s mreže.

Daljinski upravljač za fotoaparate testiran je na modelima Pentax optio L20 i Nikon D3000. Canon nije bilo moguće dobiti za pregled.

Upute za upotrebu zauzimaju 13 stranica pa ih nisam uključio u članak, već sam ih stavio u prilog u PDF formatu.

Arhiva sadrži:
Shema u i GIF;
Crtanje tiskane pločice i raspored elemenata u formatu;
Firmware i izvorni kod u asembleru;

Popis radioelemenata

Oznaka Tip Vjeroispovijest Količina BilješkaDućanMoja bilježnica
DD1 MK AVR 8-bitni

ATmega168PA

1 PA-AU U bilježnicu
U2 senzor temperature

DS18B20

1 U bilježnicu
P1 MOSFET tranzistor

2N7002

1 U bilježnicu
C1, C2 Kondenzator30 pF2 U bilježnicu
C3, C4 Kondenzator0,1 µF2 U bilježnicu
C5 Elektrolitički kondenzator47 µF1 U bilježnicu
R1-R8, R17 Otpornik

100 Ohma

9 U bilježnicu
R9 Otpornik

10 kOhm

1 U bilježnicu
R10 Otpornik

8,2 Ohma

1 U bilježnicu
R11 Otpornik

300 Ohma

1 U bilježnicu
R12 Otpornik

2 MOhma

1 U bilježnicu
R13 Otpornik

220 kOhm

1 U bilježnicu
R14 Otpornik

30 kOhm

1 U bilježnicu
R15, R19 Otpornik

4,7 kOhm

2 U bilježnicu
R16 Otpornik

20 kOhm

1
Predlažem ponoviti krug elektroničkog sata na mikrokontroleru ATmega 8, s informacijama koje prikazuju velike LED diode. Sat ispravan, testiran. Firmware se trenutno dovršava. U tijeku je izrada veće ploče koja će biti na udaljenosti od 5 metara od glavnog bloka, a na glavnom bloku bit će i oznaka - duplikat velike ploče. Shematski dijagram LED sata prikazan je na slici - kliknite za povećanje.

Opis uređaja

1. Funkcije.
1.1 Sat. Format prikaza vremena je 24-satni. Digitalna korekcija točnosti poteza.


1.2 Termometar. Mjerenje temperature s dva senzora u rasponu -55,0 oC - 125,0 oC.


1.3 Alternativni prikaz informacija na indikatoru.
1.4 Upravljanje glavnim izvorom energije.
1.5 Korištenje trajne memorije mikrokontrolera za spremanje postavki i postavki kada je napajanje isključeno.
1.6 Tri gumba za instalaciju i konfiguraciju: PLUS, MINUS, SET.

Rad uređaja

Kada ga uključite prvi put, na zaslonu se pojavljuje reklamni pozdravni zaslon na 1 sekundu. Zatim prikaz vremena.
Kliknite na POSTAVI VRIJEME pomiče indikator u krugu iz glavnog moda sata (prikaz trenutnog vremena):
– način prikaza za minute i sekunde. Ako u ovom načinu rada istovremeno pritisnete gumb PLUS I MINUS, tada će se sekunde poništiti.
– postavljanje minuta trenutnog vremena.
– postavljanje točnog sata.
– iznos dnevne korekcije točnosti sata. Simbol c i vrijednost korekcije. Postavljanje ograničenja -25?25 sek. Odabrana vrijednost će se dodavati/oduzimati od trenutnog vremena svaki dan u 0 sati 0 minuta i 30 sekundi.
- simbol t. Postavite trajanje prikaza sata.
- simbol ja. Vrijeme prikaza za simbole prikaza unutarnje temperature ( int).
- simbol d. postavljanje vremena indikacije temperature s unutarnjeg senzora.
- simbol o. Vrijeme prikaza simbola indikacije vanjske temperature ( van).
- simbol u. podešavanje vremena indikacije temperature s vanjskog senzora.
- simbol P. postavljanje vremena prikaza reklamnog čuvara zaslona.
Postavljanje ograničenja za vrijeme prikaza 0-60 sek. Ako je postavljen na 0, ovaj parametar nije prikazan na indikatoru. Ako su svi parametri postavljeni na 0, indikator će pokazati sat.

Podešavanje sata

3.1 U svim načinima rada držite gumbe PLUS/MINUS Izvodi se brza montaža.
3.2 Ako su postavke promijenjene, 10 sekundi nakon zadnje promjene, nove vrijednosti bit će zapisane u trajnu memoriju (EEPROM) i očitat će se odatle kada se napajanje ponovno uključi. Indikator će se prebaciti na način glavnog vremena.
3.3 Nove postavke stupaju na snagu tijekom instalacije.

Kontrola snage

Mikrokontroler prati prisutnost glavnog napajanja. Kada je isključen, uređaj se napaja iz internog izvora. Kako bi se smanjila potrošnja struje, indikator, senzori i gumbi su isključeni. Sat nastavlja odbrojavati vrijeme. Kada se napajanje napaja iz glavnog izvora, vraćaju se sve funkcije.


Trenutno se razvijaju tiskane pločice, ispravlja se sklop i to se može raditi kolektivno. Ako imate ideje i prijedloge za poboljšanje sata, pišite na forumu. Autori dizajna: Aleksandrovich & SOIR (Soir&C.E.A)

Nudim dva vrlo jednostavna sklopa za samostalnu montažu, naime sat na PIC-u i AVR mikrokontroler. Osnova jednog sklopa je mikrokontroler AVR Attiny2313, a drugog PIC16F628A

Ovi sklopovi sata na mikrokontroleru uvelike će pomoći početnicima u radioamaterima da razumiju probleme rada i programiranja mikrokontrolera.

Pogledajmo pobliže ovaj jednostavan krug: Napajanje se može napajati iz tri AA baterije ili iz


Mikrokontroler Attiny2313 radi na kvarcu od 16 MHz. Kao brojač vremena, interni krug mikrokontrolera koristi 16-bitni mjerač vremena s djeliteljem na 256. Čim interni brojač izbroji do 625, javlja se prekid. Stoga ćemo imati prekide 100 puta u sekundi.

Vremenski interval se uzima u obzir u globalnim varijablama, a svaki prekid zahtijeva da se vrijednost milisekunde poveća za jedan. Čim broj milisekundi dosegne 100, trebate povećati vrijednost sekundi za jedan i vratiti milisekunde na nulu. I tako dalje u skladu s istim algoritmom do nekoliko desetaka sati, koji se resetiraju tek kada vrijednost dosegne 24 i bez povećanja sljedeće znamenke.

U skladu s tim principom kreiramo trenutnu vrijednost vremena zabilježenu u globalnim varijablama. Sada moramo vizualno prikazati ove podatke. Budući da mikrokontroler ima ograničen broj priključaka, koristit ćemo takvu značajku kao što je inercija digitalnog segmentnog indikatora sa15-11gwa. Katode njegovih indikatora spojene su paralelno, a anode imaju zasebno upravljanje, što vam omogućuje da u bilo kojem trenutku prikažete broj na bilo kojem od četiri indikatora.

Brzim prebacivanjem porta mikrokontrolera na koji su spojene sve katode i brzim prebacivanjem anoda, stvara se iluzija da su u indikatoru segmenta prikazane sve četiri znamenke, iako zapravo radi samo jedan od segmenata. Ako je trenutno vrijeme 11:57, tada prvo prikazujemo broj jedan na prvom indikatoru sata, nakon 1 ms prikazujemo broj 1 na drugom indikatoru, nakon još 1 ms prikazujemo 5 na 3. indikatoru, nakon 1 ms prikazujemo 7 na 4. indikatoru i tako dalje ciklički, ažurirajući svaki indikator nakon 1 ms.

Stanje tipki za upravljanje satom provjerava se na kraju svakog ciklusa prikaza oko 40 puta u sekundi.

S gornje poveznice preuzmite nacrt PCB-a napravljen u programu i firmware za mikrokontroler. i izravno o zamršenosti firmvera, pročitajte ovdje.

Ovaj dizajn, iako se temelji na drugom tipu mikrokontrolera, nije ništa manje složen od prethodnog sklopa.


Algoritam rada firmware-a također je jednostavan; arhiva sadrži vrlo detaljne komentare na programski kod. Dva preklopna prekidača kn1 i kn2 dizajnirana su za korekciju vremena - sati i minuta. Točnost sata ovisi o frekvenciji korištenog kvarca.

Strukturno, sat je izrađen na dvije tiskane ploče smještene jedna pored druge pod kutom od 90 stupnjeva. Indikator se nalazi na prvoj ploči, a sva ostala elektronika je na drugoj. Rezervno napajanje osiguravaju tri baterije smještene u držač od starog kineskog upaljača s LED diodom. Za napajanje iz AC mreže prikladna je bilo koja struja od 5V i 150mA.


Arhiva koju možete preuzeti na zelenoj poveznici sadrži izgled obiju tiskanih pločica u programu Sprint Layout i firmware za PIC mikrokontroler sa izvornim kodom programa za MP_LAB IDE, uz detaljne komentare.

A sam program također možete pronaći ovdje

Ovaj dizajn ima digitalnu korekciju točnosti hoda, kao i ugrađeni termometar, koji naizmjenično prikazuje očitanja temperature na LED zaslonu s točnim vremenom. Dizajn sata koristi trajnu memoriju mikrokontrolera koja sprema postavke i postavke čak i kada se izgubi vanjsko napajanje.


Za upravljanje anodama LED indikatora koriste se tranzistorski prekidači prema standardnom sklopnom krugu.

Kada ga uključite prvi put, na zaslonu se na jednu sekundu pojavljuje reklamni zaslon. Zatim se prikazuje vrijeme. Pritiskom na tipku SET_TIME indikator u krugu se prebacuje iz glavnog moda sata:

Apsolutno, u svim ćelijama, pritiskom na tipke PLUS/MINUS vrši se ubrzana instalacija. Ako je postavke promijenio korisnik, nakon 10 sekundi nove vrijednosti će biti pohranjene u trajnu memoriju mikrokontrolera i očitat će se. Prilikom treptanja MK firmvera, postavite ga na sljedeći način:


Vanjski dizajn uređaja možete procijeniti prema fotografijama u nastavku; šavove i dodatne datoteke za dizajn možete preuzeti s gornje veze.


Rasporedi smjena implementirani su u firmveru budilice: 4/5 (četiri na peti) – 4 dana u 1 smjeni, 1 slobodan dan, 4 dana u 2 smjene, 1 slobodan dan, 4 dana noću, 1 slobodan dan; – dan, noć, 2 dana odmora; Radnim danima – pon-pet - radni dani, sub-ned - zatvoreno; (Praznici se ne uzimaju u obzir); Dnevno.

Korisnik sam odabire vrstu rasporeda alarma i postavlja bilo koje vrijeme alarma. U opcijama 4/5 i dan, noć, 2 vikenda morate dodatno odabrati trenutnu smjenu.

Osim toga, sljedeće funkcije implementirane su u MK firmware: Prijelaz na ljetno-zimsko razdoblje; Podešavanje vremena; Ubrzavajući signal alarma; Prikaz nule u znamenkama sata i datuma

Krug sata temelji se na čipu sata DS1307 i mikrokontroleru MEGA8. Krug (smješten u arhivu s MK firmwareom i crtežima tiskanih ploča) dizajniran je za korištenje sedmosegmentnih digitalnih indikatora sa zajedničkom anodom za napon od 5V. (PAŽNJA! Zbog jednostavnosti, balastni otpornici nisu prikazani na dijagramu. Potrebno ih je ugraditi na svaki segment indikatora. Ukupno ima 112 komada. Nazivna vrijednost izračunata je prema dokumentaciji. Koristio sam segmentne indikatore kao što su fys15011 i fyd-5622. Ako koristite snažnije, tada najvjerojatnije bez Dodatni tranzistorski prekidači nisu potrebni.

Crtež tiskane ploče razvijen je za postojeću kutiju starog pokvarenog sata. Možete spojiti opterećenje male snage na konektor alarma, recimo glazbenu karticu, i koristiti kratkospojnik JP1 za isključivanje unutarnjeg zvučnog signala. Mikrokontroler se može flashirati izravno na ploči, što uvelike pojednostavljuje konfiguraciju u slučaju izmjene dizajna.

Podešavanje sata
Da biste to učinili, morate ući u način podešavanja parametara:
Parametar-Vrijednost-Spremi u memoriju
P.01 - SAT [-]
P.02 - MINUTE [-]
P.03 - DAN [-]
P.04 - MJESEC [-]
P.05 - GODINA [-]
R.06 - Vrsta alarma [+] (1-4/5; 2-5/8; 3-željeznički raspored; 4-dnevno)
P.07 - PROMJENA [+]
P.08 - Bud.1.HH [+]
P.09 - Bud.1.MM [+]
P.10 - Bud.2.CHH [+]
P.11 - Bud.2.MM [+]
P.12 - Bud.3.CHH [+]
P.13 - Bud.3.MM [+]
P.14 - Podešavanje (D.H) [+]
P.15 - Razdoblje ljeto/zima [+]
P.16 - Ubrzani biper [+]
P.17 - Prikaz vodeće nule u znamenki sata [+]
P.18 - Prikaz vodeće nule u znamenki datuma [+]

Postavka alarma: Gumb za uključivanje/uključivanje alarma. - On/On se provodi, u ovom slučaju: S tipom alarma 1: Alarm 1 - 1. smjena; Bud.2 - pomak; Bud.3 - 3. smjena;
Raspored smjena: 1,2,3,4 - prva smjena; 5 - slobodan dan; 6,7,8,9 - druga smjena; 10 - slobodan dan; 11,12,13,14 - 3. smjena; 15.16 - slobodan dan; Zatim se dani ponavljaju.
Kod prve vrste alarma 2: Alarm 1 - postavlja vrijeme alarma; Bud.2, Bud.3 - ne radi; Raspored smjena: Radnim danima.
S trećom vrstom alarma: Alarm 1 - postavljeno je doba dana; Bud.2 - postavlja vrijeme noću; Bud.3 - ne radi;
Raspored smjena: – dan, noć, 2 dana odmora;. Kada je vrsta alarma 4 Alarm 1, Alarm 2, Alarm 3, vrijeme je postavljeno; Ako planirate koristiti samo jednu budilicu, postavite vremena tri na isto vrijeme.
Sa rasporedom smjena: dnevno. Ako pritisnete tipke za isključivanje alarma. u načinu podešavanja parametara, postavke će biti izašle bez spremanja.
Podešavanje: Prilikom podešavanja koristi se sljedeća metoda: +/- Ch.D, gdje je: Ch broj podešenih sekundi po satu (maksimalno 9). D - sekunde prilagođene po danu. PAŽNJA! Nema podešavanja kada je napajanje isključeno. Kada ga uključite, provjerite je li vrijeme točno.

Ovaj sat je već nekoliko puta recenziran, ali nadam se da će vam i moja recenzija biti zanimljiva. Dodan opis posla i upute.

Dizajner je kupljen na ebay.com za 1,38 funti (0,99+0,39 shipping), što je ekvivalentno 2,16 dolara. U trenutku kupnje ovo je najniža ponuđena cijena.

Isporuka je trajala oko 3 tjedna, set je došao u običnoj plastičnoj vrećici, koja je pak pakirana u malu vrećicu s mjehurićima. Na terminalima indikatora bio je mali komad pjene; ​​ostali dijelovi su bili bez ikakve zaštite.

Od dokumentacije postoji samo mali A5 list papira s popisom radio komponenti s jedne strane i shemom strujnog kruga s druge strane.

1. Dijagram električnog kruga, korišteni dijelovi i princip rada



Osnova ili “srce” sata je 8-bitni CMOS mikrokontroler AT89C2051-24PU opremljen sa 2kb Flash programabilnim i brisljivim ROM-om.
Čvor generatora takta sastavljen prema shemi (sl. 1) i sastoji se od kvarcnog rezonatora Y1, dva kondenzatora C2 i C3, koji zajedno tvore paralelni oscilatorni krug.


Promjenom kapaciteta kondenzatora možete u malim granicama promijeniti frekvenciju generatora takta i, sukladno tome, točnost sata. Slika 2 prikazuje varijantu kruga generatora takta s mogućnošću podešavanja greške takta.

Početni čvor resetiranja služi za postavljanje internih registara mikrokontrolera u početno stanje. Služi za napajanje, nakon priključenja napajanja, na 1 pin MK jednog impulsa u trajanju od najmanje 1 μs (12 taktnih perioda).
Sastoji se od RC kruga koji čine otpornik R1 i kondenzator C1.

Ulazni krug sastoji se od tipki S1 i S2. Softver je napravljen tako da kada jednom pritisnete bilo koju od tipki, u zvučniku se čuje jedan signal, a kada ga držite, čuje se dupli signal.

Prikazni modul sastavljen na četveroznamenkasti sedmosegmentni indikator sa zajedničkom katodom DS1 i otporničkim sklopom PR1.
Otporni sklop je skup otpornika u jednom kućištu:


Zvučni dio Krug je sklop sastavljen pomoću otpornika R2 od 10 kOhm, pnp tranzistora Q1 SS8550 (koji djeluje kao pojačalo) i piezoelektričnog elementa LS1.

Prehrana napaja se preko konektora J1 s paralelno spojenim kondenzatorom za izravnavanje C4. Raspon napona napajanja od 3 do 6V.

2. Sastavljanje konstruktora

Sastavljanje nije izazvalo nikakve poteškoće, na ploči je pisalo gdje koje dijelove lemiti.

Puno slika - sklop dizajnera skriven je ispod spojlera

Počeo sam sa utičnicom, jer ona jedina nije radio komponenta:

Sljedeći korak je bio lemljenje otpornika. Nemoguće ih je zbuniti, oba su 10 kOhm:


Nakon toga, instalirao sam na pločicu, poštujući polaritet, elektrolitski kondenzator, sklop otpornika (također obraćajući pažnju na prvi pin) i elemente generatora takta - 2 kondenzatora i kvarcni rezonator

Sljedeći korak je lemljenje gumba i kondenzatora filtera za napajanje:

Nakon ovoga, vrijeme je za zvučni piezoelektrični element i tranzistor. Glavna stvar u tranzistoru je instalirati ga na ispravnu stranu i ne zbuniti terminale:

Na kraju, lemim indikator i konektor napajanja:

Spojio sam ga na izvor od 5V. Sve radi!!!


3. Postavljanje trenutnog vremena, alarma i signala po satu.

Nakon uključivanja napajanja, zaslon je u načinu rada "SATI: MINUTE" i prikazuje zadano vrijeme od 12:59. Zvučni signal svakog sata je uključen. Oba alarma su uključena. Prvi je zakazan za rad u 13:01, a drugi u 13:02.


Svaki put kada nakratko pritisnete tipku S2, zaslon će se mijenjati između načina (“SATI: MINUTE”) i (“MINUTE: SEKUNDE”).
Kada pritisnete tipku S1 duže vrijeme, ulazite u izbornik postavki koji se sastoji od 9 podizbornika, označenih slovima A, B, C, D, E, F, G, H, I. Podizbornici se izmjenjuju pomoću Tipka S1, vrijednosti se mijenjaju tipkom S2. Nakon podizbornika I slijedi izlazak iz izbornika postavki.

O: Postavljanje trenutnog sata
Kada pritisnete tipku S2, vrijednost sata se mijenja od 0 do 23. Nakon postavljanja sata, morate pritisnuti S1 za odlazak u podizbornik B.

B: Postavljanje minuta trenutnog vremena


C: Uključite zvučni signal svakog sata
Zadana postavka je UKLJUČENO – svaki sat od 8:00 do 20:00 čuje se zvučni signal. Pritiskom na tipku S2 mijenja se vrijednost između ON i OFF. Nakon postavljanja vrijednosti, morate pritisnuti S1 za odlazak u podizbornik D.

D: Uključite/isključite prvi alarm
Prema zadanim postavkama, alarm je UKLJUČEN. Pritiskom na tipku S2 mijenja se vrijednost između ON i OFF. Nakon postavljanja vrijednosti, morate pritisnuti S1 za prelazak na sljedeći podizbornik. Ako je alarm isključen, podizbornici E i F se preskaču.

E: Postavljanje prve budilice
Kada pritisnete tipku S2, vrijednost sata se mijenja od 0 do 23. Nakon postavljanja sata, morate pritisnuti S1 za odlazak u podizbornik F.

F: Postavljanje minuta prvog alarma
Kada pritisnete tipku S2, vrijednost minuta se mijenja od 0 do 59. Nakon postavljanja minuta, morate pritisnuti S1 za odlazak u podizbornik C.

G: Uključite/isključite drugu budilicu
Prema zadanim postavkama, alarm je UKLJUČEN. Pritiskom na tipku S2 mijenja se vrijednost između ON i OFF. Nakon postavljanja vrijednosti, morate pritisnuti S1 za prelazak na sljedeći podizbornik. Ako je alarm isključen, podizbornici H i I se preskaču i izlazi se iz izbornika postavki.

H: Postavljanje druge budilice
Kada pritisnete tipku S2, vrijednost sata se mijenja od 0 do 23. Nakon postavljanja sata, morate pritisnuti S1 za odlazak u podizbornik I.

I: Postavljanje minuta drugog alarma
Kada pritisnete tipku S2, vrijednost minuta se mijenja od 0 do 59. Nakon postavljanja minuta, morate pritisnuti S1 za izlaz iz izbornika postavki.

Ispravak sekundi
U načinu rada (“MINUTE: SEKUNDE”), morate držati pritisnutu tipku S2 za resetiranje sekundi. Zatim kratko pritisnite gumb S2 za početak odbrojavanja sekundi.

4. Opći dojmovi o satu.

Prednosti:
+ Niska cijena
+ Jednostavna montaža, minimum dijelova
+ Zadovoljstvo samomontaže
+ Prilično mala pogreška (kasnio sam nekoliko sekundi tijekom dana)

minusi:
- Ne bilježi vrijeme nakon isključivanja
- Nedostatak bilo kakve dokumentacije osim dijagrama (ovaj je članak djelomično riješio ovaj nedostatak)
- Firmware u mikrokontroleru je zaštićen od čitanja

5. Dodatno:

1) Na beskrajnim prostranstvima interneta pronašao sam upute za ovaj sat na engleskom i preveo ih na ruski. Možete ga preuzeti

Najbolji članci na temu