ESPHome 2025.9.0-dev
Loading...
Searching...
No Matches
mcp23x17_base.h
Go to the documentation of this file.
1#pragma once
2
5#include "esphome/core/hal.h"
6
7namespace esphome {
8namespace mcp23x17_base {
9
36
38 public:
39 bool digital_read_hw(uint8_t pin) override;
40 void digital_write_hw(uint8_t pin, bool value) override;
41 bool digital_read_cache(uint8_t pin) override;
42
43 void pin_mode(uint8_t pin, gpio::Flags flags) override;
44 void pin_interrupt_mode(uint8_t pin, mcp23xxx_base::MCP23XXXInterruptMode interrupt_mode) override;
45
46 protected:
47 void update_reg(uint8_t pin, bool pin_value, uint8_t reg_a) override;
48
49 uint8_t olat_a_{0x00};
50 uint8_t olat_b_{0x00};
51
53 uint16_t input_mask_{0x00};
54};
55
56} // namespace mcp23x17_base
57} // namespace esphome
bool digital_read_cache(uint8_t pin) override
void pin_mode(uint8_t pin, gpio::Flags flags) override
void digital_write_hw(uint8_t pin, bool value) override
bool digital_read_hw(uint8_t pin) override
void pin_interrupt_mode(uint8_t pin, mcp23xxx_base::MCP23XXXInterruptMode interrupt_mode) override
uint16_t input_mask_
State read in digital_read_hw.
void update_reg(uint8_t pin, bool pin_value, uint8_t reg_a) override
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7