SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
AXP517Led Class Reference

AXP517 charge LED driver. More...

#include <AXP517Led.hpp>

Inheritance diagram for AXP517Led:
[legend]

Public Member Functions

 AXP517Led (AXP517Core &core)
 Construct an AXP517 LED driver.
 
 ~AXP517Led ()=default
 
bool setOutputType (OutputType type) override
 Set the LED output type.
 
bool setMode (Mode mode) override
 Set the LED mode.
 
Mode getMode () override
 Get LED operating mode.
 
bool setManualState (ManualState state) override
 Set the LED manual state.
 
ManualState getManualState () override
 Get manual LED state (only meaningful when Mode::Manual is active).
 
- Public Member Functions inherited from PmicLedBase
virtual ~PmicLedBase ()=default
 

Additional Inherited Members

- Public Types inherited from PmicLedBase
enum class  OutputType : uint8_t { OpenDrain = 0 , PushPull = 1 }
 
enum class  Mode : uint8_t {
  AUTO = 0 , MANUAL = 1 , BREATH = 2 , DISABLE = 3 ,
  VENDOR = 255
}
 High-level LED operating mode (portable subset). More...
 
enum class  ManualState : uint8_t {
  HiZ = 0 , LEVEL_LOW = 1 , LEVEL_HIGH = 2 , BLINK_1HZ = 3 ,
  BLINK_4HZ = 4 , UNDEFINED = 255
}
 Manual LED state (portable subset). More...
 

Detailed Description

AXP517 charge LED driver.

Controls the AXP517 charge LED output type, automatic/manual mode, and manual output state.

Definition at line 42 of file AXP517Led.hpp.

Constructor & Destructor Documentation

◆ AXP517Led()

AXP517Led::AXP517Led ( AXP517Core core)
explicit

Construct an AXP517 LED driver.

Parameters
coreShared AXP517 register transport.

Definition at line 38 of file AXP517Led.cpp.

◆ ~AXP517Led()

AXP517Led::~AXP517Led ( )
default

Member Function Documentation

◆ getManualState()

AXP517Led::ManualState AXP517Led::getManualState ( )
overridevirtual

Get manual LED state (only meaningful when Mode::Manual is active).

Note
This retrieves the current LED behavior (e.g. on/off/Hi-Z).
Returns
Current manual state.

Implements PmicLedBase.

Definition at line 105 of file AXP517Led.cpp.

References PmicLedBase::BLINK_1HZ, PmicLedBase::BLINK_4HZ, axp517_regs::led::CHGLED_CFG, PmicLedBase::HiZ, PmicLedBase::LEVEL_HIGH, PmicLedBase::LEVEL_LOW, SensorCommWrapper::readReg(), and PmicLedBase::UNDEFINED.

◆ getMode()

AXP517Led::Mode AXP517Led::getMode ( )
overridevirtual

Get LED operating mode.

Note
This retrieves the current LED behavior (e.g. auto/manual).
Returns
Current operating mode.

Implements PmicLedBase.

Definition at line 73 of file AXP517Led.cpp.

References PmicLedBase::AUTO, PmicLedBase::BREATH, axp517_regs::led::CHGLED_CFG, PmicLedBase::DISABLE, SensorCommWrapper::getRegBit(), PmicLedBase::MANUAL, axp517_regs::ctrl::MODULE_EN1, SensorCommWrapper::readReg(), and PmicLedBase::VENDOR.

◆ setManualState()

bool AXP517Led::setManualState ( ManualState  state)
overridevirtual

Set the LED manual state.

Note
This function sets the manual state for the LED.
Parameters
stateThe manual state to set.
Return values
trueon success, false on register access failure.

Implements PmicLedBase.

Definition at line 90 of file AXP517Led.cpp.

References PmicLedBase::BLINK_1HZ, PmicLedBase::BLINK_4HZ, axp517_regs::led::CHGLED_CFG, PmicLedBase::HiZ, PmicLedBase::LEVEL_HIGH, PmicLedBase::LEVEL_LOW, and SensorCommWrapper::updateBits().

Referenced by setup().

◆ setMode()

bool AXP517Led::setMode ( Mode  mode)
overridevirtual

Set the LED mode.

Note
This function sets the mode for the LED.
Parameters
modeThe mode to set.
Return values
trueon success, false on register access failure.

Implements PmicLedBase.

Definition at line 55 of file AXP517Led.cpp.

References PmicLedBase::AUTO, PmicLedBase::BREATH, axp517_regs::led::CHGLED_CFG, SensorCommWrapper::clrRegBit(), PmicLedBase::DISABLE, PmicLedBase::MANUAL, axp517_regs::ctrl::MODULE_EN1, SensorCommWrapper::setRegBit(), and SensorCommWrapper::updateBits().

Referenced by loop(), and setup().

◆ setOutputType()

bool AXP517Led::setOutputType ( OutputType  type)
overridevirtual

Set the LED output type.

Note
This function sets the output type for the LED.
Parameters
typeThe output type to set.
Return values
trueon success, false on register access failure.

Implements PmicLedBase.

Definition at line 42 of file AXP517Led.cpp.

References axp517_regs::led::CHGLED_CFG, PmicLedBase::OpenDrain, PmicLedBase::PushPull, and SensorCommWrapper::updateBits().


The documentation for this class was generated from the following files: