Sari la conținut
ELFORUM - Forumul electronistilor

pic 16f84a - termometru


dorelb

Postări Recomandate

Am reusit sa finalizez si eu ceasul [mai putin bateria de back-up].Ceva poze:Afisare Ora[attachment=3]Imagine1006-1.jpg[/attachment]Afisare Data[attachment=2]Imagine1005-1.jpg[/attachment]Afisare Temperatura[attachment=1]Imagine1007-1.jpg[/attachment]Montajul[attachment=0]Imagine1014-1.jpg[/attachment]Dupa ce l-am lasat sa functioneze de aseara de la ora 23 si pana acum , am impresia ca ramane in urma ceasul.Se poate modifica din setari ceva?Ramane sa testez si cu un termometru etalonat temperatura din camera, sa vad daca masoara corect temperatura.Eu am folosit senzor DS1820, simplu fara B sau S.

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

Top autori în acest subiect

  • dorelb

    246

  • marik2500

    97

  • GeoMar

    84

  • fratello

    69

Top autori în acest subiect

Imagini postate

Si ceasul realizat de mine ramane in urma, l-am urmarit si ramane cam cu 1 secunda pe zi, cred ca quartul e de proasta calitate, am sa incerc mai multe marci poate nimeresc unul mai precis si sa nu fie asa sensibil la variatii de temperatura. Deocamdata eu l-am setat cu 1 minut innainte pana am sa umblu la el.

Link spre comentariu

Si ceasul realizat de mine ramane in urma, l-am urmarit si ramane cam cu 1 secunda pe zi, cred ca quartul e de proasta calitate, am sa incerc mai multe marci poate nimeresc unul mai precis si sa nu fie asa sensibil la variatii de temperatura. Deocamdata eu l-am setat cu 1 minut innainte pana am sa umblu la el.

1sec pe zi inseamna 1 minut deviatie la doua luni...
Link spre comentariu

1. Nu cumva este vorba de rutina ceasului care nu este perfecta. Doar cu cuart de 4,096 MHz sau 12,288 MHz se poate face un calendar fara corectii zilnice. Eu din cate stiu nici-un caz nu este cu astfel de cuart.

Link spre comentariu

Eu faceam candva ceas electronic din revista Tehnium si foloseam cuartzul ala din ceasuri electronice de mana. Nu stiu de cat era! Precizia era de 1 secunda la 2-3 saptamani. Monteaza in loc de unul din cei 2 condensatori de la Quartz un C trimmer 5...25pF. Roteste-l pana obtii corectia dorita.

Link spre comentariu

Frumos lucrat Mai ales placa. O sa-mi cumpar si eu o imprimanta laser ca sa mi le fac cum vreau eu. In ce priveste intarzierea si al me face la fel. Eu nu consider o mare problema 1-2-3 sec pe zi. Ceasul de mai sus este ce se puneau pe DACIA noastra. Erau foarte exacte. Am si eu doua luate de la dezmembrari, le-am reparat si nu stiu ce sa fac cu ele. Le tin prin casa.

Link spre comentariu

Da, ai dreptate, dar este prezentata pe site, o setare a ceasului daca pierde/castiga secunde.

Tradus cu google ,de pe site, adica de aici http://www.bogdi.ro/electronics/digital ... dexfp.html

