Giáo án lý thuyết số: 1 Thời gian thực hiện : 1 tiết - DS-DDT3Thực hiện: ngày tháng năm Chơng 6: vi điều khiển 8051 Bài 6.6 lập trình điều khiển khối timer/counter T/C Mục tiêu học tập:
Trang 1Giáo án lý thuyết số: 1 Thời gian thực hiện : 1 tiết - DS-DDT3
Thực hiện: ngày tháng năm
Chơng 6: vi điều khiển 8051 Bài 6.6 lập trình điều khiển khối timer/counter (T/C)
Mục tiêu học tập: Sau bài học, người học cú khả năng:
- Kiến thức: Trỡnh bày được khái niệm timer/counter, đặc điểm, cấu tạo
các thanh ghi của bộ timer/counter , các bớc lập trỡnh điều khiển và ứng dụng khối Timer/counter
- Kỹ năng: Thực hiện lập trình đợc 1 số bài tập sử dụng T/C làm việc ở các
chế độ khác nhau
- Thỏi độ: Hình thành ý thức tự giác, tự học, tự nghiên cứu, có thái độ học
tập nghiêm túc
đồ dùng, phơng tiện : Phấn, bảng dạy học, giỏo ỏn, đề cương bài giảng
- Sỹ số lớp : …./………
- Nhắc nhở cỏc yờu cầu của việc thực hiện bài học
Nội dung - phơng pháp :
gian
Hoạt động của giáo viên Hoạt động của sinh viên
I Dẫn nhập
-Vấn đấp: Đặt cõu -Suy nghĩ, trả lời
2phút
Trang 2
Giảng bài mới
6.1.Khái niệm cơ
bản:
- Timer
- Counter
6.2 Cỏc thanh
timer/counter
6.2.1 Cỏc thanh
ghi cơ sở của bộ
T/C
1 Thanh ghi của
bộ timer 0
- Đặc điểm
- Cấu tạo:
hỏi kiến thức bài cũ
- Nhận xột
- Nờu ứng dụng thực
tế , dẫn dắt vào bài mới
- Thuyết trỡnh: giảng giải đưa ra khái niệm về bộ timer và counter, giải thớch
- Thuyết trỡnh: giảng giải về đặc điểm thanh ghi của bộ Timer 0
-Trực quan: Vẽ cõỳ tạo lờn bảng
-Thuyết trỡnh: giảng giải cho học sinh về cấu tạo thanh ghi của bộ Timer 0
- Lắng nghe, định hướng vào bài
- Lắng nghe, ghi nhớ, ghi chộp bài
- Lắng nghe, ghi nhớ, ghi chộp bài
hiệu vào vở
- Lắng nghe, ghi nhớ, ghi chộp bài
- Lắng nghe, ghi
2 phút
5p
5p
Trang 3
-Chức năng
2 Thanh ghi của
bộ timer 1
- Đặc điểm
- Cấu tạo:
-Chức năng
6.2.2 Thanh ghi
điều khiển TMOD
(timer mode )
- Đặc điểm:
- Cấu tạo:
-Vẽ, phân tích và giảng giải cho học sinh chức năng cỏc bit trong thanh ghi của bộ timer0
- Thuyết trỡnh: giảng giải về đặc điểm thanh ghi của bộ Timer 1
-Trực quan: Vẽ cõỳ tạo lờn bảng
-Thuyết trỡnh: giảng giải cho học sinh về cấu tạo thanh ghi của bộ Timer 1
-Vẽ, phân tích và giảng giải cho học sinh chức năng cỏc bit trong thanh ghi của bộ Timer 1
- Thuyết trỡnh: giảng giải về đặc điểm thanh ghi điều khiển Tmod
chộp bài
-Quan sát, lắng nghe
và ghi chép bài
-Quan sát, lắng nghe
và ghi chép bài
-Quan sát, lắng nghe
và ghi chép bài
-Quan sát, lắng nghe
và ghi chép bài
-Quan sát, lắng nghe
và ghi chép bài
-Quan sát, lắng nghe
và ghi chép bài
10p
Trang 4
-Chøc n¨ng
+ Bit M1, M0
+Bit C/T
Khi C/T=1
Khi C/T=0
- Ví dụ 1
+ Bit GATE:
Khi Gate=1
Khi Gate=0
- Bài tập áp dụng
+ ví dụ 2
+ ví dụ 3
-Trực quan: Vẽ câú tạo lên bảng
-Thuyết trình: giảng giải cho học sinh về cấu tạo của thanh ghi Tmod
- Trực quan: VÏ, ph©n tÝch vµ gi¶ng gi¶i cho häc sinh chức năng các bit trong thanh ghi Tmod
-Vẽ bảng chế độ hoạt động của 2 bit M1, M0 và giảng giải cho học sinh hiểu
- Thuyết trình: giảng cho học sinh về bit C/T
- Đưa ra ví dụ cụ thể
- Cho hoc sinh lµm bµi
- NhËn xÐt, rút kinh nghiệm
- Thuyết trình: giảng
-Quan s¸t, l¾ng nghe
vµ ghi chÐp bµi
-Quan s¸t, l¾ng nghe
vµ ghi chÐp bµi
- Suy nghĩ, làm bài
-Quan s¸t, l¾ng nghe
vµ ghi chÐp bµi
-Suy nghĩ, làm bài 5p
Trang 56.2.3 Thanh ghi
trạng thỏi TCON
(timer control)
- Đặc điểm
- Cấu tạo
- Chức năng
+ Bit TF1
+ Bit TF0
+ Bit TR1
+ Bit TR0
6.3 Các bớc lập
trỡnh điều khiển
khối 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
giải cho học sinh về bit GATE
- Đưa ra bài tập
- Cho hoc sinh làm bài
- Nhận xét, rỳt kinh nghiệm
- Thuyết trỡnh: giảng
về khỏi niệm, cấu tạo thanh ghi điều khiển Tcon
-Vẽ cõỳ tạo lờn bảng, giảng giải cho học sinh về cấu tạo của thanh ghi Tcon
-Vẽ, phân tích và giảng giải cho học sinh chức năng cỏc bit trong thanh ghi Tcon
-Lắng nghe và ghi chép
-Suy nghĩ, làm bài
- Lắng nghe, quan sỏt, ghi chộp
-Quan sát,lắng nghe
và ghi chép bài
15p
3p
2p
Trang 6- Bài tập ỏp dụng
6.4 Ứng dụng bộ
Timer/Counter
trong vi điều
khiển 8051.
Củng cố kiến
thức và trọng
tâm bài học.
Trọng tâm bài:
các thanh ghi của
bộ timer/counter
và các bớc xác lập
chế độ
timer/counter
- Trực quan: Viết và giải thích các câu lệnh lên bảng
- Hướng dẫn làm bài
- Nhận xét, rỳt kinh nghiệm
- Giảng giải cỏc ứng dụng trong thực tế với những vớ dụ cụ thể
- Tổng kết lại những vấn đề trọng tõm của bài học Kết thỳc bài
-Quan sát,lắng nghe
và ghi chép bài
- Lắng nghe, ghi chộp bài
IV ớng dẫn tự học: H Bài tập: 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=2s; độ rộng xung
- Lắng nghe, ghi chộp bài
1 phút
Trang 7=50%, sö dông bé Timer 1.BiÕt tÇn sè th¹ch anh sö dông lµ 2MHZ
Tµi liÖu tham kh¶o:
-CÊu tróc vµ lËp tr×nh hä vi ®iÒu khiÓn 8051-NguyÔn T¨ng Cêng, Phan Quèc Th¾ng Nhµ xuÊt b¶n khoa häc vµ kü thuËt, 2004
-Hä vi ®iÒu khiÓn 8051-Tèng V¨n On
VI/ Rót kinh nghiÖm:
………
………
………
………
Khoa - Bé m«n (DuyÖt) Ngµy….th¸ng….n¨m 2012 Gi¸o sinh
Lª ThÞ Ph¬ng
Trang 8ĐỀ CƯƠNG BÀI GIẢNG
Bài 6.6: lập trình điều khiển bộ timer/counter 89C51 Nội dung :
6.1 Khỏi niệm bộ timer/ counter
-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
6.2 Cỏc loại thanh ghi của bộ timer/counter trong vđk 89C51
6.2.1 Cỏc thanh ghi cơ sở của bộ định thời.
8051 cú 2 bộ định thời là Timer 0 và Timer 1 Cả 2 bộ định thời Timer0
và Timer 1 đều cú độ dài 16 bit.Do 8051 cú cấu trỳc 8 bit, nờn mỗi bộ định thời được truy cập dưới dạng 2 thanh ghi độc lập là bye thấp và bye cao.Chỳng ta sẽ nghiờn cứu từng thanh ghi
1 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:
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 Vớ dụ lệnh :
“ Mov TL0,#4FH ”là chuyển giỏ trị 4FH vào TL0-bye thấp của bộ định thời 0 Cỏc thanh ghi này cũng cú thể được đọc như cỏc thanh ghi khỏc
vớ dụ :“ MOV R5, TH0” , là lưu bye cao TH0 của Timer 0 vào R5
2 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 D14D13 D12D11 D10D9 D8
TH0
D7 D6 D5 D4 D3 D2 D1 D0
TL0
Trang 9D15 D14 D13 D12 D11 D10 D9 D8
TH1
- 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
6.2.2 Thanh ghi điều khiển 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).Thanh ghi TMOD để thiết lập các chế độ làm việc khác nhau của bộ
định thời
- Cấu tạo: Thanh ghi tmod:có 4 bit thấp dành cho bộ timer 0 và 4 bit cao dành cho timer 1.Trong đó hai bit M1, M0 dùng để thiết lập chế độ hoạt động (mode) của bộ định thời
-Chức năng : Ta đi tỡm hiểu chức năg của cỏc bit trong thanh ghi
+ Bit M1, M0: Là các bit chọn chế độ của các bộ timer 0 và timer 1.Cacs
chế độ đợc thiết lập theo trạng thái của M1, M0 nh sau:
0 0 0 Bộ định thời 13 bớt
0 1 1 Bộ định thời 16 bớt
1 0 2 Bộ định thời 8 bớt tự nạp lại
1 1 3 Bộ timer/counter 0 được tỏch thành 2 bộ timer/counter 8 bớt
Khi lập trình ta chú ý khai thác ở chế độ 1 và 2
+Bit C/T:Là bit lựa chọn chức năng ở bộ đếm hay bộ định thời.
D7 D6 D5 D4 D3 D2 D1 D0
TL1
Timer 0
Trang 10.Nếu C/T=1, timer hoạt động ở chức năng bộ đếm.Lúc này bộ timer sẽ đếm xung ở bên ngoài đa tới chân P3.4(T0) với bộ đếm của Timer 0, chân p3.5(T1) với bộ đếm của Timer 1
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
.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ụ 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.Để timer hoạt động,ngoài điều kiẹn bit TRx(x=0,1) đợc xác lập bằng 1 , cần điều kiện ngoài nh sau:
P3.2=1->RUN P3.2=0->STOP P3.3=1->RUN P3.3=0->STOP
.Nếu Gate=0, khởi động bằng phần mềm.Việc khơỉ động và dừng bộ định thời
đ-ợc điều khiển bằng phần mềm bởi các bit lhởi động bộ định thời TR0 và TR1.CáC lệnh dùng để đặt oặc xoá bit TRx(x=0,1) là “setb TR1) và “ Clr TR2)
đối vớ bộ timer 1 và “setb TR0” và “CLR TR)) đối với bộ timer 0
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
6.2.3 Thanh ghi trạng thỏi TCON(timer control)
- Đặc điểm: Là thanh ghi 8 bit và định địa chỉ mức bit
- Cấu tạo:
- Chức năng : Ta đi tỡm hiểu chức năg của cỏc bit trong thanh ghi
+ 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
+ 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
Trang 11+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 +Bit TR0 là bit điều khiển hoạt động của timer 0 để bật tắt cỏc bộ định thời
6.3.Các bớc lập trỡnh điều khiển khối 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
6.4 Ứng dụng bộ Timer/Counter trong vi điều khiển 8051:
- Chương trỡnh sẽ tạo ra cỏc đơn vị thời gian chuẩn theo giõy, phỳt, giờ và hiển
thị lờn màn hỡnh LCD Kết quả sẽ cho 1 đồng hồ thời gian hấp dẫn
- Tạo ra cỏc bộ đếm sự kiện, cú thể biểu diễn số người đi qua cổng hoặc số vúng quay hoặc bất ký sự kiện nào cú thể chuyển đổi thành xung