From eac364b0d3d6012abbb5c00fdf9bc24dd0a3e0ca Mon Sep 17 00:00:00 2001 From: DashyFox Date: Thu, 29 Feb 2024 12:34:38 +0300 Subject: [PATCH] add simple sendData --- IR_Encoder.cpp | 7 +++++++ IR_Encoder.h | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/IR_Encoder.cpp b/IR_Encoder.cpp index 524270b..1f38e20 100644 --- a/IR_Encoder.cpp +++ b/IR_Encoder.cpp @@ -33,6 +33,13 @@ IR_Encoder::~IR_Encoder() { delete [] bitHigh; }; +void IR_Encoder::sendData(uint16_t addrTo, uint8_t dataByte, bool needAccept = false) { + uint8_t* dataPtr = new uint8_t[1]; + dataPtr[0] = dataByte; + sendData(addrTo, dataPtr, 1, needAccept); + delete[] dataPtr; +} + void IR_Encoder::sendData(uint16_t addrTo, uint8_t* data = nullptr, uint8_t len = 0, bool needAccept = false) { if (len > bytePerPack) { return; } constexpr uint8_t dataStart = msgBytes + addrBytes + addrBytes; diff --git a/IR_Encoder.h b/IR_Encoder.h index 0a89557..b25c3dd 100644 --- a/IR_Encoder.h +++ b/IR_Encoder.h @@ -47,13 +47,16 @@ public: void IR_Encoder::setBlindDecoders(IR_DecoderRaw* decoders [], uint8_t count); void rawSend(uint8_t* ptr, uint8_t len); + + void sendData(uint16_t addrTo, uint8_t dataByte, bool needAccept = false); void sendData(uint16_t addrTo, uint8_t* data = nullptr, uint8_t len = 0, bool needAccept = false); + void sendAccept(uint16_t addrTo, uint8_t customByte = 0); void sendRequest(uint16_t addrTo); void sendBack(uint8_t* data = nullptr, uint8_t len = 0); void sendBackTo(uint16_t addrTo, uint8_t* data = nullptr, uint8_t len = 0); + void isr(); - ~IR_Encoder(); volatile bool ir_out_virtual;