Bài giảng Vi xử lý - Vi điều khiển - Chương 2: Họ vi điều khiển 8051 (Interrupt) - Phan Đình Duy
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ó.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tải về để xem bản đầy đủ
Bạn đang xem 10 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 (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 (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:
- bai_giang_vi_xu_ly_vi_dieu_khien_chuong_2_ho_vi_dieu_khien_8.pdf