SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
AXP1xxTimer< Regs > Class Template Reference

#include <AXP1xxTimer.hpp>

Inheritance diagram for AXP1xxTimer< Regs >:
[legend]

Public Member Functions

 AXP1xxTimer (SensorCommWrapper &core)
 
bool setTimer (uint8_t minutes) override
 Start the timer with the given duration, or stop it.
 
uint8_t getTimer () const override
 Read the current timer value from REG8AH bits[6:0].
 
bool isTimedOut () const override
 Check whether the timer has expired (bit 7 of REG8AH).
 
bool clearTimeout () override
 Clear the timeout status flag (write 1 to bit 7 of REG8AH).
 
- Public Member Functions inherited from PmicTimerBase
virtual ~PmicTimerBase ()=default
 

Detailed Description

template<typename Regs>
class AXP1xxTimer< Regs >

Definition at line 46 of file AXP1xxTimer.hpp.

Constructor & Destructor Documentation

◆ AXP1xxTimer()

template<typename Regs >
AXP1xxTimer< Regs >::AXP1xxTimer ( SensorCommWrapper core)
inlineexplicit

Definition at line 49 of file AXP1xxTimer.hpp.

Member Function Documentation

◆ clearTimeout()

template<typename Regs >
bool AXP1xxTimer< Regs >::clearTimeout ( )
inlineoverridevirtual

Clear the timeout status flag (write 1 to bit 7 of REG8AH).

Return values
trueCleared successfully.
falseI2C error.

Implements PmicTimerBase.

Definition at line 95 of file AXP1xxTimer.hpp.

References SensorCommWrapper::setRegBit().

Referenced by loop().

◆ getTimer()

template<typename Regs >
uint8_t AXP1xxTimer< Regs >::getTimer ( ) const
inlineoverridevirtual

Read the current timer value from REG8AH bits[6:0].

Returns
Timer value in minutes (0 = stopped), or 0 on error.

Implements PmicTimerBase.

Definition at line 73 of file AXP1xxTimer.hpp.

References SensorCommWrapper::readReg().

◆ isTimedOut()

template<typename Regs >
bool AXP1xxTimer< Regs >::isTimedOut ( ) const
inlineoverridevirtual

Check whether the timer has expired (bit 7 of REG8AH).

Return values
trueTimer has timed out.
falseStill running, stopped, or I2C error.

Implements PmicTimerBase.

Definition at line 85 of file AXP1xxTimer.hpp.

References SensorCommWrapper::getRegBit().

Referenced by loop().

◆ setTimer()

template<typename Regs >
bool AXP1xxTimer< Regs >::setTimer ( uint8_t  minutes)
inlineoverridevirtual

Start the timer with the given duration, or stop it.

Writes the minute value to REG8AH bits[6:0]. Also clears any pending timeout status (bit 7) by writing 1.

Parameters
minutes0 to stop, 1-127 to start.
Return values
trueSuccess.
falseOut of range or I2C error.

Implements PmicTimerBase.

Definition at line 61 of file AXP1xxTimer.hpp.

References SensorCommWrapper::writeReg().

Referenced by setup().


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