TªN BÀI:
lËp tr×nh ®iÒu khiÓn khèi
timer/counter trong v®k 89c51
Khái niệm
Timer :Là bộ định thời dùng
để đếm xung dao động bên
trong thạch anh.
Counter:Là bộ đếm, đếm
xung dao động bên ngoài mỗi
xung đếm tơng ứng với 1 chu
kỳ máy.
Các thanh ghi cơ sở
Thanh ghi của bộ timer 0.
- Đặc điểm: Thanh ghi 16 bit của bộ Timer 0
được truy cập theo 2 bye là bye thấp và bye
cao.Thanh ghi bye thấp được gọi là TL0 và thanh
ghi bye cao là TH0.
- Cấu tạo:
D1
5
D1
4
D1
3
D12
D1
1
D1
0
D9
D8
D7
D6
D5
D4
D3
D2
D1
TL0
TH0
- Chức năng:
Các thanh ghi này có thể được truy cập
như mọi thanh ghi khác, chẳng hạn như
A,B,R0,R1
D0
Thanh ghi của bộ timer 1.
- Đặc điểm: Bộ định thời Timer 1 cũng dài 16
bit và thanh ghi 16 bit cũng được chia ra thành
2 bye là TL1 và TH1.
- Cấu tạo:
D15
D14
D13
D12
D11
TH1
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
TL1
- Chức năng:
Các thanh ghi này được truy cập và
được đọc giống như các thanh ghi của
bộ timer0 ở trên .
Thanh ghi TMOD(timer mode )
-
Đặc điểm: Tmod lµ thanh ghi 8
bit, vµ cho phÐp chóng truy nhËp ë
møc byte.(1 byte= 8 bit).
-Cấu tạo: có 4 bit thÊp dµnh cho bé
timer 0 vµ 4 bit cao dµnh cho timer
1.
GATE C/T
M1
TIMER 1
- Chức
năng:
M0
GATE C/T
M1
TIMER 0
M0
Chức năng các bit:
Bit M1, M0
Là các bit chọn chế độ của các bộ
timer
vàđộ
timer
M1
M0 0
Chế
Chế1độ hoạt động
0
0
0
Bộ định thời 13 bít
0
1
1
Bộ định thời 16 bit
1
0
2
Bộ định thời 8 bit tự nạp lại
1
1
3
Bộ timer /counter đợc tách
thành 2 bộ T/C 8 bit
Bit C/T
Là bit lựa chọn chức năng ở bộ
đếm hay bộ định thời.
.Nếu C/T=1, timer hoạt động ở
chức năng bộ đếm.
.Nếu C/T=0, timer hoạt động ở
chức năng bộ định thời,lúc
này timer sẽ thực hiện đếm
xung từ dao động thạch anh
chia cho 12.
Ví dụ 1:
Hãy xác định chế độ và bộ định
thời của các trờng hợp sau:
a, MOV TMOD,#01H
b, MOV TMOD,#20h
Ví dụ 2 :
Hãy tìm tần số đồng hồ và chu kỳ
của bộ định thời của các hệ
thống xây dựng trên 8051 với tần
số thạch anh nh
sau:12MHZ;16MHZ
Bit GATE
- Là bit chọn khởi động timer tơng ứng
bằng phần cứng hoặc phần mềm.
. Nếu Gate=1,khởi động bằng phần
cứng.
. Nếu Gate=0, khởi động bằng phần
mềm .
TIMER 0
P3.2=1->RUN
P3.2=0->STOP.
TIMER 1
P3.3=1->RUN
P3.3=0->STOP
Thanh ghi TCON(timer
control).
- Đặc điểm:
Lµ thanh ghi 8 bit vµ ®Þnh
®Þa chØ møc bit.
- Cấu tạo:
TF1
TR1
TF0 TR0 IE1 IT1
IE0
IT0
Chức năng
+ 4 bit cao : TF1, TR1, TF0, TR0 là 4 bit cao
được dùng để lưu các bit TF, TR cho cả Timer
0 và Timer 1
+ Bit TF1 là bit điều khiển cê trµn cña bé
timer 1
+ Bit TF0 là bit điều khiển cê trµn cña bé
timer 0
+ Bit TR1 là bit ®iÒu khiÓn ho¹t ®éng
cña timer 1 để bật tắt các bộ định thời
+ 4 bit thấp :IE1, IT1, IE0, IT0 là các bit được
thiết lập dành cho bộ điều khiển các bit ngắt
Ví dụ3:
Tìm giá trị của bộ
TMOD biết lập trình cho
bộ timer 0 ở chế độ 2 sử
dụng thạch anh XTAL 8051
làm nguồn đồng hồ và sử
dụng lệnh để khởi động
và dừng bộ định thời.
Các bớc lp trỡnh iu khin khi
timer /counter:
B1:Xác lập chế độ
timer/counter
B2:Nạp giá trị số đếm ban
đầu
B3:Khởi động bộ T/C
B4:Kiểm tra cờ tràn
Bài tập áp dụng:
Viết chơng trình cho
vi điều khiển 8051 tạo
xung vuông tại chân
P1.0 với chu kỳ T=0,1s;
độ rộng xung =50%, sử
dụng bộ Timer 0.Biết
tần số thạch anh sử
dụng là 2MHZ
Bài tập về nhà:
ViÕt ch¬ng tr×nh cho vi
®iÒu khiÓn 8051 t¹o xung
vu«ng t¹i ch©n P1.0 víi
chu kú T=0,1s; ®é réng
xung =50%, sö dông bé
Timer 0.BiÕt tÇn sè th¹ch
anh sö dông lµ 2MHZ