You are on page 1of 21

KHOA VÔ TUYẾN ĐIỆN TỬ

BỘ MÔN KỸ THUẬT VI XỬ LÝ

THÍ NGHIỆM KỸ THUẬT VI XỬ LÝ VÀ


LẬP TRÌNH HỢP NGỮ

Giáo viên: Nguyễn Khoa Sang

HỌC VIỆN KỸ THUẬT QUÂN SỰ - 2016


THÍ NGHIỆM KỸ THUẬT VI XỬ LÝ VÀ LẬP TRÌNH HỢP NGỮ

BÀI THÍ NGHIỆM SỐ 3:

BỘ ĐỊNH THỜI TIMER VÀ NGẮT

Thời gian thực hiện: 3 tiết

2
I. MỤC ĐÍCH, YÊU CẦU
1. Mục đích:
 Nắm được cách sử dụng Timer/Counter, ứng dụng của
Timer/Counter trong việc tạo trễ trong các ứng dụng hay
tạo xung có tần số và độ rộng khác nhau.
 Nắm được cơ chế sử dụng ngắt.
2. Yêu cầu:
 Vận dụng các chế độ của Timer/Counter để tạo trễ trong
ứng dụng đèn led, led 7 đoạn, LCD; tạo xung có tần số
cho trước.
 Xử dụng ngắt để điều khiển đèn Led, hiển thị đồng hồ
theo cơ chế ngắt…

3
II. TÓM TẮT LÝ THUYẾT

1. Bộ Timer/Counter
 Bộ đếm, bộ định thời là gì?
 Các thanh ghi liên quan
 Các chế độ hoạt động của bộ Timer/Counter
 Các bước lập trình bộ Timer/Counter

4
II. TÓM TẮT LÝ THUYẾT
a、Kết cấu
T1(P 3.5) T0(P 3.4)
T1 T0
(8DH) (8BH) (8CH) (8AH)
TH1(8bit) TL1 (8bit) TH0(8bit) TL0 (8bit)
7 0 7 0 7 0 7 0
Khởi
động Chế
CPU độ
làm
tràn Khởi tràn
việc
động
Chế độ làm việc

TCON(88H) TMOD(89H)

Kết cấu Logic của bộ Timer/Counter


5
II. TÓM TẮT LÝ THUYẾT
 Thanh ghi TMOD
MSB LSB
TMOD
(89H) GATE C/T M1 M0 GATE C/T M1 M0

Điều khiểnT1 Điều khiểnT0

? tương tác
Bit chọn chức năng
ngắt ngoài
Chế độ làm việc

6
II. TÓM TẮT LÝ THUYẾT
M1 M0 Chế Chế độ hoạt động
độ

0 0 0 Bộ định thời 13 bit:8 bit là bộ định thời/bộ


đếm, 5 bit đặt trước.

0 1 1 Bộ định thời 16 bit: không có đặt trước.

1 0 2 Bộ định thời 8 bit: tự nạp lại.

1 1 3 Chế độ bộ định thời chia tách.

7
II. TÓM TẮT LÝ THUYẾT
 Thanh ghi TCON
MSB LSB
TCON
(88H) TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

Liên quan đến ngắt INT1、INT0

Có thể lập trình, điều khiển


“1” Khởi động
T1、T0 bit control
“0” dừng lại
Có thể lập trình, điều khiển
“1” tràn
T1、T0 bit tràn
“0” chưa tràn
Có thể clr>“0”
8
II. TÓM TẮT LÝ THUYẾT
 Cơ chế hoạt động ở chế độ 1

Các bước lập trình chế độ 1:


1. Nạp giá trị TMOD cho thanh ghi báo độ định thời nào (Timer0 hay
Timer1) được sử dụng và chế độ nào được chọn.
2. Nạp các thanh ghi TL và TH với các giá trị đếm ban đầu.
3. Khởi động bộ định thời.
4. Duy trì kiểm tra cờ bộ định thời TF bằng một vòng lặp để xem nó
được bật lên 1 không. Thoát vòng lặp khi TF được lên cao.
5. Dừng bộ định thời.
6. Xoá cờ TF cho vòng kế tiếp.
7. Quay trở lại bước 2 để nạp lại TL và TH. 9
II. TÓM TẮT LÝ THUYẾT

Công thức tính toán độ trễ sử dụng chế độ 1 (16 bit) của
bộ định thời đối với tần số thạch anh XTAL = f (MHz):

a) Tính theo số Hex b) Tính theo số thập phân


(FFFF - YYXX + 1)*12/f (ms) Chuyển đổi các giá trị YYXX
trong đó YYXX là các giá trị của TH, TL về số thập phân để
khởi tạo của TH, TL tương nhận một số thập phân NNNNN
ứng. Lưu ý rằng các giá trị sau đó lấy (65536 –
YYXX là theo số Hex. NNNNN)*12/f (ms).

