TB2026-YDS Firmware
Loading...
Searching...
No Matches
gpio_expander.h
Go to the documentation of this file.
1
12#pragma once
13
14#include "esp_err.h"
15#include "driver/i2c_master.h"
16#include <stdbool.h>
17#include <stdint.h>
18
25
34esp_err_t gpio_expander_init(i2c_master_bus_handle_t bus);
35
43esp_err_t gpio_expander_set(uint8_t channel, bool level);
44
52esp_err_t gpio_expander_get(uint8_t channel, bool *level);
53
60esp_err_t gpio_expander_read_all(uint8_t *inputs);
61
esp_err_t gpio_expander_set(uint8_t channel, bool level)
Drive one output channel (read-modify-write of the cached output port).
Definition gpio_expander.c:54
esp_err_t gpio_expander_init(i2c_master_bus_handle_t bus)
Attach the expander to the shared I2C bus and set pin directions.
Definition gpio_expander.c:38
esp_err_t gpio_expander_get(uint8_t channel, bool *level)
Read one input channel's logic level.
Definition gpio_expander.c:61
esp_err_t gpio_expander_read_all(uint8_t *inputs)
Read all 8 input-port levels in one transaction.
Definition gpio_expander.c:70