Sari la conținut
ELFORUM - Forumul electronistilor

Ceas de timp real (RTC) cu EM3027, PIC16F676 si afisaj HCMS2915


darius_bv

Postări Recomandate

Salutare!

Proiectul nu se incadreaza la nivelul complexitatii stabilit de dl. Sabac (odihneasca-se in pace...) pentru aceasta sectiune, ci dar pentru ca mai exista un subiect pe aceeasi tema si este mai usor de gasit, pentru amatorii de ceasuri. 

Nu m-a mai preocupat subiectul ceasurilor de peste 30 de ani, atunci cand l-am facut pe ultimul cu MMC351, la care i-am conceput o alarma setabila cu comutatoare binare si o sonerie de la un ceas de mana. Ma trezea in fiecare dimineata si pornea radioul pe stiri.

Colegul @gabi_lori (un adevarat pasionat de ceasuri de toate tipurile, incepand cu pendulele) m-a facut curios in a pune la treaba EM3027 (ceas de timp real), niste circuite foarte simpatice, cu o stabilitate remarcabila si consum extrem de mic (mult sub 1mA). Precizia este data de posibilitatea configurarii coeficientilor de variatie cu temperatura ai cuartului. Coroborat cu un cuart de buna calitate (+/- 5ppm, 3 lei bucata) rezulta un ceas excelent, pentru amatorii de acuratete. Afiseaza ora, data (corectie pentru ani bisecti) si temperatura mediului ambiant, cu o precizie de 1grdC. 

Toata schema consuma circa 45mA si functioneaza intr-o gama larga de tensiuni, 3..5V. Eu am folosit o celula de Li-Ion de la un aparat foto atat pentru alimentare de backup (pin3/EM3027) cat si alimentare generala, cand lipseste tensiunea de 5V. Doar pentru mentinerea in functiune a RTC se poate folosi si o baterie cu litiu de 3V.

Programarea orei/datei se face printr-un singur buton, in functie de cat timp este apasat, setarile facandu-se in ordinea: ore, minute, zi, luna, an, toate succesiv. Se poate renunta la urmatoarii parametri prin eliberarea butonului, daca de exemplu se doreste doar setarea orei si minutelor. Cu o apasare de peste 3 secunde se intra in mod programare, eliberarea scurta a butonului trece la urmatorul parametru. 

Afisarea datei/temperaturii se face succesiv, la intervale de 30secunde, pentru doar 2 secunde fiecare; in rest se afiseaza ora.  As fi vrut ca data sa fie afisata cu caractere (ex. 22 ian 2024) dar nu mi-au mai ramas libere decat cateva amarate de locatii de memorie si mi-a fost lene sa trec la un PIC mai performant. 

Poate candva...

 

 

data.jpg

ora.jpg

RTC cu EM3027 si PIC.jpg

temperatura.jpg

RTC cu EM3027 si PIC.hex

Acesta este dinozaurul din 1991.

old1.jpg

old2.jpg

Link spre comentariu
  • Răspunsuri 11
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • darius_bv

    9

  • sonic11

    2

  • cdinu332

    1

Top autori în acest subiect

Imagini postate

Acum 3 ore, darius_bv a spus:

Salutare!

Proiectul nu se incadreaza la nivelul complexitatii stabilit de dl. Sabac (odihneasca-se in pace...) pentru aceasta sectiune, ci dar pentru ca mai exista un subiect pe aceeasi tema si este mai usor de gasit, pentru amatorii de ceasuri. 

Nu m-a mai preocupat subiectul ceasurilor de peste 30 de ani, atunci cand l-am facut pe ultimul cu MMC351, la care i-am conceput o alarma setabila cu comutatoare binare si o sonerie de la un ceas de mana. Ma trezea in fiecare dimineata si pornea radioul pe stiri.

Colegul @gabi_lori (un adevarat pasionat de ceasuri de toate tipurile, incepand cu pendulele) m-a facut curios in a pune la treaba EM3027 (ceas de timp real), niste circuite foarte simpatice, cu o stabilitate remarcabila si consum extrem de mic (mult sub 1mA). Precizia este data de posibilitatea configurarii coeficientilor de variatie cu temperatura ai cuartului. Coroborat cu un cuart de buna calitate (+/- 5ppm, 3 lei bucata) rezulta un ceas excelent, pentru amatorii de acuratete. Afiseaza ora, data (corectie pentru ani bisecti) si temperatura mediului ambiant, cu o precizie de 1grdC. 

Toata schema consuma circa 45mA si functioneaza intr-o gama larga de tensiuni, 3..5V. Eu am folosit o celula de Li-Ion de la un aparat foto atat pentru alimentare de backup (pin3/EM3027) cat si alimentare generala, cand lipseste tensiunea de 5V. Doar pentru mentinerea in functiune a RTC se poate folosi si o baterie cu litiu de 3V.

Programarea orei/datei se face printr-un singur buton, in functie de cat timp este apasat, setarile facandu-se in ordinea: ore, minute, zi, luna, an, toate succesiv. Se poate renunta la urmatoarii parametri prin eliberarea butonului, daca de exemplu se doreste doar setarea orei si minutelor. Cu o apasare de peste 3 secunde se intra in mod programare, eliberarea scurta a butonului trece la urmatorul parametru. 

