Trích:
Nguyên văn bởi fan.pic
mình đang làm đề tài PID động cơ servo. dùng 3 ngắt:
#int_RDA: truyền dữ liệu ( kp,ki,kd,tocdo) từ máy tính xuong chip
#int_ext: ngắt ngoài để đếm xung encoder
#int_timer1: dùng để đo tốc độ động cơ
timer2 dùng cho PWM
vấn đề là: ngắt ngoài bị xãy ra liên tục, vậy làm sao để các ngắt khác hoạt động được, mình nghĩ là nên thiết lập mức ưu tiên ngắt trong chương trình chính. nhưng ko biết thiết lập như thế nào và thứ tự ưu tiên ra sao??????
Mong mọi người giúp mình một tay
|
Với mọi PIC bạn có thể: Ưu tiên ngắt(Ngắt được yêu tiên sẽ kiểm tra cờ ngắt trước):
- Khai bao: #priority [loai ngắt].
- Ví dụ: #priority RDA //Yêu tiên ngắt RS232.
Chỉ với PIC18: Có thêm Yêu tiên ngắt cấp 2
- Khai bao:
+ #device high_ints=true
+ Ex: #int_RDA FAST/HIGT
FAST: Chi su dung duy nhat cho 1 ngat
HIGT: Su dung cho nhieu ngat duoc
Bạn đọc thêm ở đây:
http://www.dientumaytinh.com/2012/02...trong-pic.html
Thân,
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email:
tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".