44 this->gpioWrite(lhs.operator
bool());
49 void setGpio(gpio_pin_t gpio)
override;
50 gpio_pin_t getGpio()
const override;
53 void gpioMode (gpio_mode_t mode)
override;
54 bool gpioRead ()
const override;
55 void gpioWrite (
bool value)
override;
56 void gpioToggle()
override;
59 void gpioAttachIrq (gpio_mode_t mode,
60 function<
void()> handler)
override;
61 void gpioDetachIrq ()
override;
62 void gpioEnableIrq ()
override;
63 void gpioDisableIrq()
override;
66 void setSEL (uint8_t sel)
const;
67 void setMode(gpio_mode_t mode);
69 using gpio_interface::operator =;
70 using gpio_interface::operator bool;
73 friend void IO_IRQ_BANK0_Handler(
void);
77 bool _open_source {
false};
78 bool _open_drain {
false};
79 bool _high_gpio {
false};
82 static function<void()> _intHandler[48];
83 static uint8_t _irqConfig [48];