mirror of
https://github.com/gunner47/GyverLamp.git
synced 2025-08-08 17:30:59 +03:00
Добавлена функция таймера отключения; исправлены ошибки
This commit is contained in:
30
firmware/GyverLamp_v1.4/TimerManager.h
Normal file
30
firmware/GyverLamp_v1.4/TimerManager.h
Normal file
@@ -0,0 +1,30 @@
|
||||
class TimerManager
|
||||
{
|
||||
public:
|
||||
static bool TimerRunning; // флаг "таймер взведён"
|
||||
static bool TimerHasFired; // флаг "таймер отработал"
|
||||
static uint8_t TimerOption; // индекс элемента в списке List Picker'а
|
||||
static uint64_t TimeToFire; // время, в которое должен сработать таймер (millis)
|
||||
|
||||
static void HandleTimer( // функция, обрабатывающая срабатывание таймера, гасит матрицу
|
||||
bool *ONflag,
|
||||
void (*changePower)())
|
||||
{
|
||||
if (!TimerManager::TimerHasFired &&
|
||||
TimerManager::TimerRunning &&
|
||||
millis() >= TimerManager::TimeToFire)
|
||||
{
|
||||
#ifdef GENERAL_DEBUG
|
||||
Serial.printf("Выключение по таймеру\n\n");
|
||||
#endif
|
||||
|
||||
TimerManager::TimerRunning = false;
|
||||
TimerManager::TimerHasFired = true;
|
||||
FastLED.clear();
|
||||
delay(2);
|
||||
FastLED.show();
|
||||
*ONflag = !(*ONflag);
|
||||
changePower();
|
||||
}
|
||||
}
|
||||
};
|
Reference in New Issue
Block a user