21.07.2013 Views

Programare PIC16F84.pdf

Programare PIC16F84.pdf

Programare PIC16F84.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Această incrementare se face în fundalul a tot ceea ce face un microcontroler. Depinde de programator "să<br />

găsească o cale" de cum să profite de această caracteristică pentru nevoile lui. Una din căi este să crească o<br />

variabilă la fiecare depăşire a timer-ului. Dacă ştim cât timp are nevoie timer-ul să facă o rundă completă,<br />

atunci înmulţind valoarea variabilei cu acel timp obţinem timpul total scurs.<br />

PIC16F84 are un timer de 8 biţi. Numărul de biţi determină până la ce valoare contorizează timer-ul înainte de a<br />

începe să contorizeze de la zero din nou. În cazul unui timer de 8 biţi, acel număr este 256. O schemă<br />

simplificată a relaţiei dintre un timer şi un prescaler-divizor este reprezentată în diagrama anterioară.<br />

Prescalerul este numele acelei părţi din microcontroler ce divide ceasul oscilatorului înainte de a ajunge la logica<br />

ce creşte starea timer-ului. Numărul ce divide un ceas este definit prin trei biţi în registrul OPTION. Cel mai<br />

mare divizor este 256. Aceasta înseamnă de fapt că doar la al fiecare 256-lea ceas, valoarea timer-ului va creşte<br />

cu unu. Aceasta ne dă posibilitatea de a măsura perioade de timp mai lungi.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!