Cum funcţioneazăPostat de bogdi 10 februarie 2010» Prezentare generalăCând prima putere dispozitivul ceasul este mentained timp de 8 secunde. Apoi, la data de 2 secunde si temperatura va fi afişat timp de 3 secunde. Ceasul are patru butoane, cu un singur buton intraţi în modul stabilit, cu un alt buton va creşte valorile, al treilea buton vor fi utilizate pentru scăderea valorilor şi vă pot pune sau nu, de resetare. Dacă nu doriţi un buton de resetare conecta doar pini la 5 V.Puteţi schimba:oră>, 0-23 - honn - minut>, 0-59 (nu am putut afişa m asa ca am folosit n de două ori pentru el)zile data>, de la 1 la zile / lună - - dd> calculează pe baza lună şi andn - luna data> (JA FE | ° | A AP | ° | Y IC JL UA SE oc nu dE-sau-01 02 03 04 05 06 07 08 09 10 11 12, în funcţie de setarea dt)dy - anul data>, de la 0 sensul 2000-99 sensul 2099 (nu se afişează în timp / modul data, dar necesare pentru a calcula zile pe lună)DT - tip data> poate fi 1 sau 2, în cazul în care tipul de data este egal cu 1 atunci litere sunt folosite pentru luna, altfel numere sunt folositett - timp> in cateva secunde pentru a arăta timp / ceas, 2-99, nu puteţi seta 0 sau 1 pentru această setaretd - timp> in cateva secunde pentru a arăta data, 0-99, în cazul în care 0 este folosit apoi data nu este afişatTE - timp> in secunde pentru afişarea temperaturii, 0-99, în cazul în care 0 este utilizat atunci temperatura nu este afişatăSh -> calibra ceasul prin ajustarea doilea mare (vezi mai jos)Sl -> calibra ceasul prin ajustarea două mici (vezi mai jos)La stabilirea a doua zi de luni să ia în considerare luna şi anul şi zile / luna respectivă, în acel an. Nu puteţi seta 31 zile pentru luna februarie, de exemplu. Cele două puncte de mijloc nu sunt clipeşte atunci când data / temperatura sunt afişate şi, de asemenea, atunci când modul este setat pe. Dacă ambele TD şi TE sunt stabilite la 0 atunci timpul va fi singurul afişat. În cazul DS18S/B20 lipseşte puteţi seta TE la 0.[Settings]Setările implicite sunt salvate în memoria internă chip. Atunci când modificaţi ora / minute / .. toate dintre ele vor fi salvate. În cazul în care puterea este oprit nu va trebui sa le schimbe din nou, atunci când alimenta dispozitivul înapoi pe, probabil, doar timp / valorile data. Ceasul nu are o baterie şi nu va lucra în tăcere, dar cel puţin setările dvs. vor fi salvate (h / m / zz / dm / dY / dt / tt / td / te / sh / SL).[Clock Calibration 1]Ceasul poate fi calibrat prin intermediul software-ului. Acest lucru este util în cazul în care ceasul pierdut sau secunde câştiga într-o perioadă de timp. Acest lucru se poate întâmpla din diferite motive. Ideea este de a face în ultima secundă mai mult sau mai puţin. doua dureaza 1000000 microsecunde. Acesta este un număr mare de afişare mea unde eu pot scrie doar 4 numere, dar .. dacă ne reprezentăm acest număr în hexazecimal va avea această valoare:. 0F4240 Etalonari înseamnă aproximativ un milion de adaptare, aşa că am renunţat 0F, nu puteţi seta asta, dar puteţi ajusta 42 (Sh) şi 40 (SL) de la 00 la FF. Acest lucru vă oferă o posibilitate mare pentru a ajusta două dumneavoastră. Reglarea exemple: -> A pierdut 30 secunde / 24 ore => 30/86400 = 0.000347 1000000 - (1000000 * 0.000347) = 999653 (zecimal) = F40E5 (hexazecimal)Set => 40 pentru Sh şi E5 pentru Sl. -> Pierdut 2 secunde / 1 oră => 2 / 3600 = 0,000555 1000000 - (1000000 * 0.000555) = 999445 (zecimal) = F4015 (hexazecimal)Set => 40 pentru Sh şi 15 pentru Sl. - Câştig> 15 secunde / 60 zile => 15 / 5184000 = 0.000002 1000000 + (1000000 * 0.000555) = 1000002 (zecimal) = F4242 (hexazecimal)Set => 42 pentru Sh şi 42 pentru Sl.O mai lungă perioadă de timp, fiind testate va avea o precizie mai bună de ceas.[Clock Calibration 2]alt mod de a calibra ceasul este de reglare Sh şi mai ales Sl ca de mai jos. În primul rând trebuie să ştiţi două valori: una care face ca ceasul a alerga mai repede şi una care face ca ceasul rula mai lent. Să spunem noastre două valori sunt: 999840 (ceas rulează mai rapid = FAST) şi 999884 (ceas rulează mai lent = SLOW). Repetaţi schimbarea lungimii a doua (FAST + LENT) / 2 = până la FAST SLOW (+ / -1). Acest lucru ar trebui să facă ceasul foarte precise.
Deci se poate seta precizia ceasului, chiar daca nu folosim Q=4,096Mhz, asa cum a scris @puiu

Un lucru bun, zic eu, implementat in soft.

Ramane sa ma "joc" cu SI si SH pentru a regla precizia ceasului.

