42#ifndef _ShiftRegGPIOXpander_ESP32_H_
43#define _ShiftRegGPIOXpander_ESP32_H_
62 uint8_t* _srArryBuffPtr{};
63 uint8_t* _auxArryBuffPtr{
nullptr};
66 bool _sendSnglSRCntnt(uint8_t data);
89 ShiftRegGPIOXpander(uint8_t ds, uint8_t sh_cp, uint8_t st_cp, uint8_t srQty = 1, uint8_t* initCntnt =
nullptr);
A class that models a GPIO outputs pins expander through the use of 8-bits serial in paralell out (SI...
Definition ShiftRegGPIOXpander.h:55
bool stampOverMain(uint8_t *newCntntPtr)
Sets all of the output pins of the shift register to new provided values at once.
Definition ShiftRegGPIOXpander.cpp:279
uint8_t getSrQty()
Return the quantity of shift registers composing the GPIOXtender object.
Definition ShiftRegGPIOXpander.cpp:221
void digitalWriteSrMaskReset(uint8_t *newResetMask)
Modifies the Main buffer contents by resetting simultaneously certain pins.
Definition ShiftRegGPIOXpander.cpp:156
bool moveAuxToMain(bool flushASAP=true)
Moves the data in the Auxiliary to the Main.
Definition ShiftRegGPIOXpander.cpp:226
uint8_t getMaxPin()
Return the greatest valid pin number.
Definition ShiftRegGPIOXpander.cpp:216
ShiftRegGPIOXpander()
Class default constructor.
Definition ShiftRegGPIOXpander.cpp:43
void digitalWriteSrAllSet()
Sets all the pins to HIGH (0x01).
Definition ShiftRegGPIOXpander.cpp:143
~ShiftRegGPIOXpander()
Class destructor.
Definition ShiftRegGPIOXpander.cpp:70
void digitalWriteSrToAux(const uint8_t srPin, const uint8_t value)
Set a specific pin to either HIGH (0x01) or LOW (0x00) in the Auxiliary Buffer.
Definition ShiftRegGPIOXpander.cpp:181
uint8_t * getMainBuffPtr()
Retrieves the pointer to the Main Buffer.
Definition ShiftRegGPIOXpander.cpp:211
void digitalWriteSrAllReset()
Sets all the pins to LOW (0x00).
Definition ShiftRegGPIOXpander.cpp:130
void digitalWriteSrMaskSet(uint8_t *newSetMask)
Modifies the Main buffer contents by setting simultaneously certain pins.
Definition ShiftRegGPIOXpander.cpp:168
void digitalWriteSr(const uint8_t srPin, const uint8_t value)
Set a specific pin to either HIGH (0x01) or LOW (0x00).
Definition ShiftRegGPIOXpander.cpp:112
void discardAux()
Deletes the Auxiliary Buffer.
Definition ShiftRegGPIOXpander.cpp:198
bool sendAllSRCntnt()
Flushes the contents of the Buffer to the GPIO Expander pins.
Definition ShiftRegGPIOXpander.cpp:242
bool copyMainToAux(bool overWriteIfExists=true)
Copies the Buffer content to the Auxiliary Buffer
Definition ShiftRegGPIOXpander.cpp:81
uint8_t digitalReadSr(const uint8_t &srPin)
Returns the state of the requested pin.
Definition ShiftRegGPIOXpander.cpp:97