ESPHome 2026.6.0-dev
Loading...
Searching...
No Matches
gpio_one_wire.h
Go to the documentation of this file.
1#pragma once
2
4#include "esphome/core/hal.h"
6
7namespace esphome::gpio {
8
10 public:
11 void setup() override;
12 void dump_config() override;
13 float get_setup_priority() const override { return setup_priority::BUS; }
14
16 this->t_pin_ = pin;
17 this->pin_ = pin->to_isr();
18 }
19
20 void write8(uint8_t val) override;
21 void write64(uint64_t val) override;
22 uint8_t read8() override;
23 uint64_t read64() override;
24
25 protected:
29 bool last_device_flag_{false};
30 uint64_t address_;
31
32 int reset_int() override;
33 void reset_search() override;
34 uint64_t search_int() override;
35 void write_bit_(bool bit);
36 bool read_bit_();
38};
39
40} // namespace esphome::gpio
Copy of GPIOPin that is safe to use from ISRs (with no virtual functions)
Definition gpio.h:92
virtual ISRInternalGPIOPin to_isr() const =0
float get_setup_priority() const override
void set_pin(InternalGPIOPin *pin)
void write64(uint64_t val) override
void write8(uint8_t val) override
bool read_bit_(uint32_t *t)
mopeka_std_values val[3]
constexpr float BUS
For communication buses like i2c/spi.
Definition component.h:37
static void uint32_t