Bài giảng Vi xử lý-Vi điều khiển - Chương 2: Họ vi điều khiển 8051 - Phần 5: Interrupt - Phan Đình Duy

Mục tiêu

Hiểu được định nghĩa và các

interrupts trong vđk 8051

Biết được cách sử dụng các ngắt

ngoài

Biết được cách sử dụng các ngắt

Timer, UART

Vận dụng để viết các chương trình

đơn giản trên 8051

pdf 25 trang phuongnguyen 8920
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Vi xử lý-Vi điều khiển - Chương 2: Họ vi điều khiển 8051 - Phần 5: Interrupt - Phan Đình Duy", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Vi xử lý-Vi điều khiển - Chương 2: Họ vi điều khiển 8051 - Phần 5: Interrupt - Phan Đình Duy

Bài giảng Vi xử lý-Vi điều khiển - Chương 2: Họ vi điều khiển 8051 - Phần 5: Interrupt - Phan Đình Duy
09/2015Duy Phan
Chương 2: Họ vi điều khiển 8051
(Interrupt)
2 Họ vi điều khiển 8051Duy Phan
Mục tiêu
Hiểu được định nghĩa và các 
interrupts trong vđk 8051
Biết được cách sử dụng các ngắt 
ngoài 
Biết được cách sử dụng các ngắt 
Timer, UART
Vận dụng để viết các chương trình 
đơn giản trên 8051
3 Họ vi điều khiển 8051Duy Phan
Nội dung
Interrupts
External
Timer
UART
4 Họ vi điều khiển 8051Duy Phan
Ôn tập chương 2-4
Timer là gì, cách hoạt động?
Có bao nhiêu Timer trong 8051?
Có bao nhiêu mode hoạt động của Timer?
Có bao nhiêu mode hoạt động của UART?
Tính tốc độ BAUD như thế nào?
5 Họ vi điều khiển 8051Duy Phan
Một ngắt là một sự kiện bên trong hoặc bên 
ngoài làm ngắt bộ vi điều khiển để báo cho nó 
biết rằng thiết bị cần dịch vụ của nó.
Chương trình đi cùng với ngắt được gọi là 
trình dịch vụ ngắt (ISR) hoặc trình quản lý 
ngắt (IH)
Nhóm các vị trí nhớ được dành riêng để gửi 
các địa chỉ của các ISR gọi là bảng vector 
ngắt
Interrupts
6 Họ vi điều khiển 8051Duy Phan
Interrupts (tt)
7 Họ vi điều khiển 8051Duy Phan
Interrupts (tt)
8 Họ vi điều khiển 8051Duy Phan
Thanh ghi cho Interrupts
9 Họ vi điều khiển 8051Duy Phan
Kết thúc lệnh đang thực hiện và lưu địa chỉ của lệnh 
kế tiếp (PC) vào ngăn xếp
Lưu lại tình trạng hiện tại của tất cả các ngắt
Nhảy đến bảng vector ngắt tại địa chỉ của ISR
Nhận địa chỉ ISR và thực hiện cho đến lệnh cuối 
cùng của ISR và RETI
Nhận địa chỉ PC từ ngăn xếp và thực hiện các lệnh 
tiếp theo
Hoạt động khi xảy ra interrupts
10 Họ vi điều khiển 8051Duy Phan
Ngắt reset có mức ưu tiên cao nhất, khi reset xảy
ra tất cả các ngắt khác và chương trình đều bị dừng
và vi điều khiển trở về chế độ khởi động ban đầu.
Ngắt mức 1, chỉ có reset mới có thể cấm ngắt này
Ngắt mức 0, các ngắt mức 1 và reset có thể cấm
ngắt này.
Thứ tự ưu tiên các interrupts
11 Họ vi điều khiển 8051Duy Phan
Thứ tự ưu tiên các interrupts (tt)
12 Họ vi điều khiển 8051Duy Phan
Nếu 1 có độ ưu tiên cao hơn một ngắt đang được xử
lý xuất hiện thì, ngắt có ưu tiên thấp ngay lập tức bị
dừng để ngắt kia được thực hiện.
Nếu 1 có độ ưu tiên cao hơn một ngắt đang được xử
lý xuất hiện thì, ngắt có ưu tiên thấp ngay lập tức bị
dừng để ngắt kia được thực hiện
Nếu 2 ngắt có cùng mức ưu tiên cùng yêu cầu vào 1
thời điểm thì thứ tự được chọn như sau: INTR0,
Timer 0, INTR1, Timer 1, UART
Thứ tự ưu tiên các interrupts (tt)
13 Họ vi điều khiển 8051Duy Phan
Sơ đồ các interrupts
14 Họ vi điều khiển 8051Duy Phan
Các ngắt của 8051
Các ngắt timer: có 2 ngắt timer
Có địa chỉ vertor ngắt là 000BH (Timer 0) và
001BH (Timer 1)
Ngắt timer xảy ra khi TLx/THx tràn và lập cờ
TFx lên 1
Các cờ TFx tự xóa bằng phần cứng khi ISR
thực hiện xong
15 Họ vi điều khiển 8051Duy Phan
Các ngắt của 8051 (tt)
Ngắt UART: có 1 ngắt
Có địa chỉ vertor ngắt là 0023H
Ngắt timer xảy ra khi TI hoặc RI được đặt lên 1
Các cờ TI và RI không tự xóa bằng phần cứng
16 Họ vi điều khiển 8051Duy Phan
Các ngắt của 8051 (tt)
Các ngắt ngoài: có 2 ngắt ngoài
Có địa chỉ vertor ngắt là 0003H (INT 0) và
0013H (INT 1)
17 Họ vi điều khiển 8051Duy Phan
Các ngắt của 8051 (tt)
Các ngắt ngoài theo mức: IT0 và IT1 = 0
INT0 và INT1 ở mức cao, nếu có 1 tín hiệu ở mức
thấp thì xảy ra ngắt
Tín hiệu mức thấp phải được thả trước khi thực
hiện lệnh cuối cùng của ISR nếu không sẽ có 1
ngắt khác được tạo ra
18 Họ vi điều khiển 8051Duy Phan
Ôn tập
Nguyên lý hoạt động của Timer
Timer trong 8051 và các mode
Nguyên lý hoạt động và các mode 
của UART trong 8051
Nguyên lý hoạt động của 
interrupts, các loại interrup
19 Họ vi điều khiển 8051Duy Phan
Bài tập 1
Hãy chỉ ra những lệnh để:
a) cho phép ngắt nối tiếp ngắt 
Timer0 và ngắt phần cứng ngoài 1 
(EX1).
b) cấm (che) ngắt Timer0 sau đó 
c) trình bày cách cấm tất cả mọi 
ngắt chỉ bằng một lệnh duy nhất. 
20 Họ vi điều khiển 8051Duy Phan
Bài tập 2
Hãy viết chương trình nhân liên tục 
dữ liệu 8 bít ở cổng P0 và gửi nó đến 
cổng P1. Trong khi đó, nó cùng lúc tạo 
ra một sóng vuông chu kỳ 200us trên 
chân P2.1. Hãy sử dụng bộ Timer0 để
tạo ra sóng vuông, tần số của 8051 là 
XTAL = 11.0592MHz. 
21 Họ vi điều khiển 8051Duy Phan
Bài tập 3
Hãy viết một chương trình sử dụng các ngắt 
để tạo đồng thời các dạng song vuông có tần 
số là 7KHz (timer 0, mode 2) và 500Hz 
(timer 1, mode 1) trên các chân P1.7 và P1.6
22 Họ vi điều khiển 8051Duy Phan
Bài tập 4
Hãy viết 1 chương trình sử dụng các 
ngắt để liên tục phát đi tập mã 
ASCII đến một thiết bị khác qua 
cổng nối tiếp của 8051 ( dùng UART 
mode 1, tốc độ baud 1200, thạch anh 
12MHz)
23 Họ vi điều khiển 8051Duy Phan
Bài tập 5
Hãy viết chương trình vi điều khiển sử
dụng các ngắt để thiết kế bộ điều 
khiển lò nung sao cho nhiệt độ duy trì 
ở mức 200C +-10C
24 Họ vi điều khiển 8051Duy Phan
Bài tập 6
Hãy viết chương trình sử dụng các ngắt 
để thiết kế một hệ thống báo động tạo ra 
âm hiệu 600Hz trong 500 mili giây (sử
dụng 1 loa nối với chân P3.1) (dùng timer 
0 mode 3) đồng thời gửi ký tự “open” qua 
cổng UART (mode 1, tốc độ baud 4800) 
mỗi khi bộ cảm biến đặt ở cửa ra vào 
(được nối với chân INT1’) tạo ra một 
chuyển trạng thái từ mức cao xuống mức 
thấp (thạch anh 12MHZ)
09/2015Duy Phan
Kết thúc chương 2-4

File đính kèm:

  • pdfbai_giang_vi_xu_ly_vi_dieu_khien_chuong_2_ho_vi_dieu_khien_8.pdf