Referitor la schema ceasului postat de @marik2005, partea proasta este ca nu se mai gaseste MMC 351 si nu are incluse functiile de DATA si TEMPERATURA.

Numai bine.

Link spre comentariu

Da de ce nu are puncte intre ora si minute? Parca nu sti ce-i acolo cand te uiti. Data este afisata unele luni cu litere mari iar altele cum e si decembrie cu litere mici. Stiu de ce dar este urat!!! Mai bine fara data! Mai vreau acum sa-mi spuneti voi cum facem daca dorim sa pastram acest ceas dar sa-l afisam pe un afisaj mare (inaltime de la 200 mm in sus)cu leduri construit de noi. Va astept!!! :nebunrau:

Link spre comentariu

1. Fara a vrea sa intru in polemica dar il rog pe GeoMar sa citesca ce am scris cu mare atentie: ''Doar cu cuart de 4,096 MHz sau 12,288 MHz se poate face un calendar fara corectii zilnice.'' . Poate sa spuna ca a facut un ceas care face corectia la fiecare ciclu? In descrierea lui se fac corectii aleatoare in functie de pretentia care o ai de la dispozitiv. Dar dupa ce face corectia merge exact?

Link spre comentariu

1. Fara a vrea sa intru in polemica dar il rog pe GeoMar sa citesca ce am scris cu mare atentie: ''Doar cu cuart de 4,096 MHz sau 12,288 MHz se poate face un calendar fara corectii zilnice.'' . Poate sa spuna ca a facut un ceas care face corectia la fiecare ciclu? In descrierea lui se fac corectii aleatoare in functie de pretentia care o ai de la dispozitiv. Dar dupa ce face corectia merge exact?

Nici eu nu vreau sa intru in polemica. Am citit de Q 4,096 MHz sau 12,288 MHz, de aceea am scris.

Mai citisem pe undeva pe forum, ca trebuie Q = 4,096 Mhz pentru ceasuri [se divide exact].

Dupa ce fac corectia, sper sa mearga exact, ramane de testat.

Numai bine.

 

Da de ce nu are puncte intre ora si minute? Parca nu sti ce-i acolo cand te uiti.Data este afisata unele luni cu litere mari iar altele cum e si decembrie cu litere mici. Stiu de ce dar este urat!!! Mai bine fara data!

Se aprinde si punctul zecimal [afisajul nu are cele doua puncte] dintre ore si minute [clipeste], dar nu l-am "surprins" eu in foto.

 

Referitor la afisarea datei, daca se folosea acest tip de afisaj nu mai erau probleme, gen "unele luni cu litere mari iar altele cum e si decembrie cu litere mici".

[attachment=0]Afisaj.jpg[/attachment]

 

Daca cineva care se pricepe la programare si poate [vrea] sa modifice ASM-ul pentru astfel de afisaje, ar fi bine.

Link spre comentariu

Da, am gasit si eu setarile care se fac din butoane. Pana acum eu reglam cesul la luna o data. Este acelasi ceas ca si cel verde dar cu 2 digiti dubli + ledurile clipitoare intre ele. Am uitat. In coltul staga am pus un buton on/off pentru afisaj. Noaptea se poate stinge. Cei cu ochi mai buni vor vedea.

Link spre comentariu

@dorelb cum ai reusit tu cu bateria de 3v sa faci back-up [sa nu se deregleze ceasul] ca la mine NU merge, tot se deregleaza.Am incercat cu baterie noua si cu bateria de era pe placa de baza de unde am scos suportul.Pe baterie este alimentat si DS-ul, cred ca nu este asta cauza, l-am scos de pe placa si tot nu tine.

Link spre comentariu

Bateria de back-up se leaga direct pe pinii de alimentare a pic-ului Schema care ti-am dat-o o cuplezi cum vezi aici. Tot secretul este in cele doua diode 2N1448 cap in cap, care sa nu dea voie curentului sa mearga unde vrea el. O sa alimenteze doar pic-ul. afisajul ramane stins.

Link spre comentariu

Asa am conectat si eu bateria [cu cele 2 diode 1N4148 cap in cap], atat ca de la plus, pin 14, mai este alimentat si DS-ul [este scos momentan] si rezistenta de 4k7 [am pus 10k] si nu merge. Am sa "modific" cablajul sa ramana doar pic-ul alimentat, sa vedem daca merge.Mersi.

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