View Single Post
Old 23-11-2009, 07:51 AM   #8
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi pk178 View Post
Cám ơn bác đã giúp đỡ !!!

Ý của bác là không dùng ngắt nữa, mà thay vào đó là mình sử dụng 1 hàm con thông thường, rồi quét liên tục (chân RB0) xem nó có thay đổi mức logic không, nếu thay đổi thì nhảy đến chương trình con phải không ạ ?

Nếu như vậy, bác cho em hỏi ý tưởng này có được không ạ : em sẽ dùng ngắt để cho phép chọn chế độ, ứng với mỗi chế độ do người dùng chọn, chương trình ngắt sẽ nhảy đến hàm con tương ứng với chế độ đó, như vậy có được không ạ ?
Ý của tôi là trong chương trình phục vụ ngắt, bạn bật 1 cờ báo hiệu rằng đã có sự kiện ngắt. Ở trong vòng lặp chính của chương trình thì bạn dùng cấu trúc if ... để kiểm tra xem có sự kiện đó hay không, nếu có thì thực hiện các thao tác cần thiết. Làm cách này thì bạn vẫn có thể đáp ứng nhanh với sự kiện, mà không mất thời gian trong phần xử lý ngắt, và đặc biệt là không làm tăng độ sâu khi sử dụng stack.

Ý tưởng của bạn nên sửa lại thành: trong chương trình xử lý ngắt sẽ đặt biến trạng thái ứng với từng chế độ, trong vòng lặp chính của chương trình sẽ kiểm tra giá trị biến trạng thái và gọi hàm tương ứng.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn