Mnogi od primjene mikrokontrolera zahtijevaju brojanje vanjskih događaja kao što su frekvencija impulsnih vlakova i generiranje preciznih internih kašnjenja između radnji računala. Oba se zadatka mogu implementirati softverskim tehnikama, ali softverske petlje za brojanje i vremensko određivanje neće dati točan rezultat, nego se važnije funkcije ne rade. Da bi se izbjegli ovi problemi, mjerači vremena i brojači u mikrokontrolerima su bolja opcija za jednostavne i jeftine programe. Ovi mjerači vremena i brojači koriste se kao prekida u 8051 mikrokontroleru .
Postoje dva 16-bitna odbrojavanja i brojači 8051 mikrokontroler : timer 0 i timer 1. Oba se tajmera sastoje od 16-bitnog registra u kojem je donji bajt pohranjen u TL, a viši bajt pohranjen u TH. Odbrojavanje se može koristiti kao brojač, kao i za mjerenje vremena koje ovisi o izvoru impulsa takta na brojačima.
Tajmeri i brojači
Brojači i mjerači vremena u mikrokontroleru 8051 sadrže dva posebna registra funkcija: TMOD (Timer Mode Register) i TCON (Timer Control Register), koji se koriste za aktiviranje i konfiguriranje mjerači vremena i brojači .
Kontrola načina odbrojavanja (TMOD): TMOD je 8-bitni registar koji se koristi za odabir odbrojavanja ili brojača i načina odbrojavanja. Donji 4-bitovi koriste se za nadzor rada timera 0 ili brojača0, a preostali 4-bita koriste se za upravljanje radom tajmera1 ili brojača1.Ovaj je registar prisutan u SFR registru, adresa za SFR registar je 89. mjesto.
Kontrola načina odbrojavanja (TMOD)
Vrata: Ako je bit vrata postavljen na '0', tada možemo pokrenuti i zaustaviti tajmer 'softvera' na isti način. Ako je vrata postavljena na '1', tada možemo izvršiti hardverski tajmer.
C / T: Ako je C / T bit '1', tada djeluje kao način brojača, i slično kada je postavljen C +
= / T bit je '0', on djeluje kao način odbrojavanja.
Bitovi za odabir načina: M1 i M0 su bitovi za odabir načina rada koji se koriste za odabir operacija timera. Postoje četiri načina rada s timerima.
Način 0: Ovo je 13-bitni način rada što znači da se tajmer završava s impulsima '8192'.
Način 1: Ovo je 16-bitni način rada, što znači da se rad odbrojavanja dovršava s maksimalnim impulsima sata '65535'.
Način 2: Ovaj način rada je 8-bitni način automatskog ponovnog učitavanja, što znači da se tajmer završava sa samo '256' impulsa sata.
Način 3: Ovaj način rada je način odvojenog odbrojavanja, što znači učitavanje vrijednosti u T0 i automatski pokreće T1.
Bitovi za odabir načina
Odabir načina Vrijednosti mjerača vremena i brojača u 8051
Vrijednosti odabira načina rada brojača i brojača
Registar kontrole vremena (TCON): TCON je drugi registar koji se koristi za kontrolu rada brojača i odbrojavanja u mikrokontrolerima. To je 8-bitni registar u kojem su četiri gornja bita odgovorna za tajmere i brojače, a donji bitovi odgovorni za prekide.
Registar kontrole vremena (TCON)
TF1: TF1 je kratica za bit oznake ‘timer1’. Kad god izračunavaju vremensko kašnjenje u timeru1, TH1 i TL1 automatski dosežu maksimalnu vrijednost koja je 'FFFF'.
PRIMJER: dok (TF1 == 1)
Kad god je TF1 = 1, očistite bit zastavice i zaustavite tajmer.
TR1: TR1 označava startni ili zaustavni bit timera1. Pokretanje ovog odbrojavanja može se izvršiti putem softverskih uputa ili putem hardverske metode.
EX: gate = 0 (startni timer 1 kroz softverske upute)
TR1 = 1 (tajmer pokretanja)
TF0: TF0 označava bit-oznaku 'timer0'. Kad god se izračuna vremensko kašnjenje u timeru1, TH0 i TL0 automatski dosegnu maksimalnu vrijednost koja je 'FFFF'.
Npr: dok (TF0 == 1)
Kad god je TF0 = 1, očistite bit zastavice i zaustavite tajmer.
TR0: TR0 je kratica za 'timer0' start ili stop bit koji ovaj timer može započeti putem softverskih uputa ili putem hardverske metode.
EX: gate = 0 (startni timer 1 kroz softverske upute)
TR0 = 1 (Tajmer pokretanja)
Izračuni vremenskog kašnjenja za mikrokontroler 8051
Mikrokontroler 8051 radi s frekvencijom 11.0592 MHz.
Frekvencija 11.0592MHz = 12 pulova
1 impuls takta = 11,0592 MHz / 12
F = 0,921 MHz
Vremensko kašnjenje = 1 / F
T = 1 / 0,92 MHz
T = 1,080506 us (za ciklus „1“)
1000us = 1MS
1000 ms = 1 sek
Postupak za izračunavanje programa odgode
1. Prvo moramo učitati vrijednost registra TMOD za ‘Timer0’ i ‘Timer1’ u različitim načinima. Na primjer, ako želimo raditi s timerom1 u načinu1, on mora biti konfiguriran kao “TMOD = 0x10”.
2. Kad god radimo timer u načinu 1, tajmer uzima maksimalne impulse od 65535. Tada se izračunati impulsi s vremenskim odgodom moraju oduzeti od maksimalnih impulsa i nakon toga pretvoriti u heksadecimalnu vrijednost. Ova vrijednost mora se učitati u veći bit i niže bitove timera1. Ovaj postupak odbrojavanja programira se pomoću ugrađen C u mikrokontroler .
Primjer: kašnjenje od 500us
500us / 1.080806us
461impulsi
P = 65535-461
P = 65074
65074 prevedeno heksaksimalnom decimalom = FE32
TH1 = 0xFE
TL1 = 0x32
3. Pokrenite timer1 'TR1 = 1'
4. Nadgledajte bit zastavice 'while (TF1 == 1)'
5. Očistite bit zastavice 'TF1 = 0'
6. Označite tajmer 'TR1 = 0'
Primjeri programa:
Program- 1
Program- 2
Program- 3
Brojači 8051
Brojač možemo koristiti držanjem C / T bita visokim, tj. Logikom '1' u registru TMOD. Za bolje razumijevanje dali smo jedan program koji koristi brojač vremena 1 kao brojač. Ovdje su LED diode spojene na priključak 8051 2 i prekidač na pin timera1 P3.5 i stoga će se, ako se prekidač pritisne, vrijednost računati. Inače, vanjski spojeni senzor na ovaj brojač kao ulaz čini ovu operaciju brojanja.
Program brojača
Primjena mjerača vremena i brojača u 8051
Digitalni brojač s 8051
Digitalni brojač s 8051 postiže se programiranjem mikrokontrolera kao što je gore spomenuto i pričvršćivanjem sustava senzora na njega. Ovaj brojač predmeta koristi IR senzor koji otkriva prepreku u njegovoj blizini, a također omogućuje i pin mikrokontrolera 06. Kad objekt prolazi kroz senzore, tada mikrokontroler dobiva signal prekida od IR senzora i povećava broj koji je prikazan na 7-segmentnom zaslonu.
Digitalni brojač s 8051
Krug vremenskog odgode Korištenje mikrokontrolera 8051
Sljedeća slika prikazuje kako se rad tajmera može primijeniti za učinkovito prebacivanje LED-a. Postupak odgode vremena za set LED-a programiran je u mikrokontroleru na gore razmatrani način. Ovdje je skup LED dioda spojen na priključak 2 zajedničkim sustavom napajanja. Kada se ovaj krug uključi na temelju vremenskog kašnjenja program u mikrokontroleru odgovarajuće su ove LED diode uključene.
Krug vremenskog kašnjenja
Ovo je sve o tajmeru i brojačima mikrokontrolera 8051 s osnovnim sklopovima za programiranje i primjenu. Nadamo se da su vam podaci iz ovog članka mogli dati dovoljno podataka da biste bolje razumjeli koncept. Nadalje, bilo kakve tehničke nedoumice u vezi s programiranjem 8051 i njegovih sklopova, možete nas kontaktirati komentirajući u nastavku.
Foto bodovi:
- Digitalni brojač sa 8051 by sklop danas
- Krug vremenskog odgode za vshamu