18 auto *arg =
new ISRPinArg{};
25 ESP_LOGD(TAG,
"Attaching interrupt %p to pin %d and mode %d", func,
pin_, (
uint32_t)
type);
34 ESP_LOGD(TAG,
"Setting pin %d to %s",
pin_, value !=
inverted_ ?
"HIGH" :
"LOW");
43 auto *arg =
reinterpret_cast<ISRPinArg *
>(
arg_);
50 auto *arg =
reinterpret_cast<ISRPinArg *
>(
arg_);
51 ESP_LOGD(TAG,
"Clearing interrupt for pin %d", arg->pin);
Copy of GPIOPin that is safe to use from ISRs (with no virtual functions)
void digital_write(bool value)
void detach_interrupt() const
void attach_interrupt_(void(*func)(void *), void *arg, gpio::InterruptType type) const
ISRInternalGPIOPin to_isr() const
bool digital_read() override
void digital_write(bool value) override
void pin_mode(gpio::Flags flags) override
size_t dump_summary(char *buffer, size_t len) const override
ESPHOME_LOG_TAG(TAG, "host")