I2C驱动API描述
I2C驱动的API主要包括:
| API类别 | API名称 | 描述 |
|---|---|---|
| 初始化 | hal_i2c_init() | 初始化I2C外设,配置传输速度等参数。 |
| hal_i2c_deinit() | 反初始化I2C外设。 | |
| hal_i2c_msp_init() | 初始化I2C外设所使用的GPIO引脚复用、NVIC中断、DMA通道。 | |
| hal_i2c_msp_deinit() | 反初始化I2C外设所使用的GPIO引脚复用、NVIC中断、DMA通道。 | |
| IO操作 | hal_i2c_master_transmit() | 作为主设备向从设备发送数据,轮询方式。 |
| hal_i2c_master_receive() | 作为主设备从从设备接收数据,轮询方式。 | |
| hal_i2c_slave_transmit() | 作为从设备向主设备发送数据,轮询方式。 | |
| hal_i2c_slave_receive() | 作为从设备从主设备接收数据,轮询方式。 | |
| hal_i2c_mem_write() | 向指定的地址写入数据,轮询方式。 | |
| hal_i2c_mem_read() | 从指定的地址读取数据,轮询方式。 | |
| hal_i2c_master_transmit_it() | 作为主设备向从设备发送数据,中断方式。 | |
| hal_i2c_master_receive_it() | 作为主设备从从设备接收数据,中断方式。 | |
| hal_i2c_slave_transmit_it() | 作为从设备向主设备发送数据,中断方式。 | |
| hal_i2c_slave_receive_it() | 作为从设备从主设备接收数据,中断方式。 | |
| hal_i2c_mem_write_it() | 向指定的地址写入数据,中断方式。 | |
| hal_i2c_mem_read_it() | 从指定的地址读取数据,中断方式。 | |
| hal_i2c_master_sequential_transmit_it() | 作为主设备发送帧数据,中断方式。 | |
| hal_i2c_master_sequential_receive_it() | 作为主设备接收帧数据,中断方式。 | |
| hal_i2c_slave_sequential_transmit_it() | 作为从设备发送帧数据,中断方式。 | |
| hal_i2c_slave_sequential_receive_it() | 作为从设备接收帧数据,中断方式。 | |
| hal_i2c_enable_listen_it() | 作为主设备监听信号,中断方式。 | |
| hal_i2c_disable_listen_it() | 禁用作为主设备监听信号,中断方式。 | |
| hal_i2c_master_transmit_dma() | 作为主设备向从设备发送数据,DMA方式。 | |
| hal_i2c_master_receive_dma() | 作为主设备从从设备接收数据,DMA方式。 | |
| hal_i2c_slave_transmit_dma() | 作为从设备向主设备发送数据,DMA方式。 | |
| hal_i2c_slave_receive_dma() | 作为从设备从主设备接收数据,DMA方式。 | |
| hal_i2c_mem_write_dma() | 向指定的地址写入数据,DMA方式。 | |
| hal_i2c_mem_read_dma() | 从指定的地址读取数据,DMA方式。 | |
| hal_i2c_master_abort_it() | 中止中断/DMA方式下的数据传输。 | |
| 中断处理及回调函数 | hal_i2c_irq_handler() | 中断处理函数。 |
| hal_i2c_master_tx_cplt_callback() | 主设备发送完成中断回调函数。 | |
| hal_i2c_master_rx_cplt_callback() | 主设备接收完成中断回调函数。 | |
| hal_i2c_slave_tx_cplt_callback() | 从设备发送完成中断回调函数。 | |
| hal_i2c_slave_rx_cplt_callback() | 从设备接收完成中断回调函数。 | |
| hal_i2c_mem_tx_cplt_callback() | 写入完成中断回调函数。 | |
| hal_i2c_mem_rx_cplt_callback() | 读取完成中断回调函数。 | |
| hal_i2c_listen_cplt_callback() | 监听中断回调函数。 | |
| hal_i2c_error_callback() | 错误中断回调函数。 | |
| hal_i2c_abort_cplt_callback() | 中止完成中断回调函数。 | |
| 状态及错误 | hal_i2c_get_state() | 获取驱动运行状态。 |
| hal_i2c_get_mode() | 获取当前工作模式。 | |
| hal_i2c_get_error() | 获取错误码。 | |
| 睡眠相关 | hal_i2c_suspend_reg() | 睡眠时挂起I2C配置相关的寄存器。 |
| hal_i2c_resume_reg() | 唤醒时恢复I2C配置相关的寄存器。 |
下面章节将对各API进行详细描述。
hal_i2c_init
| 函数原型 | hal_status_t hal_i2c_init(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 根据i2c_init_t中的指定参数初始化I2C外设和初始化关联句柄。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | HAL状态。 |
| 备注 |
hal_i2c_deinit
| 函数原型 | hal_status_t hal_i2c_deinit(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 反初始化I2C外设。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | HAL状态。 |
| 备注 |
hal_i2c_msp_init
| 函数原型 |
void hal_i2c_msp_init(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 |
初始化I2C所使用的GPIO引脚复用、NVIC中断、DMA通道等配置。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 |
无 |
| 备注 |
该函数为weak类型的空函数,开发者需重写该API完成GPIO引脚复用、NVIC中断、DMA通道的初始化。 |
hal_i2c_msp_deinit
| 函数原型 | void hal_i2c_msp_deinit(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 反初始化I2C所使用的GPIO引脚复用、NVIC中断、DMA通道等配置。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,开发者需重写该API完成GPIO引脚复用、NVIC中断、DMA通道的反初始化。 |
hal_i2c_master_transmit
| 函数原型 | hal_status_t hal_i2c_master_transmit(i2c_handle_t *p_i2c, uint16_t dev_address, uint8_t *p_data, uint16_t size, uint32_t timeout) |
|---|---|
| 功能说明 | 作为I2C主设备,发送大量数据,轮询方式。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 p_data:指向数据缓冲区的指针。 size:待发送数据的长度。 timeout:超时时间。 |
| 返回值 | HAL状态。 |
| 备注 | 返回HAL_ERROR时可调用hal_i2c_get_error()获取具体的错误码。 |
hal_i2c_master_receive
| 函数原型 | hal_status_t hal_i2c_master_receive(i2c_handle_t *p_i2c, uint16_t dev_address, uint8_t *p_data, uint16_t size, uint32_t timeout) |
|---|---|
| 功能说明 | 作为I2C主设备,接收大量数据,轮询方式。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 p_data:指向数据缓冲区的指针。 size:待接收数据的长度。 timeout:超时时间。 |
| 返回值 | HAL状态。 |
| 备注 | 返回HAL_ERROR时可调用hal_i2c_get_error()获取具体的错误码。 |
hal_i2c_slave_transmit
| 函数原型 | hal_status_t hal_i2c_slave_transmit(i2c_handle_t *p_i2c, uint8_t *p_data, uint16_t size, uint32_t timeout) |
|---|---|
| 功能说明 | 作为I2C从设备,发送大量数据,轮询方式。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 p_data:指向数据缓冲区的指针。 size:待发送数据的长度。 timeout:超时时间。 |
| 返回值 | HAL状态。 |
| 备注 | 返回HAL_ERROR时可调用hal_i2c_get_error()获取具体的错误码。 |
hal_i2c_slave_receive
| 函数原型 | hal_status_t hal_i2c_slave_receive(i2c_handle_t *p_i2c, uint8_t *p_data, uint16_t size, uint32_t timeout) |
|---|---|
| 功能说明 | 作为I2C从设备,接收大量数据,轮询方式。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 p_data:指向数据缓冲区的指针。 size:待接收数据的长度。 timeout:超时时间。 |
| 返回值 | HAL状态。 |
| 备注 | 返回HAL_ERROR时可调用hal_i2c_get_error()获取具体的错误码。 |
hal_i2c_mem_write
| 函数原型 | hal_status_t hal_i2c_mem_write(i2c_handle_t *p_i2c, uint16_t dev_address, uint16_t mem_address, uint16_t mem_addr_size, uint8_t *p_data, uint16_t size, uint32_t timeout) |
|---|---|
| 功能说明 | 以轮询模式向从设备的指定地址写入大量数据。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 mem_address:从设备的内部指定地址。 mem_addr_size:从设备的内部指定地址的位宽,该参数的取值可以是下列值中的任意一个:
p_data:指向数据缓冲区的指针。 size:待写入数据的长度。 timeout:超时时间 |
| 返回值 | HAL状态。 |
| 备注 | 返回HAL_ERROR时可调用hal_i2c_get_error()获取具体的错误码。 |
hal_i2c_mem_read
| 函数原型 | hal_status_t hal_i2c_mem_read(i2c_handle_t *p_i2c, uint16_t dev_address, uint16_t mem_address, uint16_t mem_addr_size, uint8_t *p_data, uint16_t size, uint32_t timeout) |
|---|---|
| 功能说明 | 以轮询模式从从设备的指定地址读取大量数据。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 mem_address:从设备的内部指定地址。 mem_addr_size:从设备的内部指定地址的位宽,该参数的取值可以是下列值中的任意一个:
p_data:指向数据缓冲区的指针。 size:待读取数据的长度。 timeout:超时时间。 |
| 返回值 | HAL状态。 |
| 备注 | 返回HAL_ERROR时可调用hal_i2c_get_error()获取具体的错误码。 |
hal_i2c_master_transmit_it
| 函数原型 | hal_status_t hal_i2c_master_transmit_it(i2c_handle_t *p_i2c, uint16_t dev_address, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C主设备,以中断非轮询模式发送大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 p_data:指向数据缓冲区的指针。 size:待发送数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_master_receive_it
| 函数原型 | hal_status_t hal_i2c_master_receive_it(i2c_handle_t *p_i2c, uint16_t dev_address, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C主设备,以中断非轮询模式接收大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 p_data:指向数据缓冲区的指针。 size:待接收数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_slave_transmit_it
| 函数原型 | hal_status_t hal_i2c_slave_transmit_it(i2c_handle_t *p_i2c, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C从设备,以中断非轮询模式发送大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 p_data:指向数据缓冲区的指针。 size:待发送数据的长度。 |
| 返回值 | HAL状态 |
| 备注 |
|
hal_i2c_slave_receive_it
| 函数原型 | hal_status_t hal_i2c_slave_receive_it(i2c_handle_t *p_i2c, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C从设备,以中断非轮询模式接收大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 p_data:指向数据缓冲区的指针。 size:待接收数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_mem_write_it
| 函数原型 | hal_status_t hal_i2c_mem_write_it(i2c_handle_t *p_i2c, uint16_t dev_address, uint16_t mem_address, uint16_t mem_addr_size, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 以中断非轮询模式向从设备的指定地址写入大量数据。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 mem_address:从设备的内部指定地址。 mem_addr_size:从设备的内部指定地址的位宽,该参数的取值可以是下列值中的任意一个:
p_data:指向数据缓冲区的指针。 size:待写入数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_mem_read_it
| 函数原型 | hal_status_t hal_i2c_mem_read_it(i2c_handle_t *p_i2c, uint16_t dev_address, uint16_t mem_address, uint16_t mem_addr_size, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 以中断非轮询模式从从设备的指定地址读取大量数据。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 mem_address:从设备的内部指定地址。 mem_addr_size:从设备的内部指定地址的位宽,该参数的取值可以是下列值中的任意一个:
p_data:指向数据缓冲区的指针。 size:待读取数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_master_abort_it
| 函数原型 | hal_status_t hal_i2c_master_abort_it(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 通过中断方式中止I2C主设备中断或DMA方式的数据传输。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | HAL状态。 |
| 备注 | 该函数为非轮询式函数,使能TX_ABRT中断后,该函数立即返回,TX_ABRT中断触发后中止完成,此时hal_i2c_abort_cplt_callback()将会被调用。 |
hal_i2c_master_transmit_dma
| 函数原型 | hal_status_t hal_i2c_master_transmit_dma(i2c_handle_t *p_i2c, uint16_t dev_address, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C主设备,发送大量数据,DMA方式。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 p_data:指向数据缓冲区的指针。 size:待发送数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_master_receive_dma
| 函数原型 | hal_status_t hal_i2c_master_receive_dma(i2c_handle_t *p_i2c, uint16_t dev_address, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C主设备,以DMA非轮询模式接收大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 p_data:指向数据缓冲区的指针。 size:待接收数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_slave_transmit_dma
| 函数原型 | hal_status_t hal_i2c_slave_transmit_dma(i2c_handle_t *p_i2c, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C从设备,以DMA非轮询模式发送大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 p_data:指向数据缓冲区的指针。 size:待发送数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_slave_receive_dma
| 函数原型 | hal_status_t hal_i2c_slave_receive_dma(i2c_handle_t *p_i2c, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 作为I2C从设备,以DMA非轮询模式接收大量数据。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 p_data:指向数据缓冲区的指针。 size:待接收数据的长度。 |
| 返回值 | HAL状态。 |
| 备注 |
|
hal_i2c_mem_write_dma
| 函数原型 |
hal_status_t hal_i2c_mem_write_dma(i2c_handle_t *p_i2c, uint16_t dev_address, uint16_t mem_address, uint16_t mem_addr_size, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 |
以DMA非轮询模式向指定从设备的指定地址写入大量数据。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 mem_address:从设备的内部指定地址。 mem_addr_size:从设备的内部指定地址的位宽,该参数的取值可以是下列值中的任意一个:
p_data:指向数据缓冲区的指针。 size:待写入数据的长度。 |
| 返回值 |
HAL状态。 |
| 备注 |
|
hal_i2c_mem_read_dma
| 函数原型 | hal_status_t hal_i2c_mem_read_dma(i2c_handle_t *p_i2c, uint16_t dev_address, uint16_t mem_address, uint16_t mem_addr_size, uint8_t *p_data, uint16_t size) |
|---|---|
| 功能说明 | 以DMA非轮询模式从指定从设备的指定地址读取大量数据。 |
| 输入参数 |
p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 dev_address:从设备地址。 mem_address:从设备的内部指定地址。 mem_addr_size:从设备的内部指定地址的位宽,该参数的取值可以是下列值中的任意一个:
p_data:指向数据缓冲区的指针。 size:待读取数据的长度。 |
| 返回值 | HAL状态 |
| 备注 |
|
hal_i2c_irq_handler
| 函数原型 | void hal_i2c_irq_handler(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 处理I2C中断请求。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 |
hal_i2c_master_tx_cplt_callback
| 函数原型 | void hal_i2c_master_tx_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 主设备发送完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_master_rx_cplt_callback
| 函数原型 | void hal_i2c_master_rx_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 主设备接收完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_slave_tx_cplt_callback
| 函数原型 | void hal_i2c_slave_tx_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 从设备发送完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_slave_rx_cplt_callback
| 函数原型 | void hal_i2c_slave_rx_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 从设备接收完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_mem_tx_cplt_callback
| 函数原型 | void hal_i2c_mem_tx_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 从设备写入完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_mem_rx_cplt_callback
| 函数原型 | void hal_i2c_mem_rx_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 从设备读取完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_error_callback
| 函数原型 | void hal_i2c_error_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | I2C错误回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_abort_cplt_callback
| 函数原型 | void hal_i2c_abort_cplt_callback(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | I2C中止完成回调函数。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | 无 |
| 备注 | 该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。 |
hal_i2c_get_state
| 函数原型 | hal_i2c_state_t hal_i2c_get_state(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 获取I2C运行状态。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 |
I2C运行状态,该参数的取值可以是下列值中的任意一个:
|
| 备注 |
hal_i2c_get_mode
| 函数原型 | hal_i2c_mode_t hal_i2c_get_mode(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 返回I2C模式:主设备、从设备、Memory或者无 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 |
I2C模式,该参数的取值可以是下列值中的任意一个:
|
| 备注 |
hal_i2c_get_error
| 函数原型 | uint32_t hal_i2c_get_error(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 返回I2C句柄错误码。 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 |
I2C错误码,该参数的取值可以是下列值中的任意一个:
|
| 备注 |
hal_i2c_suspend_reg
| 函数原型 | hal_status_t hal_i2c_suspend_reg(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 睡眠时挂起I2C配置相关的寄存器 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | HAL状态 |
| 备注 |
hal_i2c_resume_reg
| 函数原型 | hal_status_t hal_i2c_resume_reg(i2c_handle_t *p_i2c) |
|---|---|
| 功能说明 | 唤醒时恢复I2C配置相关的寄存器 |
| 输入参数 | p_i2c:指向i2c_handle_t结构体变量的指针,该结构体变量包含指定的I2C的配置信息。 |
| 返回值 | HAL状态 |
| 备注 |