首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用串口检查从SPH0645麦克风I2S协议接收的数据

使用串口检查从SPH0645麦克风I2S协议接收的数据
EN

Stack Overflow用户
提问于 2019-08-05 11:00:01
回答 1查看 286关注 0票数 1

我正在尝试将这些SPH0645麦克风(I2S)连接到STM32f767ZI板。

我已经正确地连接了它,现在只是尝试通过UART将数据传递到我的pc来测试麦克风。希望有人能给我指明正确的方向。

我已经尝试直接传递到UART传输。然而,我认为我可能需要一些数据处理-我从UART接收,但有时只是0或其他时间只是胡言乱语,这不是来自麦克风,因为它仍然传输,即使我断开麦克风。

I2S麦克风正在接收32位帧中24位的数据,最后8位是垃圾。协议是大端的,我认为HAL库可以处理这个问题,但是我不能完全确定。

代码语言:javascript
复制
uint16_t data;
while (1)
 {
/* USER CODE END WHILE */
HAL_StatusTypeDef result= HAL_I2S_Receive(&hi2s1,&data,2,100);

HAL_UART_Transmit(&huart3,&data,2,100);
/* USER CODE BEGIN 3 */
 }
/* USER CODE END 3 */
}  

我错过了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-08-05 14:48:52

检查HAL_I2S_Receive(&hi2s1, &data, 1, 100)

  • Did的返回值是否验证
  1. HAL_I2S_Receive期望uint32_t*作为第二个参数?我想应该是uint16_t*
  2. Using HAL_UART_Transmit你想要通过串口传输数据。您不应该将data作为参数传递给HAL_UART_Transmit吗?
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57351731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档