carrierPauseIfIdle/carrierResume

This commit is contained in:
2026-02-06 16:06:23 +03:00
parent d1c84ba18a
commit 8a0d7f8dba
2 changed files with 30 additions and 1 deletions

View File

@ -32,6 +32,8 @@ public:
static void isr();
static void begin(HardwareTimer* timer, uint8_t channel, IRQn_Type IRQn, uint8_t priority, void(*isrCallback)() = nullptr);
static HardwareTimer* get_IR_Timer();
/** Call from main loop/tick: if ISR requested carrier stop, pause timer here (not in ISR). */
static void tick();
void enable();
void disable();
@ -69,6 +71,9 @@ public:
void _isr();
private:
static volatile bool carrierStopPending;
static void carrierResume();
static void carrierPauseIfIdle();
IR_SendResult _sendBack(bool isAdressed, uint16_t addrTo, uint8_t *data, uint8_t len);
void setDecoder_isSending();