Watchdog dla nowego Arduino Uno R4

Watchdog dla nowego Arduino Uno R4

O watchdogu dla Arduino napisałem dwuczęściowy artykuł. Stosując jednak nową wersję komputerka, nie możemy już użyć biblioteki napisanej dla rodziny mikrokontrolerów AVR. Na szczęście wraz z obsługą nowej płytki pojawiają się także przykłady, między którymi znajdziemy informację na temat tej pożytecznej funkcji w nowej odsłonie.

Przede wszystkim będziemy musieli teraz użyć biblioteki WDT.h którą znajdziemy w systemie, jeśli ten będzie obsługiwał nowe Uno. W sekcji setup należy zadeklarować maksymalny czas, po którym nieodświeżany timer watchdoga zresetuje kontroler. Czas ten niestety nie może być dłuższy od 5592 ms i tutaj tkwi różnica wobec wersji AVR, oferujących do ośmiu sekund czasu. W końcu w pętli loop, w wybranych miejscach należy resetować licznik watchdoga, jak to się zwykle robi.

#include <WDT.h>  // Biblioteka obsługi watchdoga.
void setup() {
  WDT.begin(1000);  // Czas odświeżania licznika watchdoga, nie dłuższy od 5592 ms
}
void loop() {
  WDT.refresh();  // Resetuj timer watchdoga.
}

Istnieje możliwość przedłużenia limitu niecałych sześciu sekund przy pomocy dodatkowego timera, ale o tym napiszę przy okazji omawiania większego projektu.

Powiązane tematy

Płytka edukacyjna TME-EDU-ARD-2Płytka edukacyjna TME-EDU-ARD-2Sprawdź tutaj

Przeczytaj również

Nasi partnerzy

TMETech Master EventTME EducationPoweredby
Copyright © 2025 arduino.pl