Hướng dẫn sử dụng Kit 89 - Bài 10 potx

2 220 0
Hướng dẫn sử dụng Kit 89 - Bài 10 potx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Hướng dẫn sử dụng Kit 89 Bài 10 : Ngắt ngoài Mục đích: Nắm vững kĩ thuật điều khiển ngắt ngoài. Yêu cầu: Viết chương trình khi có ngắt ngoài 0 thì tăng biến đếm lên 1, ngắt ngoài 1 thì giảm đi 1, xuất giá trị ra led 7 đoạn. 10.1 Nguyên lý điều khiển ngắt ngoài Ngắt ngoài có 2 loại : Ngắt cạnh và ngắt mức. ¾ Ngắt cạnh cũng có 2 loại : ngắt cạnh lên xảy ra khi có sự chuyển tín hiệu từ mức thấp lên mức cao ở chân ngắt ngoài. Tương tự ngắt cạnh xuống xảy ra khi có sự chuyển tín hiệu từ mức cao xuống mức thấp. ¾ Ngắt mức cũng có 2 loại : ngắt mức cao và mức thấp. Ngắt mức cao x ảy ra khi tín hiệu tại chân ngắt ngoài ở mức cao trong tối thiểu 1 chu kì. Trong vi điều khiển P89V51RB2, hỗ trợ 2 loại ngắt ngoài : ngắt cạnh lên và ngắt mức cao. Việc cấu hình cho ngắt ngoài dựa vào bit ITn trong thanh ghi TCON. 10.2 Kết nối phần cứng Hai ngắt ngoài được mắc vào nút nhấn, tại chân P3.2 là ngắt ngoài 0 và P3.3 là ngắt ngoài 1. Gạt switch 4 lên ON để kích hoạt led 7 đoạn. 10.3 Viết chương trình Module ngắt ngoài khá đơn giản, gồm các hàm khởi tạo được khai báo trong file ext_int.h : void init_ext_int0(); void init_ext_int1(); Các hàm này được hiện thực trong file ext_int.c cùng với 2 hàm phục vụ ngắt ngắt ngoài. Code xử lý trong bài mẫu này khá đơn giản, chỉ là việc cộng và trừ biến count rồi dùng biến này để hiển thị giá trị tương ứng ra led 7 đoạn. 10.3.1 Hàm init_ext_int0() void init_ext_int0() { IE &= ~(0x01);// enable external interrupt 0 IE |= 0x01; IT0 = 1; } 10.3.2 Hàm init_ext_int1() void init_ext_int1() { IE &= ~(0x04);// enable external interrupt 1 BKIT HARDWARE CLUB – www.bkit4u.com 58 Hướng dẫn sử dụng Kit 89 IE |= 0x04; IT1 = 1; } 10.3.3 Hàm ext0_isr() Đây là hàm phục vụ ngắt ngoài 0. void ext0_isr() interrupt 0 { //Add your code here if(count<9) count++; } 10.3.4 Hàm ext1_isr() Đây là hàm phục vụ ngắt ngoài 1. void ext0_isr() interrupt 1 { //Add your code here if(count>0) count ; } BKIT HARDWARE CLUB – www.bkit4u.com 59 . IT0 = 1; } 10. 3.2 Hàm init_ext_int1() void init_ext_int1() { IE &= ~(0x04);// enable external interrupt 1 BKIT HARDWARE CLUB – www.bkit4u.com 58 Hướng dẫn sử dụng Kit 89 IE |= 0x04;. Hướng dẫn sử dụng Kit 89 Bài 10 : Ngắt ngoài Mục đích: Nắm vững kĩ thuật điều khiển ngắt ngoài. Yêu cầu: Viết. ngắt ngắt ngoài. Code xử lý trong bài mẫu này khá đơn giản, chỉ là việc cộng và trừ biến count rồi dùng biến này để hiển thị giá trị tương ứng ra led 7 đoạn. 10. 3.1 Hàm init_ext_int0() void

Ngày đăng: 13/08/2014, 22:22

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan