Mục lục:
- Bước 1: Bộ đếm thời gian Watchdog này là gì?
- Bước 2: Làm thế nào để Kích hoạt Bộ hẹn giờ Cơ quan giám sát?
- Bước 3: Tiếp tục chạy chương trình của bạn
- Bước 4: Cách sử dụng ví dụ
- Bước 5: Vấn đề về bộ hẹn giờ của cơ quan giám sát
- Bước 6: Thưởng thức
Video: Arduino Hang Guardian - Hướng dẫn hẹn giờ Arduino Watchdog: 6 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:32
Chào mọi người, Nó xảy ra cho tất cả chúng ta. Bạn xây dựng một dự án, nhiệt tình kết nối tất cả các cảm biến và đột nhiên, Arduino bị treo và không có đầu vào nào được xử lý.
“Chuyện gì đang xảy ra vậy?”, Bạn sẽ hỏi và bắt đầu tìm hiểu mã của mình, chỉ để nhận ra rằng bạn đã bị mắc kẹt trong một vòng lặp vô hạn. Cảm ơn Chúa vì Arduino đã ở trên băng ghế của bạn chứ không phải ở một nơi hẻo lánh.
Hôm nay, chúng ta sẽ xem xét cách chúng ta có thể sử dụng bộ hẹn giờ cơ quan giám sát trên Arduino để ngăn điều này xảy ra.
Bước 1: Bộ đếm thời gian Watchdog này là gì?
Bộ đếm thời gian cho cơ quan giám sát Arduino như tên của nó là bộ hẹn giờ chạy riêng biệt với CPU chính trên bo mạch. Bộ đếm thời gian này có thể được sử dụng để kiểm tra định kỳ trạng thái của bo mạch và trong trường hợp bo mạch bị mắc kẹt trong vòng lặp phần mềm hoặc bị kẹt do lỗi phần cứng, bộ đếm thời gian của cơ quan giám sát có thể đặt lại Arduino và bắt đầu lại toàn bộ.
Theo mặc định khi không sử dụng, bộ đếm thời gian này bị tắt trên tất cả các dự án và chỉ khi chúng tôi bật nó, chúng tôi cần đảm bảo định kỳ thông báo cho nó biết để không đặt lại bảng của chúng tôi nếu nó vẫn hoạt động như mong đợi.
Để có thể sử dụng bộ đếm thời gian của cơ quan giám sát, trước tiên chúng ta cần đưa tệp avr / wdt.h vào bản phác thảo Arduino của mình. Đây là thư viện tiêu chuẩn chứa các hành động của cơ quan giám sát.
Bước 2: Làm thế nào để Kích hoạt Bộ hẹn giờ Cơ quan giám sát?
Để bật bộ đếm thời gian, chúng tôi sử dụng chức năng “wdt_enable”, nơi chúng tôi cần vượt qua khoảng ngưỡng mà tại đó bảng sẽ được đặt lại. Tùy thuộc vào trường hợp sử dụng của chúng tôi, điều này có thể ở bất kỳ đâu từ 15 mili giây đến tối đa 8 giây trong các cài đặt được xác định trước được chứa trong thư viện cơ quan giám sát.
THRESHOLD - TÊN HỢP LỆ
15 ms WDTO_15MS 30 ms WDTO_30MS 60 ms WDTO_60MS 120 ms WDTO_120MS 250 ms WDTO_250MS 500 ms WDTO_500MS 1s WDTO_1S 2s WDTO_2S 4s WDTO_4S 8s WDTO_8S
Bước 3: Tiếp tục chạy chương trình của bạn
Bây giờ, với bộ đếm thời gian được bật, để ngăn nó đặt lại Arduino của chúng ta, chúng ta cần gọi hàm “wdt_reset” định kỳ để đặt lại bộ hẹn giờ của cơ quan giám sát trước khi hết thời gian ngưỡng.
Khi chọn khoảng thời gian đặt lại, điều quan trọng là chúng tôi phải xem xét bất kỳ hoạt động kéo dài nào như đọc hoặc gửi dữ liệu hoặc kết nối với các cảm biến bên ngoài. Ngưỡng đặt lại phải lớn hơn ít nhất một lần rưỡi so với những thời điểm này để tránh bất kỳ thiết lập lại ngẫu nhiên nào.
Bước 4: Cách sử dụng ví dụ
Trong chương trình ví dụ mà bạn có thể tải xuống tại đây, trước tiên chúng tôi thiết lập bộ đếm thời gian cho cơ quan giám sát với khoảng thời gian đặt lại là 4 giây. Sau đó, để biết rằng chúng ta đang ở trong chức năng thiết lập, chúng ta nhấp nháy đèn LED 3 lần nhanh chóng và sau đó trong vòng lặp chính, trước tiên chúng ta đặt lại bộ đếm thời gian, thắp sáng đèn LED với khoảng thời gian dài hơn và sau đó chúng ta tắt nó đi. Vòng tiếp theo đặt lại bộ đếm thời gian một lần nữa cho đến khi thời gian sáng lâu hơn 4 giây.
Khi điều này xảy ra, bộ đếm thời gian của cơ quan giám sát sẽ đặt lại bo mạch và quá trình thiết lập được thực hiện lại.
Bước 5: Vấn đề về bộ hẹn giờ của cơ quan giám sát
Một vấn đề có thể xảy ra với bộ đếm thời gian của cơ quan giám sát, tùy thuộc vào bộ nạp khởi động của Arduino của bạn là nếu giá trị bộ hẹn giờ của cơ quan giám sát quá thấp và bộ nạp khởi động không đặt lại bộ hẹn giờ khi tải lên mã mới, bạn có thể làm hỏng bảng Arduino của mình theo cách nó sẽ luôn bị kẹt trong giai đoạn khởi động. Bộ nạp khởi động sẽ cố gắng khởi động, nhưng bộ đếm thời gian sẽ tiếp tục đặt lại bo mạch, không bao giờ cho phép nó khởi động đúng cách. Để ngăn chặn các vấn đề như thế này, hãy đảm bảo luôn sử dụng các khoảng thời gian ngưỡng từ 2 giây trở lên.
Bước 6: Thưởng thức
Nếu bạn có ví dụ về nơi bạn đã sử dụng bộ đếm thời gian của cơ quan giám sát trong một dự án thực tế, hãy cho tôi biết trong phần nhận xét, hãy nhớ thích video và đừng quên đăng ký.
Chúc mừng và cảm ơn vì đã đọc / xem!
Đề xuất:
Động cơ bước với Dép xỏ ngón và Hẹn giờ 555; Phần đầu tiên của mạch Bộ hẹn giờ 555: 3 bước
Động cơ bước với Dép xỏ ngón và Hẹn giờ 555; Phần đầu của mạch Bộ hẹn giờ 555: Động cơ bước là động cơ DC chuyển động theo các bước rời rạc, nó thường được sử dụng trong máy in và thậm chí cả robot. Tôi sẽ giải thích mạch này theo các bước. Phần đầu tiên của mạch là 555 bộ đếm thời gian. Đây là hình ảnh đầu tiên (xem ở trên) với chip 555 w
Bộ vi điều khiển AVR. Đèn LED Flasher sử dụng bộ hẹn giờ. Bộ hẹn giờ Ngắt. Chế độ hẹn giờ CTC: 6 bước
Bộ vi điều khiển AVR. Đèn LED Flasher sử dụng bộ hẹn giờ. Bộ hẹn giờ Ngắt. Chế độ hẹn giờ CTC: Xin chào các bạn! Bộ hẹn giờ là một khái niệm quan trọng trong lĩnh vực điện tử. Mọi thành phần điện tử hoạt động trên cơ sở thời gian. Cơ sở thời gian này giúp giữ cho tất cả các công việc được đồng bộ hóa. Tất cả các bộ vi điều khiển đều hoạt động ở một số tần số xung nhịp được xác định trước,
Bộ hẹn giờ NE555 - Định cấu hình Bộ hẹn giờ NE555 trong một cấu hình có thể linh hoạt: 7 bước
Bộ hẹn giờ NE555 | Đặt cấu hình Bộ hẹn giờ NE555 trong một cấu hình linh hoạt: Bộ định thời NE555 là một trong những IC được sử dụng phổ biến nhất trong thế giới điện tử. Nó ở dạng DIP 8, có nghĩa là nó có 8 chân
Bộ điều khiển mực nước tự động sử dụng bóng bán dẫn hoặc IC hẹn giờ 555: 5 bước
Bộ điều khiển mực nước tự động sử dụng bóng bán dẫn hoặc IC hẹn giờ 555: Giới thiệu: Hii Mọi người ở đây chúng ta sẽ tìm hiểu về Tiết kiệm nước hiệu quả. vì vậy hãy đi qua các bước và các Câu một cách cẩn thận. Sự cố tràn két nước là một sự cố thường gặp dẫn đến tình trạng lãng phí nước. Mặc dù có ma
20 giờ $ 20 Bảng xây dựng trò chơi điện tử hàng đầu với hàng trăm trò chơi được tích hợp sẵn.: 7 bước (có hình ảnh)
20 giờ $ 20 Table Top Arcade Build với hàng trăm trò chơi được tích hợp sẵn. Vì tôi không quá vội vàng nên tôi chỉ đợi cho đến khi tích lũy được tất cả các thành phần cần thiết cho việc xây dựng với giá rẻ. Đây là