Professional Documents
Culture Documents
8051/8031 c hai timer 16 bit (T0 v T1), mi timer c bn ch hot ng. Ngi ta s dng cc timer :
a) nh khong thi gian, b) m s kin hoc c) to tc baud cho cng ni tip c sn trong 8051/8031.
Mi timer 16 bit c 16 tng hay tng cui cng chia tn s xung nhp cho 216=65536. Ngun xung nhp cho cc timer l xung vung c tn s bng 1/12 tn s xung nhp cung cp cho 8051. Trong cc ng dng nh khong thi gian, ngi ta lp trnh cho timer trn mt khong u n v t c trn timer ln 1. C c dng ng b ha hoc o thi gian tri qua gia hai s kin (v d: o rng xung). m s kin c dng xc nh s ln xy ra ca mt s kin hn l o khong thi gian tri qua gia cc s kin. Mt s kin l bt c tc ng bn ngoi no c th cung cp mt chuyn tip 1 sang 0 t chn T0, T1( P3) ca 8051/8031. Cc timer cng c th cung cp xung nhp tc baud cho 5 cng ni tip c sn trong 8051/8031.
MOV TL0, #55H MOV R1, TH0 Timer 1 (T1) c to bi TL1 and TH1
6
Cc SFR ca timer
Cc ch hot ng ca timer
10
Cc ch timer v c bo trn
11
Ch 0 l ch timer 13 bit tng thch vi b x l trc 8051 l 8048 Vi cc thit k mi ngi ta t dng ch hot ng ny Byte cao ca timer (THx) ni tip vi 5 bit thp ca byte thp ca timer (TLx) to thnh timer 13 bit Ba bit cao ca TLx khng c s dng
12
Ch 1 l ch timer 16 bit ging nh ch 0, ngoi tr lc ny timer hot ng nh timer 16 bit y . Trn xy ra khi c chuyn tip t FFFFH sang 0000H trong s m v n t c bo trn timer ln 1. Timer tip tc m tip. C bo trn l bit TFx trong TCON m ngi ta c th c ra hoc ghi vo bng phn mm
13
Ch 2 l ch t ng np gi tr u. Byte thp ca timer TLx lm vic nh timer 8 bit trong khi byte cao ca timer THx gi gi tr cn np li. Khi b m trn t FFH sang 00H th khng nhng c timer c t ln 1 m gi tr trong THx cn c np vo TLx, vic m tip tc t gi tr ny n chuyn tip t FFH sang 00H k, v c tip tc nh vy. Ch ny tin li v trn timer xy ra theo nhng khong thi gian c chu k mt khi TMOD v THx c khi to tr 14
Ch 3 l ch tch timer th khc nhau vi mi timer. Timer 0 ch 3 c tch thnh 2 timer 8 bit. TL0 v TH0 lm vic nh 2 timer c lp vi cc bo trn t cc c TF0 v TF1 tng ng 15
c im ca ch 3
Timer 1 b dng ch 3, nhng c th cho n chy bng cch chuyn sang 1 trong cc ch khc. Gii hn duy nht l c bo trn thng thng ca Timer 1 (TF1) khng b nh hng bi s bo trn trong Timer1 v TF1 c ni vo TH0. Ch 3 ch yu cho thm 1 timer 8 bit (8051 ging nh c thm timer th ba). Khi Timer 0 ch 3, ta c th bt hay tt Timer 1 bng cch chuyn n ra khi hay i vo chnh ch 3 ca n. N vn c th c cng ni tip s dng lm b to tc baud hoc c th c s dng theo bt c cch no m khng cn ngt (v n khng cn tc ng c vi TF1)
16
C 2 ngun xung nhp, m ta c th chn bng cch ghi vo bit chn b m/timer trong TMOD khi to cc tr khi ng timer. Mt ngun xung nhp c dng nh th khong thi gian, cn ngun kia m s kin.
17
m s kin
Nu C/T = 1, timer c cp xung nhp t ngun bn ngoi. Trong phn ln cc ng dng, ngun bn ngoi ny cung cp timer mt xung khi xy ra s kintimer c s dng m s kin (event counting). S s kin c xc nh trong phn mm bng cch c cc thanh ghi TLx/THx, t gi tr 16 bit trong cc thanh ghi ny tng thm 1 cho mi s kin. Ngun xung nhp bn ngoi c cung cp bng cch a vo cc chn c chc nng thay th Port 3:ng vo xung nhp cho Timer 0 l T0 (chn P3.4). hay cho timer l T1 (chn P3.5) Trong cc ng dng b m, cc thanh ghi timer c tng thm 1 khi c chuyn tip 1 sang 0 ng vo bn ngoi Tx. Ng vo bn ngoi ny c ly mu trong S5P2 ca mi chu k my; nh vy khi ng vo mc 1 trong 1 chu k v mc 0 trong chu k k th s m c tng thm 1. Gi tr mi xut hin trong cc thanh ghi timer trong S3P1 ca chu k theo sau chu k m chuyn tip c pht hin. T n mt 2 chu k my (2 s) ghi nhn chuyn tip 1 sang 0, do tn s bn ngoi ti a l 500 KHz (gi s hot ng 12 MHz)
19
22
1. 2. 3. 4.
27
SETB P1.0
CLR
SJMP
SETB
1 us (1 MC)
Tn s = 250 Khz (1/ 4 us) duty cycle = TON/(TON+TOFF)= 25% (1/4) TON = 1 us, TOFF= 3us
28
SETB P1.0
NOP
NOP
CLR
SJMP
SETB
LOOP:
; ch t np li 8 bit ; 256 50 = 206 ; cho timer T0 chy ; i timer T0 trn ; xa c bo trn ; o bit cng ; lp li
30
; ch 1 (16 bit) ; -500 (-01F4H) ; cho timer T0 chy ; i timer trn ; dng timer 0 ; xa c bo trn ; o bit cng ; lp li
LOOP:
WAIT:
Ch :
MOV TH0, #0FEH MOV TH0, #HIGH(-500) MOV TL0, #0CH MOV TL0, #LOW(-500)
31
Mt buzzer c ni vo chn P1.7 v mt cng tc khng ny (debounce switch) c ni vo chn P1.6 (xem hnh 3.28). Vit chng trnh c mc logic do cng tc cp v to ra m thanh buzzer trong 1 giy sau mi ln pht hin chuyn trng thi t 1 xung 0.
32
33
Lp trnh counter
ch counter: TMOD, TH, TL ging nh vi timer Cc ch timer cng ging Tuy nhin thay v dng tn s thch anh, counter m xung t bn ngoi a vo 8051. Bit C/T trong TMOD quyt nh ngun xung nhp. Khi C/T = 1, counter m ln khi c xung a vo cc chn T1 v T0 ( P3)
34