i2c_scl_gp
Available GP config for I2C SCL.
Definition: pico_i2c.h:85
#define PICO_I2C_MAX_INSTANCES
Definition: pico_i2c.c:53
@ I2C0_SCL_GP9
Definition: pico_i2c.h:89
@ I2C0_SDA_GP12
Definition: pico_i2c.h:70
@ I2C0_SCL_GP21
Definition: pico_i2c.h:92
@ I2C0_SCL_GP1
Definition: pico_i2c.h:87
@ I2C1_SCL_GP19
Definition: pico_i2c.h:98
@ I2C0_SDA_GP16
Definition: pico_i2c.h:71
uint8_t slave_address
Definition: no_os_i2c.h:76
const struct no_os_i2c_platform_ops pico_i2c_ops
pico platform specific I2C platform ops structure
Definition: pico_i2c.c:236
@ I2C0_SCL_GP13
Definition: pico_i2c.h:90
i2c_inst_t * i2c_instance
Definition: pico_i2c.h:59
Additional I2C config parameters.
Definition: pico_i2c.h:105
i2c_sda_gp
Available GP config for I2c SDA.
Definition: pico_i2c.h:65
@ I2C1_SDA_GP26
Definition: pico_i2c.h:79
@ I2C0_SCL_GP5
Definition: pico_i2c.h:88
uint32_t device_id
Definition: no_os_i2c.h:111
void * no_os_calloc(size_t nitems, size_t size)
Allocate memory and return a pointer to it, set memory to 0.
Definition: chibios_alloc.c:60
@ I2C1_SDA_GP2
Definition: pico_i2c.h:74
pico platform specific I2C descriptor
Definition: pico_i2c.h:57
@ I2C0_SDA_GP0
Definition: pico_i2c.h:67
void * extra
Definition: no_os_i2c.h:80
uint8_t slave_address
Definition: no_os_i2c.h:115
@ I2C0_SCL_GP17
Definition: pico_i2c.h:91
uint32_t max_speed_hz
Definition: no_os_i2c.h:74
@ I2C1_SCL_GP15
Definition: pico_i2c.h:97
uint32_t max_speed_hz
Definition: no_os_i2c.h:113
@ I2C0_SDA_GP8
Definition: pico_i2c.h:69
int32_t pico_i2c_remove(struct no_os_i2c_desc *desc)
Free the resources allocated by no_os_i2c_init().
Definition: pico_i2c.c:142
@ I2C1_SCL_GP27
Definition: pico_i2c.h:99
enum i2c_scl_gp i2c_scl_pin
Definition: pico_i2c.h:109
@ I2C1_SDA_GP6
Definition: pico_i2c.h:75
Structure holding I2C address descriptor.
Definition: no_os_i2c.h:107
@ I2C1_SCL_GP11
Definition: pico_i2c.h:96
@ I2C1_SDA_GP10
Definition: pico_i2c.h:76
int32_t pico_i2c_init(struct no_os_i2c_desc **desc, const struct no_os_i2c_init_param *param)
Initialize the I2C communication peripheral.
Definition: pico_i2c.c:82
@ I2C1_SCL_GP7
Definition: pico_i2c.h:95
Header file of I2C Interface.
Header file for the pico i2c driver.
void no_os_free(void *ptr)
Deallocate memory previously allocated by a call to no_os_calloc or no_os_malloc.
Definition: chibios_alloc.c:75
Structure holding the parameters for I2C initialization.
Definition: no_os_i2c.h:70
int32_t pico_i2c_read(struct no_os_i2c_desc *desc, uint8_t *data, uint8_t bytes_number, uint8_t stop_bit)
I2C read transaction as master.
Definition: pico_i2c.c:204
enum i2c_sda_gp i2c_sda_pin
Definition: pico_i2c.h:107
const struct no_os_i2c_platform_ops pico_i2c_ops
pico specific I2C platform ops structure
Definition: pico_i2c.c:236
@ I2C1_SCL_GP3
Definition: pico_i2c.h:94
int32_t pico_i2c_write(struct no_os_i2c_desc *desc, uint8_t *data, uint8_t bytes_number, uint8_t stop_bit)
I2C write transaction as master.
Definition: pico_i2c.c:166
@ I2C0_SDA_GP4
Definition: pico_i2c.h:68
Header file of utility functions.
void * extra
Definition: no_os_i2c.h:119
@ I2C1_SDA_GP14
Definition: pico_i2c.h:77
uint32_t device_id
Definition: no_os_i2c.h:72
@ I2C1_SDA_GP18
Definition: pico_i2c.h:78
@ I2C0_SDA_GP20
Definition: pico_i2c.h:72