LibDriver PCA9548A
Loading...
Searching...
No Matches
driver_pca9548a_basic.c
Go to the documentation of this file.
1
36
38
39static pca9548a_handle_t gs_handle;
40
50{
51 uint8_t res;
52
53 /* link functions */
68
69 /* set addr pin */
70 res = pca9548a_set_addr_pin(&gs_handle, addr);
71 if (res != 0)
72 {
73 pca9548a_interface_debug_print("pca9548a: set addr pin failed.\n");
74
75 return 1;
76 }
77
78 /* pca9548a init */
79 res = pca9548a_init(&gs_handle);
80 if (res != 0)
81 {
82 pca9548a_interface_debug_print("pca9548a: init failed.\n");
83
84 return 1;
85 }
86
87 return 0;
88}
89
98{
99 if (pca9548a_deinit(&gs_handle) != 0)
100 {
101 return 1;
102 }
103
104 return 0;
105}
106
117{
118 if (pca9548a_set_channel(&gs_handle, channel, enable) != 0)
119 {
120 return 1;
121 }
122
123 return 0;
124}
125
136{
137 if (pca9548a_get_channel(&gs_handle, channel, enable) != 0)
138 {
139 return 1;
140 }
141
142 return 0;
143}
144
153{
154 if (pca9548a_reset_bus(&gs_handle) != 0)
155 {
156 return 1;
157 }
158
159 return 0;
160}
161
172uint8_t pca9548a_basic_iic_read_command(uint8_t addr, uint8_t *buf, uint16_t len)
173{
174 if (pca9548a_iic_read_command(&gs_handle, addr, buf, len) != 0)
175 {
176 return 1;
177 }
178
179 return 0;
180}
181
192uint8_t pca9548a_basic_iic_write_command(uint8_t addr, uint8_t *buf, uint16_t len)
193{
194 if (pca9548a_iic_write_command(&gs_handle, addr, buf, len) != 0)
195 {
196 return 1;
197 }
198
199 return 0;
200}
201
213uint8_t pca9548a_basic_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
214{
215 if (pca9548a_iic_read(&gs_handle, addr, reg, buf, len) != 0)
216 {
217 return 1;
218 }
219
220 return 0;
221}
222
234uint8_t pca9548a_basic_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
235{
236 if (pca9548a_iic_write(&gs_handle, addr, reg, buf, len) != 0)
237 {
238 return 1;
239 }
240
241 return 0;
242}
243
255uint8_t pca9548a_basic_iic_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
256{
257 if (pca9548a_iic_read_address16(&gs_handle, addr, reg, buf, len) != 0)
258 {
259 return 1;
260 }
261
262 return 0;
263}
264
276uint8_t pca9548a_basic_iic_write_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
277{
278 if (pca9548a_iic_write_address16(&gs_handle, addr, reg, buf, len) != 0)
279 {
280 return 1;
281 }
282
283 return 0;
284}
driver pca9548a basic header file
uint8_t pca9548a_get_channel(pca9548a_handle_t *handle, pca9548a_channel_t channel, pca9548a_bool_t *enable)
get channel
uint8_t pca9548a_set_channel(pca9548a_handle_t *handle, pca9548a_channel_t channel, pca9548a_bool_t enable)
set channel
uint8_t pca9548a_iic_read_address16(pca9548a_handle_t *handle, uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
iic read address16
uint8_t pca9548a_init(pca9548a_handle_t *handle)
initialize the chip
uint8_t pca9548a_iic_read_command(pca9548a_handle_t *handle, uint8_t addr, uint8_t *buf, uint16_t len)
iic read command
uint8_t pca9548a_reset_bus(pca9548a_handle_t *handle)
reset bus
uint8_t pca9548a_iic_write_address16(pca9548a_handle_t *handle, uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
iic write address16
pca9548a_channel_t
pca9548a channel enumeration definition
uint8_t pca9548a_iic_write(pca9548a_handle_t *handle, uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
iic write
pca9548a_address_t
pca9548a address enumeration definition
uint8_t pca9548a_set_addr_pin(pca9548a_handle_t *handle, pca9548a_address_t addr_pin)
set the address pin
uint8_t pca9548a_iic_write_command(pca9548a_handle_t *handle, uint8_t addr, uint8_t *buf, uint16_t len)
iic write command
pca9548a_bool_t
pca9548a bool enumeration definition
uint8_t pca9548a_deinit(pca9548a_handle_t *handle)
close the chip
struct pca9548a_handle_s pca9548a_handle_t
pca9548a handle structure definition
uint8_t pca9548a_iic_read(pca9548a_handle_t *handle, uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
iic read
uint8_t pca9548a_basic_iic_read_command(uint8_t addr, uint8_t *buf, uint16_t len)
basic example iic read command
uint8_t pca9548a_basic_iic_write_command(uint8_t addr, uint8_t *buf, uint16_t len)
basic example iic write command
uint8_t pca9548a_basic_iic_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
basic example iic read address16
uint8_t pca9548a_basic_deinit(void)
basic example deinit
uint8_t pca9548a_basic_iic_write_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
basic example iic write address16
uint8_t pca9548a_basic_reset_bus(void)
basic example reset bus
uint8_t pca9548a_basic_get_channel(pca9548a_channel_t channel, pca9548a_bool_t *enable)
basic example get channel
uint8_t pca9548a_basic_set_channel(pca9548a_channel_t channel, pca9548a_bool_t enable)
basic example set channel
uint8_t pca9548a_basic_init(pca9548a_address_t addr)
basic example init
uint8_t pca9548a_basic_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
basic example iic read
uint8_t pca9548a_basic_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
basic example iic write
void pca9548a_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t pca9548a_interface_reset_gpio_write(uint8_t level)
interface reset gpio write
uint8_t pca9548a_interface_iic_deinit(void)
interface iic bus deinit
uint8_t pca9548a_interface_iic_init(void)
interface iic bus init
uint8_t pca9548a_interface_iic_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus read with 16 bits register address
uint8_t pca9548a_interface_iic_write_cmd(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus write command
uint8_t pca9548a_interface_iic_read_cmd(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus read command
uint8_t pca9548a_interface_reset_gpio_deinit(void)
interface reset gpio deinit
uint8_t pca9548a_interface_reset_gpio_init(void)
interface reset gpio init
void pca9548a_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t pca9548a_interface_iic_write_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus write with 16 bits register address
uint8_t pca9548a_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read
uint8_t pca9548a_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write