#include "IRremote.h" #include "IRremoteInt.h" #include "ir_Lego_PF_BitStreamEncoder.h" //============================================================================== // L EEEEEE EEEE OOOO // L E E O O // L EEEE E EEE O O // L E E E O O LEGO Power Functions // LLLLLL EEEEEE EEEE OOOO Copyright (c) 2016 Philipp Henkel //============================================================================== // Supported Devices // LEGO® Power Functions IR Receiver 8884 //+============================================================================= // #if SEND_LEGO_PF #if DEBUG namespace { void logFunctionParameters(uint16_t data, bool repeat) { DBG_PRINT("sendLegoPowerFunctions(data="); DBG_PRINT(data); DBG_PRINT(", repeat="); DBG_PRINTLN(repeat?"true)" : "false)"); } } // anonymous namespace #endif // DEBUG void IRsend::sendLegoPowerFunctions(uint16_t data, bool repeat) { #if DEBUG ::logFunctionParameters(data, repeat); #endif // DEBUG enableIROut(38); static LegoPfBitStreamEncoder bitStreamEncoder; bitStreamEncoder.reset(data, repeat); do { mark(bitStreamEncoder.getMarkDuration()); space(bitStreamEncoder.getPauseDuration()); } while (bitStreamEncoder.next()); } #endif // SEND_LEGO_PF