Thông báo

Collapse
No announcement yet.

Atmega8 - Ngắt ngoài và chế độ sleep

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Atmega8 - Ngắt ngoài và chế độ sleep

    Mạch của mình sử dụng atmega8 (không thể thay đổi nha) nhận điều khiển từ 4 công tắc ngoài.
    HIện tại mình check liên tục chân trạng thái (cao thấp) của PORTA 1.2.3.4 (được nối với 4 công tắc). Tuy nhiên cách này nếu sử dụng liên tục sẽ dấn đến rất tốn điện vì mình làm cho mấy chục mạch cùng chạy và lâu lâu mới bật tắc công tắc.

    Do đó mình nghĩ tới chế độ sleep, chỉ bị đánh thức khi có ngắt ngoài. Tuy nhiên atmega8 chỉ có 2 ngắt ngoài, trong khi mình có tới 4 công tắc điều khiển.

    Vậy cho hỏi trong trường hợp này mình nên thiết kết như thế nào để avr vẫn đi vào chế độ sleep được và thức zậy khi có đóng mở công tắc.

    Cảm ơn

  • #2
    Chào bạn, mình nghĩ thế này

    Sử dụng một ngắt ngoài để đánh thức

    Sau khi đánh thức thì cho một biến bằng 1 gì đó ( tự quy định)

    Trong vòng while(1)
    - Kiểm tra các chân khác thôi. Do dùng cách này nên bạn nối chung một chân của cả 4 công tắc với một chân ngắt đó ( tức là thằng nào cũng có thể tạo ngắt. Xong rồi test chân nào thực sự được ngắt thêm lần nữa ở vòng lặp chính.

    Hihi
    Be quan. Plz contact through email:

    Comment

    Về tác giả

    Collapse

    cowboy_188 Tìm hiểu thêm về cowboy_188

    Bài viết mới nhất

    Collapse

    Đang tải...
    X