Trích:
Ngắt ngoài có 2 kiểu, bằng thay đổi trạng thái chân:
+ Ngắt cạnh xuống: low to high
Code:
BCF OPTION_REG,INTEDG ;interrupt cạnh xuống+ Ngắt cạnh lên: high to low
Code:
BSF OPTION_REG,INTEDG ;interrupt cạnh lênKhi khai báo ngắt, ta phải khai báo cho pic biết sử dụng ngắt nào.
Vậy ở đây, khi thả button lên, tuy có thay đổi trạng thái chân RB0, vẫn không có ngắt xảy ra.
|
Nếu mình nhớ không nhầm thì bit INTEDG chỉ xác định sườn tác động cho ngắt ngoài thôi mà! Đâu có liên quan gì đến ngắt thay đổi đâu.
Theo đúng nghĩa của ngắt thay đổi, sườn lên hay sườn xuống đều phải gây ngắt và việc lựa chọn sườn tác động nào để gây ngắt là do người lập trình quyết định. Các bạn có thể tham khảo ở một appnote của Microchip vận dụng ngắt onchange để dùng như ngắt ngoài sẽ rõ.