40 lines
573 B
C++
40 lines
573 B
C++
|
|
/*
|
|||
|
|
* clock.hpp
|
|||
|
|
*
|
|||
|
|
* Created on: 13 <EFBFBD><EFBFBD><EFBFBD>. 2023 <EFBFBD>.
|
|||
|
|
* Author: sychev
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
#ifndef FREE_RTOS_CLOCK_CLOCK_HPP_
|
|||
|
|
#define FREE_RTOS_CLOCK_CLOCK_HPP_
|
|||
|
|
|
|||
|
|
#include <kernel/dpl/ClockP.h>
|
|||
|
|
|
|||
|
|
namespace free_rtos {
|
|||
|
|
|
|||
|
|
class Clock {
|
|||
|
|
public:
|
|||
|
|
using Callback = void(*)(ClockP_Object *,void *);
|
|||
|
|
|
|||
|
|
bool init(uint32_t period_ms, Callback cbk, void * arg);
|
|||
|
|
|
|||
|
|
void start();
|
|||
|
|
|
|||
|
|
void stop();
|
|||
|
|
|
|||
|
|
uint32_t getPeriod() {
|
|||
|
|
return prd_ms_;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
~Clock();
|
|||
|
|
private:
|
|||
|
|
ClockP_Object obj_;
|
|||
|
|
uint32_t prd_ms_; /// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><>
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
#endif /* FREE_RTOS_CLOCK_CLOCK_HPP_ */
|