ESPHome 2025.9.0-dev
Loading...
Searching...
No Matches
mcp23xxx_base.cpp
Go to the documentation of this file.
1#include "mcp23xxx_base.h"
3#include "esphome/core/log.h"
4
5namespace esphome {
6namespace mcp23xxx_base {
7
8template<uint8_t N> void MCP23XXXGPIOPin<N>::setup() {
9 this->pin_mode(flags_);
10 this->parent_->pin_interrupt_mode(this->pin_, this->interrupt_mode_);
11}
12template<uint8_t N> void MCP23XXXGPIOPin<N>::pin_mode(gpio::Flags flags) { this->parent_->pin_mode(this->pin_, flags); }
13template<uint8_t N> bool MCP23XXXGPIOPin<N>::digital_read() {
14 return this->parent_->digital_read(this->pin_) != this->inverted_;
15}
16template<uint8_t N> void MCP23XXXGPIOPin<N>::digital_write(bool value) {
17 this->parent_->digital_write(this->pin_, value != this->inverted_);
18}
19template<uint8_t N> std::string MCP23XXXGPIOPin<N>::dump_summary() const {
20 return str_snprintf("%u via MCP23XXX", 15, pin_);
21}
22
23template class MCP23XXXGPIOPin<8>;
24template class MCP23XXXGPIOPin<16>;
25
26} // namespace mcp23xxx_base
27} // namespace esphome
void digital_write(bool value) override
void pin_mode(gpio::Flags flags) override
std::string dump_summary() const override
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7
std::string str_snprintf(const char *fmt, size_t len,...)
Definition helpers.cpp:194