forked from airgradienthq/arduino
Fix capitalize folder and file name ignored
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
#include "StatusLed.h"
|
||||
|
||||
StatusLed::StatusLed(BoardType boardType) : boardType(boardType) {}
|
||||
|
||||
#if defined(ESP8266)
|
||||
void StatusLed::begin(Stream &debugStream) {
|
||||
this->_debugStream = &debugStream;
|
||||
this->begin();
|
||||
}
|
||||
#else
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Initialized LED
|
||||
*
|
||||
*/
|
||||
void StatusLed::begin(void) {
|
||||
if (this->_isBegin) {
|
||||
AgLog("Initialized, call end() then try again");
|
||||
return;
|
||||
}
|
||||
bsp = getBoardDef(this->boardType);
|
||||
if ((bsp == nullptr) || (bsp->LED.supported == false)) {
|
||||
AgLog("Board not support StatusLed");
|
||||
return;
|
||||
}
|
||||
|
||||
pinMode(bsp->LED.pin, OUTPUT);
|
||||
digitalWrite(bsp->LED.pin, !bsp->LED.onState);
|
||||
|
||||
this->state = LED_OFF;
|
||||
this->_isBegin = true;
|
||||
|
||||
AgLog("Initialize");
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Turn LED on
|
||||
*
|
||||
*/
|
||||
void StatusLed::setOn(void) {
|
||||
if (this->isBegin() == false) {
|
||||
return;
|
||||
}
|
||||
digitalWrite(bsp->LED.pin, bsp->LED.onState);
|
||||
this->state = LED_ON;
|
||||
AgLog("Turn ON");
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Turn LED off
|
||||
*
|
||||
*/
|
||||
void StatusLed::setOff(void) {
|
||||
if (this->isBegin() == false) {
|
||||
return;
|
||||
}
|
||||
digitalWrite(bsp->LED.pin, !bsp->LED.onState);
|
||||
this->state = LED_OFF;
|
||||
AgLog("Turn OFF");
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set LED toggle
|
||||
*
|
||||
*/
|
||||
void StatusLed::setToggle(void) {
|
||||
if (this->state == LED_ON) {
|
||||
this->setOff();
|
||||
} else {
|
||||
this->setOn();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Get current LED state
|
||||
*
|
||||
* @return StatusLed::State
|
||||
*/
|
||||
StatusLed::State StatusLed::getState(void) { return this->state; }
|
||||
|
||||
/**
|
||||
* @brief Convert LED state to string
|
||||
*
|
||||
* @param state LED state
|
||||
* @return String
|
||||
*/
|
||||
String StatusLed::toString(StatusLed::State state) {
|
||||
if (state == LED_ON) {
|
||||
return "On";
|
||||
}
|
||||
return "Off";
|
||||
}
|
||||
|
||||
bool StatusLed::isBegin(void) {
|
||||
if (this->_isBegin == false) {
|
||||
AgLog("Not-Initialized");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void StatusLed::end(void) {
|
||||
if (_isBegin == false) {
|
||||
return;
|
||||
}
|
||||
|
||||
#if defined(ESP8266)
|
||||
_debugStream = nullptr;
|
||||
#endif
|
||||
setOff();
|
||||
_isBegin = false;
|
||||
AgLog("De-initialize");
|
||||
}
|
||||
Reference in New Issue
Block a user