File LED.h
File List > Firmware > Libraries > PanelGroup > Outputs > LED > LED.h
Go to the documentation of this file
#pragma once
#ifdef ARDUINO_ARCH_STM32
#include <PanelGroup.h> // OutputBase, PinRef
namespace OpenSkyhawk {
class LED : public OutputBase {
public:
LED(uint16_t controlId, uint16_t mask, PinRef pin, bool reverse = false);
void configure() override;
void onControlPacket(uint16_t controlId, uint16_t value) override;
#ifdef LED_TEST
uint16_t writeCount() const { return _writeCount; }
#endif
private:
uint16_t _controlId;
uint16_t _mask;
PinRef _pin;
bool _reverse;
bool _lastOn = false;
bool _hasState = false;
#ifdef LED_TEST
uint16_t _writeCount = 0;
#endif
};
} // namespace OpenSkyhawk
#endif // ARDUINO_ARCH_STM32