A simple library to handle LEDs a little bit easier.
Diff: LEDUtil.cpp
- Revision:
- 1:220396a0cb8a
- Parent:
- 0:3c77443bfb5b
diff -r 3c77443bfb5b -r 220396a0cb8a LEDUtil.cpp --- a/LEDUtil.cpp Fri Jul 31 23:26:36 2015 +0000 +++ b/LEDUtil.cpp Fri Jul 31 23:36:45 2015 +0000 @@ -4,15 +4,17 @@ #define PIN_HIGH 1 #define PIN_LOW 0 -LEDUtil::LEDUtil(PinName targetPinName, LEDUtil::Polarity targetPinPolarity) { +LEDUtil::LEDUtil(PinName targetPinName, LEDUtil::Polarity targetPinPolarity) +{ this->pinName = targetPinName; this->polarity = targetPinPolarity; -} +} + - -void LEDUtil::setLedState(LedState state) { +void LEDUtil::setLedState(LedState state) +{ DigitalOut pin(pinName); - + if (state == LEDUtil::LED_ON) { // turns on the LED pin.write((polarity == LEDUtil::HIGH_ON_LOW_OFF) ? PIN_HIGH : PIN_LOW); @@ -22,15 +24,18 @@ } } -void LEDUtil::turnOn() { +void LEDUtil::turnOn() +{ LEDUtil::setLedState(LEDUtil::LED_ON); } -void LEDUtil::turnOff() { +void LEDUtil::turnOff() +{ LEDUtil::setLedState(LEDUtil::LED_OFF); } -bool LEDUtil::isOn() { +bool LEDUtil::isOn() +{ if (getLedState() == LEDUtil::LED_ON) { return true; } else { @@ -38,20 +43,22 @@ } } -bool LEDUtil::isOff() { +bool LEDUtil::isOff() +{ return (!LEDUtil::isOn()); } -LEDUtil::LedState LEDUtil::getLedState() { +LEDUtil::LedState LEDUtil::getLedState() +{ DigitalOut pin(pinName); LedState state = LEDUtil::LED_OFF; - + if (pin.read() == PIN_HIGH) { state = ((polarity == LEDUtil::HIGH_ON_LOW_OFF) ? LEDUtil::LED_ON : LEDUtil::LED_OFF); } else { state = ((polarity == LEDUtil::LOW_ON_HIGH_OFF) ? LEDUtil::LED_OFF : LEDUtil::LED_ON); } - + return state; }