接口函数
API | 芯片 | |
---|---|---|
GR551x | GR5526 | |
app_i2s_init |
Y |
Y |
app_i2s_deinit |
Y |
Y |
app_i2s_receive_async |
Y |
Y |
app_i2s_receive_sync |
Y |
Y |
app_i2s_transmit_async |
Y |
Y |
app_i2s_transmit_sync |
Y |
Y |
app_i2s_transmit_receive_sync |
Y |
Y |
app_i2s_transmit_receive_async |
Y |
Y |
app_i2s_enable |
Y |
Y |
app_i2s_disable |
Y |
Y |
app_i2s_enable_clock |
Y |
Y |
app_i2s_disable_clock |
Y |
Y |
app_i2s_flush_tx_fifo |
Y |
Y |
app_i2s_flush_rx_fifo |
Y |
Y |
app_i2s_get_handle |
Y |
Y |
app_i2s_abort |
Y |
Y |
app_i2s_init
函数原型 |
uint16_t app_i2s_init(app_i2s_params_t *p_params, app_i2s_evt_handler_t evt_handler) |
---|---|
功能说明 |
初始化I2S |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
回调函数形式参照typedef void (*app_i2s_evt_handler_t)(app_i2s_evt_t *p_evt); HAL层已经实现中断标志位的清理,用户不用关心中断标志的清理,回调函数根据返回事件类型进行相应的处理即可。 |
app_i2s_deinit
函数原型 |
uint16_t app_i2s_deinit(app_i2s_id_t id) |
---|---|
功能说明 |
反初始化I2S |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_receive_sync
函数原型 |
uint16_t app_i2s_receive_sync(app_i2s_id_t id, uint16_t *p_data, uint16_t size, uint32_t timeout) |
---|---|
功能说明 |
I2S轮询方式(同步)接收数据 |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_receive_async
函数原型 |
uint16_t app_i2s_receive_async(app_i2s_id_t id, uint16_t *p_data, uint16_t size) |
---|---|
功能说明 |
I2S中断方式(异步)接收数据 |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 | 在RTOS睡眠模式下,有溢出风险,推荐使用DMA接口 |
app_i2s_transmit_sync
函数原型 |
uint16_t app_i2s_transmit_sync(app_i2s_id_t id, uint16_t *p_data, uint16_t size, uint32_t timeout) |
---|---|
功能说明 |
I2S轮询方式(同步)发送数据 |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_transmit_async
函数原型 |
uint16_t app_i2s_transmit_async(app_i2s_id_t id, uint16_t *p_data, uint16_t size) |
---|---|
功能说明 |
I2S中断方式(异步)发送数据 |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
从设备调用这个接口发送时,如果要发送的数据小于36个Half-Word的长度,不管是否发送成功都会进入发送完成中断 |
app_i2s_transmit_receive_sync
函数原型 |
uint16_t app_i2s_transmit_receive_sync(app_i2s_id_t id, uint16_t *p_tx_data, uint16_t *p_rx_data, uint32_t length, uint32_t timeout) |
---|---|
功能说明 |
I2S轮询方式(同步)发送接收数据 |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
仅适用于GR5526 |
app_i2s_transmit_receive_async
函数原型 |
uint16_t app_i2s_transmit_receive_async(app_i2s_id_t id, uint16_t *p_tx_data, uint16_t *p_rx_data, uint32_t length) |
---|---|
功能说明 |
I2S使用中断方式(异步)发送接收数据 |
输入参数 |
|
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
|
app_i2s_enable
函数原型 |
uint16_t app_i2s_enable(app_i2s_id_t id) |
---|---|
功能说明 |
使能I2S模块 |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_disable
函数原型 |
uint16_t app_i2s_disable(app_i2s_id_t id) |
---|---|
功能说明 |
禁能I2S模块 |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_enable_clock
函数原型 |
uint16_t app_i2s_enable_clock(app_i2s_id_t id) |
---|---|
功能说明 |
使能I2S Clock,仅Master可使用 |
输入参数 |
id:I2S模块ID,参数只能传APP_I2S_ID_MASTER,否则会返回参数错误 |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_disable_clock
函数原型 |
uint16_t app_i2s_disable_clock(app_i2s_id_t id) |
---|---|
功能说明 |
禁能I2S Clock,仅Master可使用 |
输入参数 |
id:I2S模块ID,参数只能传APP_I2S_ID_MASTER,否则会返回参数错误 |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_flush_tx_fifo
函数原型 |
uint16_t app_i2s_flush_tx_fifo(app_i2s_id_t id) |
---|---|
功能说明 |
清除I2S写缓冲区 |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_flush_rx_fifo
函数原型 |
uint16_t app_i2s_flush_rx_fifo(app_i2s_id_t id) |
---|---|
功能说明 |
清除I2S读缓冲区 |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |
app_i2s_get_handle
函数原型 |
i2s_handle_t *app_i2s_get_handle(app_i2s_id_t id) |
---|---|
功能说明 |
获取I2S句柄 |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
I2S句柄指针 |
备注 |
app_i2s_abort
函数原型 |
uint16_t app_i2s_abort(app_i2s_id_t id) |
---|---|
功能说明 |
中止I2S数据传输 |
输入参数 |
id:I2S模块ID(参考app_i2s_id_t) |
返回值 |
APP_DRV_xxx:详见SDK_Folder\drivers\inc\app_drv_error.h宏定义 |
备注 |