You are on page 1of 7

Ti liu thc hnh Vi iu khin

BI 5: TIMER
MC CH

Gip sinh vin kho st cc vn sau:


-

S dng phn mm Proteus m phng mch in.


Tm hiu cch s dng Timer trong 89C51.

THIT B S DNG

My vi tnh.
Phn mm Proteus

1. C s l thuyt
Vi iu khin 89C51 c hai thanh ghi timer/counter 16 bit. Cc thanh ghi
ny c th hot ng mt trong hai trng thi timer hoc counter. Mi thanh
ghi gm 2 thanh ghi 8 bit ghp li:

PULSE INPUT
THx : 8 BIT

TLx : 8 BIT

Cu trc ca b Timer/ Counter trong 89C51 nh hnh sau.

Hot ng ca b Timer/Counter c iu khin bi hai thanh ghi


TCON v TMOD
Phm Hng Kim Khnh

Trang 33

Ti liu thc hnh Vi iu khin

Thanh ghi TCON (timer control): L thanh ghi 8 bit, c th truy xut
byte hoc bit dng iu khin hot ng ca Timer.
7

TF1

TR1 TF0

TR0

IE1

IT1 IE0

0
IT0

TF1: bo trng thi trn cho b Timer/Counter1


TR1: iu khin cp xung cho b Timer/Counter1
TF0: bo trng thi trn cho b Timer/Counter0
TR0: iu khin cp xung cho b Timer/Counter0
IE1, IT1, IE0, IT0: s dng cho ngt ngoi 1 v ngt ngoi 0 (khng dng
cho Timer).
Thanh ghi TMOD (timer mode): L thanh ghi 8 bit, ch c th truy xut
byte dng xc nh ch hot ng ca Timer.
7
GATE

C/T M1

M0

IEU KHIEN TIMER 1

3
GATE

C/T

M1

M0

IEU KHIEN TIMER 0

GATE, C/ T : iu khin trng thi hot ng cho Timer/


M1, M0: chn ch hot ng cho Timer/Counter
M1 M0 CH
0
0
0
0
1
1
1
0
2
1
1
3

M T
Timer/Counter 13 bit
Timer/Counter 16 bit
Timer/Counter 8 bit, auto reload
Timer/Counter 8 bit

a/ Ch 0:

PULSE INPUT
THx : 8 BIT

TLx : 5 BIT

TFx

Thanh ghi THx v TLx kt hp to thnh b Timer/Counter 13 bit, khi


trn 13 bit th c TFx s t ln logic 1.

Phm Hng Kim Khnh

Trang 34

Ti liu thc hnh Vi iu khin

b/ Ch 1 (16 bit):
PULSE INPUT
THx : 8 BIT

TLx : 8 BIT

TFx

c/ Ch 2 (8 bit Auto-Reload):
PULSE INPUT
TLx : 8 BIT

TFx

OVERFLOW

THx : 8 BIT

TLx c np gi tr ban u t THx v bt u m t gi tr ny khi c


xung ng vo, khi trn th TFx s t ln logic 1 ng thi kch hot b kha
np gi tr trong THx vo TLx.
d/ Ch 4:
PULSE INPUT

OSC:12

TL0 : 8 BIT

TF0

TH0 : 8 BIT

TF1

TR1

Trong ch ny, TH1 v TL1 khng c s dng thay vo l TH0


v TL0 hot ng nh 2 b Timer 8 bit (TL0) v Timer/Counter 8 bit (TL0). Tuy
nhin, tn hiu m xung cho TH0 khng phi l TR0 m l TR1.

2. Tin trnh thc hin


S dng mch nh hnh v trang bn vi cc linh kin:
Keywords
7seg
8951
374
Resistor

Category
All
All
74 TTL Series
Resistors

Phm Hng Kim Khnh

Sub-category
All
All
All
Resistor Packs

Results
Value
7SEG-COM-ANODE
AT89C51
74LS374
RX8
220
Trang 35

Ti liu thc hnh Vi iu khin

- Thc hin chng trnh sau (to mt mch ng h m pht, giy):


MOV

TMOD,#01H

MOV

30H,#0

MOV

31H,#0

MOV

A,30H

MOV

B,#10

DIV

AB

MOV

DPTR,#Maled7

MOVC

A,@A+DPTR

MOV

P2,A

CLR

P1.1

SETB

P1.1

MOV

A,B

MOVC

A,@A+DPTR

MOV

P2,A

; S dng Timer0, ch 16 bit

Lap:

Phm Hng Kim Khnh

Trang 36

Ti liu thc hnh Vi iu khin

CLR

P1.0

SETB

P1.0

MOV

A,31H

MOV

B,#10

DIV

AB

MOV

DPTR,#Maled7

MOVC

A,@A+DPTR

MOV

P2,A

CLR

P1.3

SETB

P1.3

MOV

A,B

MOVC

A,@A+DPTR

MOV

P2,A

CLR

P1.2

SETB

P1.2

CALL

Delay

INC

31H

MOV

A,31H

CJNE

A,#60,Lap

; 60s (1 pht) th

MOV

31H,#0

; giy = 0

INC

30H

; v tng pht ln 1

MOV

A,30H

CJNE

A,#60,Lap

; 60 pht th

MOV

30H,#0

; pht = 0

SJMP

Lap

Maled7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
Delay:
PUSH

07

MOV

R7,#20

SETB

TR0

Delay1: ; To tr 50000 chu k = 50000s = 50ms


MOV

TH0,#HIGH(-50000)

MOV

TL0,#LOW(-50000)

Phm Hng Kim Khnh

Trang 37

Ti liu thc hnh Vi iu khin

JNB

TF0,$ ; Ch n khi Timer trn

CLR

TF0

DJNZ

R7,Delay1 ; R7 = 20 lp li 20 ln to tr 20*50ms

CLR

TR0

POP

07

RET
END
-

Sa chng trnh thc hin m giy v %giy.

CALL

Delay

INC

31H

MOV

A,31H

CJNE

A,#100,Lap ; 100% s (1 s) th

MOV

31H,#0

; %giy = 0

INC

30H

; v tng giy ln 1

MOV

A,30H

CJNE

A,#60,Lap

; 60 s th

MOV

30H,#0

; giy = 0

SJMP

Lap

Delay: ; To tr 10ms
PUSH

07

SETB

TR0

MOV

TH0,#HIGH(-10000)

MOV

TL0,#LOW(-10000)

JNB

TF0,$

CLR

TF0

CLR

TR0

POP

07

RET
END
-

V li hnh v trn s dng c ch qut.

Vit chng trnh hin th cc Led tng dn t 00 59, thi gian delay
1ms dng timer 0, mode 1.

Phm Hng Kim Khnh

Trang 38

Ti liu thc hnh Vi iu khin

Vit chng trnh hin th cc Led gim dn t 60 11, thi gian delay
2.5ms dng timer 1, mode 2.

Kt ni 8 Led n vi P0, Led sng khi bit tng ng ti P0 = 1. Vit


chng trnh iu khin Led n tt dn t P0.7 P0.0, lp li 10 ln,
thi gian delay 375ms dng timer 0, mode 2.

Kt ni 8 Led n vi P0, Led sng khi bit tng ng ti P0 = 1. Vit


chng trnh iu khin Led n sng tun t t P0.7 P0.0, thi
gian delay 650ms dng timer 1, mode 1.

Phm Hng Kim Khnh

Trang 39

You might also like