uv-k5-firmware-chinese-lts/external/CMSIS_5/CMSIS/RTOS/Template/CPP/RtosTimer.cpp
2023-11-30 14:38:27 +08:00

28 lines
587 B
C++

#include "RtosTimer.h"
#include <string.h>
#include "cmsis_os.h"
//#include "error.h"
namespace rtos {
RtosTimer::RtosTimer(void (*periodic_task)(void const *argument), os_timer_type type, void *argument) {
#ifdef CMSIS_OS_RTX
_timer.ptimer = periodic_task;
memset(_timer_data, 0, sizeof(_timer_data));
_timer.timer = _timer_data;
#endif
_timer_id = osTimerCreate(&_timer, type, argument);
}
osStatus RtosTimer::start(uint32_t millisec) {
return osTimerStart(_timer_id, millisec);
}
osStatus RtosTimer::stop(void) {
return osTimerStop(_timer_id);
}
}