10
II. TÓM TẮT LÝ THUYẾT
 Cơ chế hoạt động ở chế độ 0

Chế độ 0: 13 bit
Timer

Oscillator 1/12 C/T=0


TL0 TH0 TF0
T0 C/T=1 5 bit thấp 8 bit

TR0
& Bộ đếm 13 bit
GATE 1 ≥1
INT0

11
II. TÓM TẮT LÝ THUYẾT
 Cơ chế hoạt động ở chế độ 2
Chế độ tự nạp giá trị ban đầu với độ lớn 8 bit.

Oscillator 1/12 C/T=0


TL0 TF0
T0 C/T=1
TR0
& TH0
GATE 1 ≥1
INT0

12
II. TÓM TẮT LÝ THUYẾT
 Cơ chế hoạt động ở chế độ 3
Trong chế độ 3 chỉ có T0 là có thể hoạt động
ở chế độ này.
Lúc này T0 có thể phân thành 2 bộ đinh thời
độc lập ứng với TL0 và TH0.
TL0 dùng làm tín hiệu điều khiển T0 ( TR0,
TF0): có thể làm timer or counter.
TH0 thì nó chiếm các bít TR1 và TF1 của T1
để điều khiển hoạt động như bộ định thời độc
lập. TH0 chỉ có thể làm bộ định thời.

13
II. TÓM TẮT LÝ THUYẾT
2. Ngắt
 Phân biệt cơ chế ngắt với hỏi vòng
 Nắm rõ các loại ngắt trong 8051
• Ngắt timer/counter
• Ngắt ngoài
• Ngắt truyền thông nối tiếp
 Lập trình các ngắt
• Trình phục vụ ngắt
• Cho phép ngắt và cấm ngắt
• Thiết lập mức ưu tiên của các ngắt
14
II. TÓM TẮT LÝ THUYẾT
 Khi có ngắt VĐK thực hiện các bước:
• Nó hoàn thành nốt lệnh đang thực hiện và lưu địa chỉ
của lệnh kế tiếp vào ngăn xếp.
• Nó cũng lưu tình trạng hiện tại của tất cả các ngắt.
• Nó nhảy đến một vị trí cố định trong bộ nhớ được gọi
là bảng vector ngắt, nơi lưu giữ địa chỉ của một trình
phục vụ ngắt.
• Bộ vi điều khiển nhận địa chỉ ISR từ bảng vector ngắt và
nhảy tới đó. Nó bắt đầu thực hiện trình phục vụ ngắt cho
đến lệnh cuối cùng của ISR và trở về chương trình chính
từ ngắt.
• Khi bộ vi điều khiển quay trở về nơi nó đã bị ngắt. Trước
hết nó nhận địa chỉ của bộ đếm chương trình PC từ
ngăn xếp bằng cách kéo 02 byte trên đỉnh của ngăn xếp
vào PC. Sau đó bắt đầu thực hiện tiếp các lệnh từ địa
chỉ đó.
15
II. TÓM TẮT LÝ THUYẾT
 Thanh ghi cho phép ngắt IE

16
II. TÓM TẮT LÝ THUYẾT

17
III. NỘI DUNG THÍ NGHIỆM
1. Timer/Counter
 Dùng bộ Timer tạo xung có chu kỳ là 2 ms.
 Dùng bộ Timer tạo xung có độ rộng cao thấp
khác nhau.
 Dùng Counter đếm số lần nhấn phím ngắt
ngoài Mode.
 Dùng Timer để tạo delay hiển thị đèn Led, Led
7 đoạn và LCD; tạo đồng hồ điện tử bằng bộ
Timer.

18
III. NỘI DUNG THÍ NGHIỆM
2. Ngắt
 Sử dụng ngắt ngoài để điều khiển Led đơn
sáng.
 Sử dụng ngắt Timer trong ứng dụng đối với
khối Led đơn, Led 7 đoạn, LCD và tạo xung
nhịp.
 Sử dụng ngắt nối tiếp RI, TI trong truyền
thông nối tiếp.

19
III. NỘI DUNG THÍ NGHIỆM

20
VI. BÁO CÁO THÍ NGHIỆM
1. Nội dungbáo cáo thí nghiệm
- Ghi lại cụ thể các nội dung đã thực hiện trong quá
trình thí nghiệm.
- Ghi lại những vấn đề gặp phải, cần lưu ý và phần trả
lời cho các câu hỏi thí nghiệm.
- Hoàn thành bài tập được giao.
2. Mẫu báo cáo thí nghiệm
- Trong tài liệu hướng dẫn thí nghiệm CTK1.

21

You might also like