18 void setup()
override;
58 void setup()
override;
A class to cache the read state of a GPIO expander.
This Class provides the methods to read/write bytes from/to an i2c device.
I2CRegister reg(uint8_t a_register)
calls the I2CRegister constructor
void dump_config() override
float get_setup_priority() const override
size_t pin_count_
number of bits the expander has
bool digital_read_cache(uint8_t pin) override
bool write_register_(uint8_t reg, uint16_t value)
void set_pin_count(size_t pin_count)
uint16_t output_mask_
The mask to write as output state - 1 means HIGH, 0 means LOW.
size_t reg_width_
width of registers
void digital_write_hw(uint8_t pin, bool value) override
PCA9554Component()=default
bool digital_read_hw(uint8_t pin) override
float get_loop_priority() const override
uint16_t input_mask_
The state of the actual input pin states - 1 means HIGH, 0 means LOW.
void pin_mode(uint8_t pin, gpio::Flags flags)
Helper function to set the pin mode of a pin.
uint16_t config_mask_
Mask for the pin config - 1 means OUTPUT, 0 means INPUT.
void loop() override
Invalidate cache at start of each loop.
void setup() override
Check i2c availability and setup masks.
esphome::i2c::ErrorCode last_error_
Storage for last I2C error seen.
Helper class to expose a PCA9554 pin as an internal input GPIO pin.
gpio::Flags get_flags() const override
void set_pin(uint8_t pin)
void pin_mode(gpio::Flags flags) override
std::string dump_summary() const override
bool digital_read() override
PCA9554Component * parent_
void set_parent(PCA9554Component *parent)
void set_inverted(bool inverted)
void set_flags(gpio::Flags flags)
void digital_write(bool value) override
ErrorCode
Error codes returned by I2CBus and I2CDevice methods.
Providing packet encoding functions for exchanging data with a remote host.