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

SY6970 LED/STAT Pin Control. More...

#include <SY6970Led.hpp>

Inheritance diagram for SY6970Led:
[legend]

Public Member Functions

 SY6970Led (SY6970Core &core)
 Construct LED interface.
 
 ~SY6970Led ()=default
 
bool setOutputType (OutputType type) override
 Set LED output type.
 
bool setMode (Mode mode) override
 Set LED operating mode.
 
Mode getMode () override
 Get LED operating mode.
 
bool setManualState (ManualState state) override
 Set manual LED state.
 
ManualState getManualState () override
 Get manual LED state.
 
- 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

SY6970 LED/STAT Pin Control.

Definition at line 55 of file SY6970Led.hpp.

Constructor & Destructor Documentation

◆ SY6970Led()

SY6970Led::SY6970Led ( SY6970Core core)
explicit

Construct LED interface.

Parameters
coreReference to SY6970 core communication

Definition at line 38 of file SY6970Led.cpp.

◆ ~SY6970Led()

SY6970Led::~SY6970Led ( )
default

Member Function Documentation

◆ getManualState()

PmicLedBase::ManualState SY6970Led::getManualState ( )
overridevirtual

Get manual LED state.

Returns
UNDEFINED as manual control is not supported

Implements PmicLedBase.

Definition at line 69 of file SY6970Led.cpp.

References PmicLedBase::UNDEFINED.

◆ getMode()

PmicLedBase::Mode SY6970Led::getMode ( )
overridevirtual

Get LED operating mode.

Returns
Current LED mode (AUTO, DISABLE, or VENDOR on error)

Implements PmicLedBase.

Definition at line 56 of file SY6970Led.cpp.

References PmicLedBase::AUTO, PmicLedBase::DISABLE, SensorCommWrapper::readReg(), and PmicLedBase::VENDOR.

◆ setManualState()

bool SY6970Led::setManualState ( ManualState  state)
overridevirtual

Set manual LED state.

Note
SY6970 does not support manual LED control
Returns
false always

Implements PmicLedBase.

Definition at line 63 of file SY6970Led.cpp.

◆ setMode()

bool SY6970Led::setMode ( Mode  mode)
overridevirtual

Set LED operating mode.

Controls the STAT pin behavior. SY6970 supports:

  • AUTO: Hardware-controlled (charging indicator)
  • DISABLE: STAT pin disabled
Parameters
modeOperating mode
Returns
true on success, false on I2C error

Implements PmicLedBase.

Definition at line 46 of file SY6970Led.cpp.

References PmicLedBase::AUTO, PmicLedBase::DISABLE, and SensorCommWrapper::updateBits().

Referenced by setup().

◆ setOutputType()

bool SY6970Led::setOutputType ( OutputType  type)
overridevirtual

Set LED output type.

Sets the STAT pin output configuration. SY6970 only supports OpenDrain mode.

Parameters
typeOutput type (OpenDrain or PushPull)
Returns
true on success, false on I2C error
Note
SY6970 STAT pin is open-drain; PushPull is not supported This function always returns false.

Implements PmicLedBase.

Definition at line 40 of file SY6970Led.cpp.


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