2022-04-10 16:31:20 +02:00
2022-03-31 18:04:39 +02:00

CMSIS OS2

Library using cmsis_os2.h functionality for RTOS projects.

Modules are enabled via defines set in sta/config.hpp which must be provided by the application.

System events

Enable: STA_SYSTEM_EVENT_ENABLE

Requirements:

  • EventFlag: systemEvent

Watchdog

Watchdog task gets woken periodically (every STA_WATCHDOG_TIMER_PERIOD ticks) or via sta::nofityWatchdog(uint32_t) calls and calls sta::watchdogEventHandler(void *, uint32_t). Applications must implement sta::watchdogEventHandler(void *, uint32_t).

Enable: STA_WATCHDOG_ENABLE

Requirements:

  • Task: watchdog
  • Timer: heartbeat

Configuration:

  • Heartbeat timer period: STA_WATCHDOG_TIMER_PERIOD (defaults to 1000).

Startup task

Startup task calls sta::startupTaskExtras(void *), starts the watchdog timer if enabled and terminates the thread. sta::startupTaskExtras(void *) may be overridden by the application.

Enable: STA_STARTUP_TASK_ENABLE

Requirements:

  • Task: startupTask (alternative: call manually in freertos.c default task)
Description
CMSIS-RTOS2 wrapped into classes
Readme GPL-3.0 306 KiB
Languages
C++ 68.5%
C 30.3%
CMake 1.2%