Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (240.51 KB, 2 trang )
Hướng dẫn sử dụng Kit 89
Bài 5 : Dùng ngắt timer viết ứng dụng LED RIVER
Mục đích:
Nắm vững ngắt timer.
Sử dụng ngắt timer để viết ứng dụng LED RIVER.
Yêu cầu:
Viết chương trình led river đơn giản, 1 led chạy từ P0.0 sang P1.1, đến P0.7
chuyển sang P3.7, P3.6. Khi tới P3.0 thì trở về P0.0. Thời gian chuyển qua trạng thái mới
là 1s
5.1 Kết nối phần cứng
Gạt switch 1 lên ON để kích hoạt Port 1 (các led đơn).
Gạt switch 2 lên ON để kích hoạt Port 3 (các led đơn và nút nhấn).
5.2 Viết chương trình
Đối với led chạy như yêu cầu, ta thấy có 16 trạng thái của P1 và P3 như sau
P0.0 sáng : P1 = 0x01, P3 = 0x00
P0.1 sáng : P1 = 0x02, P3 = 0x00
……
P0.7 sáng : P1 = 0x80, P3 = 0x00
P3.7 sáng : P1 = 0x00, P3 = 0x80
P3.6 sáng : P1 = 0x00, P3 = 0x40
……
P3.0 sáng : P1 = 0x00, P3 = 0x01
Như vậy, ta sẽ khai báo 2 mảng, mỗi mảng 16 phần tử cho P1 và P3, rồi cho 1
biến index tự động tăng lên sau 1s, khi index bằng 16 thì gán lại index bằng 0, để quá
trình được lặp lại.
Đối với led river có nhiều trạng thái hơn, bạn chỉ cần khai báo ra tất cả các trạng
thái vào 1 mảng, rồi lần lượt định kì xuất nó ra.
Việc delay gi
ữa các trạng thái, ta sẽ sử dụng lại hàm delay_ms(unsigned int