Làm thế nào để bạn lập trình một chế độ ngủ cho Arduino của bạn? Đặc biệt đối với các thiết kế chạy bằng pin, những kỹ thuật tốt để ngủ CPU nhưng chỉ thức dậy khi cần thiết?
Làm thế nào để bạn lập trình một chế độ ngủ cho Arduino của bạn? Đặc biệt đối với các thiết kế chạy bằng pin, những kỹ thuật tốt để ngủ CPU nhưng chỉ thức dậy khi cần thiết?
Câu trả lời:
avr / ngủ.h có thể có những gì bạn cần - tài liệu có tại http://www.nongnu.org/avr-libc/user-manual/group__avr__s ngủ.html
Có một số cảnh báo về việc đưa CPU vào trạng thái ngủ :)
Hi vọng điêu nay co ich.
Hãy nhớ rằng tùy thuộc vào chế độ ngủ của bạn, có một vài nguồn ngắt chạy trên arduino của bạn. timer0 tạo ra một ngắt tràn sẽ đánh thức arduino của bạn khoảng mỗi mili giây và uart sẽ tạo ra một ngắt mỗi khi có một ký tự đến. ... và, tất nhiên, có các ngắt ngoài ở chân 2 và 3 mà bạn có thể hoặc không thể kích hoạt bằng cách sử dụng chức năng Đính kèm.
khi một ngắt xảy ra, bản phác thảo của bạn sẽ được đánh thức khỏi giấc ngủ và sau khi ngắt được phục vụ, nó sẽ tiếp tục chạy từ điểm mà nó đi vào giấc ngủ. Giải pháp cho vấn đề này là thiết lập cho bạn bản phác thảo để tự ngủ trở lại mọi lúc, trừ khi thực sự thức dậy.
đây, thư viện ngủ arduino của tôi