Replace app_timer with FreeRTOS timers
This commit is contained in:
@@ -1,37 +1,33 @@
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
#include "app_timer.h"
|
||||
#include "portmacro_cmsis.h"
|
||||
#include <FreeRTOS.h>
|
||||
#include <timers.h>
|
||||
|
||||
namespace Pinetime {
|
||||
namespace System {
|
||||
class SystemTask;
|
||||
}
|
||||
namespace Controllers {
|
||||
|
||||
|
||||
class TimerController {
|
||||
public:
|
||||
TimerController() = default;
|
||||
|
||||
void Init();
|
||||
|
||||
|
||||
void Init(System::SystemTask* systemTask);
|
||||
|
||||
void StartTimer(uint32_t duration);
|
||||
|
||||
|
||||
void StopTimer();
|
||||
|
||||
|
||||
uint32_t GetTimeRemaining();
|
||||
|
||||
|
||||
bool IsRunning();
|
||||
|
||||
void OnTimerEnd();
|
||||
|
||||
void Register(System::SystemTask* systemTask);
|
||||
|
||||
private:
|
||||
System::SystemTask* systemTask = nullptr;
|
||||
TickType_t endTicks;
|
||||
bool timerRunning = false;
|
||||
TimerHandle_t timer;
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user