Afisarea datei/temperaturii se face succesiv, la intervale de 30secunde, pentru doar 2 secunde fiecare; in rest se afiseaza ora.  As fi vrut ca data sa fie afisata cu caractere (ex. 22 ian 2024) dar nu mi-au mai ramas libere decat cateva amarate de locatii de memorie si mi-a fost lene sa trec la un PIC mai performant. 

Poate candva...

 

 

data.jpg

ora.jpg

RTC cu EM3027 si PIC.jpg

temperatura.jpg

RTC cu EM3027 si PIC.hex 6 kB · 0 descărcări

Acesta este dinozaurul din 1991.

old1.jpg

old2.jpg

Felicitări!

Foarte interesant dar cu o singura obiecție, prețul afisorului HCMS2915 :rade:

Link spre comentariu
Acum 52 minute, darius_bv a spus:

...30 lei pe acest forum, am cumparat eu (verzi).

Multumesc!

Numai bine!

Știu dar nu te întâlnești mereu cu norocul asta.

In afara de treabă asta afișorul aste super fain.

Link spre comentariu

Am mai inghesuit un pic rutinele si-am facut loc in memorie pentru inca o facillitate: reglarea automata a stralucirii afisajului in functie de iluminarea ambianta. Este o functie foarte utila: afisajul se citeste perfect atat la soare, cat si noaptea, cand ochiul obisnuit cu intunericul are nevoie de un nivel de iluminare foarte scazut pentru a putea distinge caracterele (mai ales dupa un pahar-doua de vin...).  Am folosit un fototranziztor si o intrare ADC libera. Adaptarea stralucirii afisajului se face la 30 secunde. 

Ca urmare, consumul din baterie a scazut noaptea la 23mA; cu iluminarea la maxim ajunge la 125mA. 

Inca ma gandesc cum sa gasesc o procedura care sa-mi permita afisarea literelor pentru data, fara a schimba microcontrolerul. E doar o ambitie... sansele sunt mici, avand in vedere ca softul e scris in asembler si e foarte condensat. 

Daca e cineva interesat, pot sa-i dau noul soft si schema. 

Urmeaza adaptearea pentru tuburi Nixie... la cererea unui forumist pasionat. 

Link spre comentariu
  • 2 săptămâni mai târziu...

Si produsul finit. Pentru maxima mobilitate, alimentarea o fac din celule Li-ion recuperate din acumulatori de laptop. Doua celule de 2Ah ar trebui sa tina aproape doua saptamani. Incarcarea lor o fac din orice incarcator de telefon cu mufa micro-USB C (standard, am gasit mufe mama cu fir). Am conceput un indicator de acumulator descarcat cu TL431, LED-ul ilumineaza la tensiuni mai mici de 3.3V. Chiar daca ramane fara baterie, ceasul de timp real e elimentat din celula lui CR2032 si lucreaza in continuare. 

DSCN6753.jpg

DSCN6757.jpg

IMG_20240209_115610.jpg

IMG_20240209_120350.jpg

IMG_20240209_142010.jpg

IMG_20240209_183302.jpg

Link spre comentariu
  • 4 săptămâni mai târziu...

Si prima varianta de RTC cu tuburi Nixie: stralucirea acestor afisaje este pur si simplu... magica! (concluzie, inainte de Jidvei)

 

 

IMG-20240301-WA0002.jpg

IMG-20240304-WA0006.jpg

Link spre comentariu

Esti unul dintre puținii la care se vede o pasiune reală și materializată prin proiecte frumoase. 

Îmi place ceasul,  iar dacă vrei să îi faci o carcasă,  să fie transparenta. 

Zic și eu...

:101

Link spre comentariu

@cdinu332 ei... incerc sa-mi tin mintea ocupata. 

Da, mi-a mai sugerat cineva tipul de carcasa transparenta. Adevarul este ca ar trebui sa se construiasca mai usor. Se pot taia peretii din policarbonat cu laserul si iese perfect. 

Numai bine!

Link spre comentariu
  • 3 săptămâni mai târziu...

Si ultima varianta de RTC cu Nixie. Pentru ca pentru mine este importanta ziua saptamanii (luni, marti...) am atasat si un display HCMS2915. Mai are nevoie doar de o cutie transparenta. 

Iluminarea afisajelor se adapteaza in functie de iluminarea ambianta, in trei trepte. Convertorul DC/DC de inalta tensiune l-am facut clasic, un mic traf 2x12V cu priza mediana alimentat in contratimp prin doua tranzistoare MOS comandate de microcontroler. Are si protectie hardware;  decupleaza alimentarea trafului la lipsa semnalului de tact de 500Hz, altfel una din infasurari este alimentata permanent in curent continuu. 

Consuma 0.3A la o tensiune de alimentare de 16.5V. Tensiunea de 5V o obtin cu un MC34063A, un stabilizator liniar ar degaja caldura, influientand masurarea temperaturii RTC. 

 

Gata, am terminat cu ceasurile, trec la treburi serioase. 

 

 

In realitate, afisajele nu tremura, ca in filmultet. 

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări