ESPHome
2023.8.3
esphome
esphome
components
mcp23s08
mcp23s08.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
esphome/core/component.h
"
4
#include "
esphome/components/mcp23x08_base/mcp23x08_base.h
"
5
#include "
esphome/core/hal.h
"
6
#include "
esphome/components/spi/spi.h
"
7
8
namespace
esphome
{
9
namespace
mcp23s08 {
10
11
class
MCP23S08
:
public
mcp23x08_base::MCP23X08Base
,
12
public
spi::SPIDevice
<spi::BIT_ORDER_MSB_FIRST, spi::CLOCK_POLARITY_LOW, spi::CLOCK_PHASE_LEADING,
13
spi::DATA_RATE_10MHZ> {
14
public
:
15
MCP23S08
() =
default
;
16
17
void
setup
()
override
;
18
void
dump_config
()
override
;
19
20
void
set_device_address
(uint8_t device_addr);
21
22
protected
:
23
bool
read_reg
(uint8_t reg, uint8_t *value)
override
;
24
bool
write_reg
(uint8_t reg, uint8_t value)
override
;
25
26
uint8_t
device_opcode_
= 0x40;
27
};
28
29
}
// namespace mcp23s08
30
}
// namespace esphome
esphome::mcp23s08::MCP23S08
Definition:
mcp23s08.h:11
esphome::mcp23s08::MCP23S08::dump_config
void dump_config() override
Definition:
mcp23s08.cpp:35
hal.h
spi.h
esphome::spi::SPIDevice
Definition:
spi.h:274
esphome::mcp23x08_base::MCP23X08Base
Definition:
mcp23x08_base.h:25
esphome::mcp23s08::MCP23S08::MCP23S08
MCP23S08()=default
mcp23x08_base.h
esphome::mcp23s08::MCP23S08::device_opcode_
uint8_t device_opcode_
Definition:
mcp23s08.h:26
esphome::mcp23s08::MCP23S08::setup
void setup() override
Definition:
mcp23s08.cpp:15
esphome::mcp23s08::MCP23S08::set_device_address
void set_device_address(uint8_t device_addr)
Definition:
mcp23s08.cpp:9
esphome::mcp23s08::MCP23S08::write_reg
bool write_reg(uint8_t reg, uint8_t value) override
Definition:
mcp23s08.cpp:49
esphome::mcp23s08::MCP23S08::read_reg
bool read_reg(uint8_t reg, uint8_t *value) override
Definition:
mcp23s08.cpp:40
esphome
Definition:
a01nyub.cpp:7
component.h
Generated by
1.8.13