Sari la conținut
ELFORUM - Forumul electronistilor

pic 16f84a - termometru


dorelb

Postări Recomandate

Pai de obicei se porneste invers, de la frecventa de obtinut; se imparte la prescaler si se cauta cel mai bun numar (cuprins intre 0 si 255) care sa dea o impartire cat mai "intreaga". Numararea se va face cu acel numar, care se va scrie in registrul TMR0.

Exemplu in cazul de fata, cu prescaler 64:

1000000us / 64 = 15625.

15625 = 125 * 75.

Deci avem nevoie de 75 Ticks (ca sa folosesc terminologia din postul lui fratello de acum vreo 2 pagini), fiecare Ticks fiind obtinut din 64 de overflowri ale TMR0 in care incarcam (255 - 125) - TIMER0 genereaza 0verflow la trecerea din FF in 0, asadar trebuie sa incepem sa numaram mai tarziu; cum vrem sa numaram de 125 ori, incepem de la 255 - 125.

TIMER 0 trebuie reincarcat cu valoarea respectiva la fiecare trecere prin ISR.

Numarul respectiv mai trebuie eventualcorectat cu 2 (in documentatie scrie ca TMR0 e inactiv doua instructiuni dupa scrierea registrului).

 

LE O vatrianta mai sigura dar care presupune ceva modifiari hard si in programare ar fi folosirea Timer1 si unui quarz de ceas (~32 kHz) intre RB6 si RB7.

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

Montajul este gata facut. Trebuie sa adaug prin lipire al doilea senzor. Incerc. Arata ca mai sus (22_01_2011.jpg)

 

Ceea ce face un lucru valoros, este nu ceea ce ai tu de castigat facandu-l, ci ceea ce pierzi daca nu-l faci.

Link spre comentariu

Tot grabeste. De aseara de la 9 pana acum (12 ore) are 24 secunde avans. Senzorul din stanga arata cu 2*C mai mult decat cel de jos. Am schimbat senzorii intre ei si tot aceasi poveste. Nu sunt senzorii de vina.

 

 

Ceea ce face un lucru valoros, este nu ceea ce ai tu de castigat facandu-l, ci ceea ce pierzi daca nu-l faci.

Link spre comentariu

... Senzorul din stanga arata cu 2*C mai mult decat cel de jos.

Ceea ce face un lucru valoros, este nu ceea ce ai tu de castigat facandu-l, ci ceea ce pierzi daca nu-l faci.

Este prea aproape de PCB. Conecteaza-l prin fire de vreo 20 cm lungime si o sa indice ca celalalt.
Link spre comentariu

Am incarcat (end.rar) si la reglaj (ore-minute-luna-ziua) final sare la ora 12. Minutele le arata bine dar ora sare la 12 indiferent de ora de reglaj, 10,17,18,20, am incercat mai multe reglaje. Ai avut dreptate cu senzorul. Probabilca arata temperatura PCB-ului. Am mai depistat ceva, nu face trecerea de la 12:59:59 la ora 13:00:00.

 

 

Ceea ce face un lucru valoros, este nu ceea ce ai tu de castigat facandu-l, ci ceea ce pierzi daca nu-l faci.

Link spre comentariu

Daca conteaza. L1=A, L2=B, L3=C, L4=D, L5=E, L6=F, L7=G, de obicei se ia in ordine alfabetica. Punctul banuiesc ca are alta legatura (ar fi L8=DIP).

 

 

Ceea ce face un lucru valoros, este nu ceea ce ai tu de castigat facandu-l, ci ceea ce pierzi daca nu-l faci.

Link spre comentariu

o sa pun si hex ptr ceasul facut de mine

cine vrea am si digit mari de 100mm care corespunde cu mufele exact

L1,L2,L3 nu corespunde cu digiti a,b,c si o sa caut eu cum sunt legat

Hai te rog foarte mult ca am comandat deja piese pentru el, vreau ca intr-o luna maxim sa vi-l arat pus pe casa mea! LED-uri de 10mm nu ai? Unde este o sursa cu preturi mai mici?

 

MULTE MULTUMIRI !

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