STM32F4 上的 USB 音频输入

Posted

技术标签:

【中文标题】STM32F4 上的 USB 音频输入【英文标题】:Audio IN over USB on STM32F4 【发布时间】:2021-09-10 02:33:50 【问题描述】:

我尝试在基于 STM32F412 的定制板上创建一个带有音频输入和输出的简单 USB 音频接口。音频输出(从主机到目标)正在工作,还借助音频设备 usb 类的 CubeMX 设置。但不知何故,我无法弄清楚相反的方式(从目标到主机)应该如何工作。

我看到音频输出,AUDIO_PeriodicTC_FS 被定期调用(每 1 毫秒)AUDIO_OUT_TC 命令。它永远不会被AUDIO_IN_TC 调用。我试图用一些音频数据呼叫HAL_PCD_EP_Transmit,但主机没有得到输入...

描述符应该是正确的,至少我看到两个接口(输入和输出)都显示在主机上。

有人在这方面有经验或可以提供一些工作示例吗?

【问题讨论】:

代码 sn-p 对任何查看问题的人总是有用的 (相当多的 STM32 问题在这里“没有答案”。) 【参考方案1】:

看here。使用和验证。有用。如果您的芯片没有 USB OTG,则可能需要进行更深入的修改

【讨论】:

谢谢,我现在实现了这个库(第二次)。音频输出按预期工作(主机到设备)。但是 Audio IN 仍然不提供任何数据。我在AUDIO_MicHandler->buf->data 中填写了数据,但我不知道如何向主机发出有新数据的信号? 如果您使用 AUDIO IMPLICIT SYNCHRONIZATION(请阅读您使用收到的 USB SOF 同步您的样本)您应该调用 AUDIO_MicHandler->node.session_handle->SessionCallback。这些示例运行良好!

以上是关于STM32F4 上的 USB 音频输入的主要内容,如果未能解决你的问题,请参考以下文章

STM32F4:使用 FatFs 和 USB 的 SD 卡失败

stm32f4 USB项目开发详解

STM32F4 HAL库开发 -- USB U盘

STM32F4 HAL库开发 -- USB U盘

STM32F4 HAL库开发 -- USB U盘

STM32F4 HAL库开发 -- USB U盘