【发布时间】:2019-08-05 03:00:00
【问题描述】:
我正在尝试将这些 SPH0645 麦克风 (I2S) 连接到 STM32f767ZI 板。
我已正确接线,现在只是尝试通过将数据通过 UART 传递到我的电脑来测试麦克风。希望有人能指出我正确的方向。
我已尝试直接传递到 UART 传输。但是我认为我可能需要一些数据处理 - 我从 UART 接收,但有时只是 0 或其他时间只是乱码,这不是来自麦克风,因为即使我断开麦克风,它仍然会传输。
I2S 麦克风在 32 位帧中接收 24 位数据,最后 8 位是垃圾。协议是 Big Endian,我认为 HAL 库会处理这个,但我不完全确定。
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 */
}
我错过了什么?
【问题讨论】:
标签: c audio stm32 microphone adafruit