ESPHome
2024.11.0
esphome
esphome
components
mcp23x08_base
mcp23x08_base.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
esphome/core/component.h
"
4
#include "
esphome/components/mcp23xxx_base/mcp23xxx_base.h
"
5
#include "
esphome/core/hal.h
"
6
7
namespace
esphome
{
8
namespace
mcp23x08_base {
9
10
enum
MCP23S08GPIORegisters
{
11
// A side
12
MCP23X08_IODIR
= 0x00,
13
MCP23X08_IPOL
= 0x01,
14
MCP23X08_GPINTEN
= 0x02,
15
MCP23X08_DEFVAL
= 0x03,
16
MCP23X08_INTCON
= 0x04,
17
MCP23X08_IOCON
= 0x05,
18
MCP23X08_GPPU
= 0x06,
19
MCP23X08_INTF
= 0x07,
20
MCP23X08_INTCAP
= 0x08,
21
MCP23X08_GPIO
= 0x09,
22
MCP23X08_OLAT
= 0x0A,
23
};
24
25
class
MCP23X08Base
:
public
mcp23xxx_base::MCP23XXXBase
{
26
public
:
27
bool
digital_read
(uint8_t pin)
override
;
28
void
digital_write
(uint8_t pin,
bool
value)
override
;
29
void
pin_mode
(uint8_t pin,
gpio::Flags
flags
)
override
;
30
void
pin_interrupt_mode
(uint8_t pin,
mcp23xxx_base::MCP23XXXInterruptMode
interrupt_mode)
override
;
31
32
protected
:
33
void
update_reg
(uint8_t pin,
bool
pin_value, uint8_t reg_a)
override
;
34
35
uint8_t
olat_
{0x00};
36
};
37
38
}
// namespace mcp23x08_base
39
}
// namespace esphome
esphome::mcp23x08_base::MCP23X08Base::olat_
uint8_t olat_
Definition:
mcp23x08_base.h:35
esphome::mcp23x08_base::MCP23X08Base::pin_mode
void pin_mode(uint8_t pin, gpio::Flags flags) override
Definition:
mcp23x08_base.cpp:22
esphome::mcp23x08_base::MCP23X08_IODIR
Definition:
mcp23x08_base.h:12
esphome::mcp23x08_base::MCP23X08_IOCON
Definition:
mcp23x08_base.h:17
hal.h
esphome::mcp23x08_base::MCP23X08_INTCAP
Definition:
mcp23x08_base.h:20
esphome::mcp23xxx_base::MCP23XXXBase
Definition:
mcp23xxx_base.h:11
esphome::mcp23x08_base::MCP23X08_INTCON
Definition:
mcp23x08_base.h:16
esphome::mcp23x08_base::MCP23S08GPIORegisters
MCP23S08GPIORegisters
Definition:
mcp23x08_base.h:10
mcp23xxx_base.h
esphome::mcp23x08_base::MCP23X08_DEFVAL
Definition:
mcp23x08_base.h:15
esphome::mcp23x08_base::MCP23X08_GPPU
Definition:
mcp23x08_base.h:18
esphome::mcp23x08_base::MCP23X08Base
Definition:
mcp23x08_base.h:25
esphome::mcp23xxx_base::MCP23XXXInterruptMode
MCP23XXXInterruptMode
Definition:
mcp23xxx_base.h:9
esphome::mcp23x08_base::MCP23X08Base::digital_read
bool digital_read(uint8_t pin) override
Definition:
mcp23x08_base.cpp:9
esphome::shelly_dimmer::flags
const uint32_t flags
Definition:
stm32flash.h:85
esphome::mcp23x08_base::MCP23X08Base::digital_write
void digital_write(uint8_t pin, bool value) override
Definition:
mcp23x08_base.cpp:17
esphome::mcp23x08_base::MCP23X08_GPINTEN
Definition:
mcp23x08_base.h:14
esphome::mcp23x08_base::MCP23X08_IPOL
Definition:
mcp23x08_base.h:13
esphome
Implementation of SPI Controller mode.
Definition:
a01nyub.cpp:7
esphome::mcp23x08_base::MCP23X08_OLAT
Definition:
mcp23x08_base.h:22
component.h
esphome::mcp23x08_base::MCP23X08Base::update_reg
void update_reg(uint8_t pin, bool pin_value, uint8_t reg_a) override
Definition:
mcp23x08_base.cpp:61
esphome::gpio::Flags
Flags
Definition:
gpio.h:15
esphome::mcp23x08_base::MCP23X08_INTF
Definition:
mcp23x08_base.h:19
esphome::mcp23x08_base::MCP23X08Base::pin_interrupt_mode
void pin_interrupt_mode(uint8_t pin, mcp23xxx_base::MCP23XXXInterruptMode interrupt_mode) override
Definition:
mcp23x08_base.cpp:35
esphome::mcp23x08_base::MCP23X08_GPIO
Definition:
mcp23x08_base.h:21
Generated by
1.8.13