HomeSpan/src/extras/RFControl.h

23 lines
830 B
C++

////////////////////////////////////
// RF Control Module //
////////////////////////////////////
class RFControl {
private:
int pin;
static volatile int numCycles;
static boolean configured;
static uint32_t *pRMT;
static int pCount;
static void eot_int(void *arg);
public:
RFControl(int pin); // creates transmitter on pin
static void clear(); // clears transmitter memory
static void add(uint16_t onTime, uint16_t offTime); // adds pulse of onTime ticks HIGH followed by offTime ticks LOW
void start(int _numCycles, int tickTime=1); // starts transmission of pulses, repeated for numCycles, where each tick in pulse is tickTime microseconds long
};