forked from Akcelerometry_drgania_WMT/PI_mikrokontroler
Wgranie zmian do repozytorium
This commit is contained in:
38
releases/v1.4.2.3/include/Watchdog.h
Normal file
38
releases/v1.4.2.3/include/Watchdog.h
Normal file
@@ -0,0 +1,38 @@
|
||||
#pragma once
|
||||
/**
|
||||
* Watchdog — prosty interfejs do inicjalizacji i karmienia WDT z dowolnego modułu.
|
||||
*
|
||||
* Obsługiwane środowiska:
|
||||
* - ESP32 Arduino Core / ESP-IDF (esp_task_wdt)
|
||||
* - Fallback: no-op na innych platformach
|
||||
*
|
||||
* Użycie:
|
||||
* Watchdog::init(5, true);
|
||||
* Watchdog::addThisTask();
|
||||
* ...
|
||||
* Watchdog::feed();
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
namespace Watchdog {
|
||||
|
||||
/** Inicjalizacja Task Watchdog (idempotentna). */
|
||||
bool init(int timeout_seconds = 5, bool panic_on_trigger = true);
|
||||
|
||||
/** Dodaje bieżący task (wątki FreeRTOS: wołaj w ciele tego taska). */
|
||||
bool addThisTask();
|
||||
|
||||
/** Usuwa bieżący task z nadzoru WDT. */
|
||||
bool removeThisTask();
|
||||
|
||||
/** Karmi watchdog (reset licznika). */
|
||||
void feed();
|
||||
|
||||
/** Zmienia timeout (wykonuje re-init wewnętrznie, jeśli trzeba). */
|
||||
bool setTimeout(int timeout_seconds);
|
||||
|
||||
/** Czy watchdog jest aktywny (zainicjalizowany)? */
|
||||
bool isActive();
|
||||
|
||||
} // namespace Watchdog
|
||||
Reference in New Issue
Block a user