我是靠谱客的博主 积极悟空,最近开发中收集的这篇文章主要介绍X-CUBE-USB-AUDIO 资料篇④——USB音频流传输实例(音频播放+音频录制)一、音频播放二、音频录制,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

  • 一、音频播放
  • 二、音频录制

所有的USB控制通过EP 0端点。

一、音频播放

STM32F446E-EVALSTM32F769IDISCOVERY

  1. 主机将音频流接口的备用设置设置设置为“1”后,开始传输PCM样本。
  2. 对于接收到的每个数据包,USB IP将其写入FIFO内存,然后向应用程序发出中断。
  3. 应用程序将数据复制到循环缓冲区。
  4. 另一方面,SAI IP通过I2S向音频编解码器传输数据。
  5. SAI使用DMA传输。每次DMA完成数据包传输时,它都会引发一个传输完成中断。
  6. 接收到传输完成中断后,DMA被编程为从循环缓冲区读取下一个数据包。
  7. 数据同步激活时,应用程序估计编解码器采样率。每次主机需要数据时(同步到EP同步),设备都会发送计算的采样率。

二、音频录制

STM32446E-EVAL

  1. 主机将音频流接口的备用设置设置设置为“1”后,STM32设备开始发送PCM样本。
  2. MEMS话筒通过I2S通道产生PDM样本。DMA将它们传输到中间缓冲区。
  3. PDM库将PDM样本转换为PCM样本。应用程序将它们写入录制循环缓冲区。
  4. 每毫秒,主机从记录终端请求一个USB数据包。
  5. 应用程序将一个数据包复制到USB FIFO。
  6. STM32 USB IP向主机传输数据。
  7. 数据同步激活时,应用程序可能会或多或少发送一个样本。如果没有数据准备好传输,应用程序将发送一个零填充数据包。

STM32F769IDISCOVERY进行录制不同的是:

  • STM32F769芯片集成了DFSDM IP。不需要PDMPCM软件转换。应用程序使用DMA直接读取PCM样本。
  • 数据路径的其余部分与STM32446E-EVAL板相同

STM32F446E-EVAL 评估板的数据传输
在这里插入图片描述

STM32F769IDISCOVERY 评估板的数据传输
在这里插入图片描述

觉得好,就一键三连呗(点赞+收藏+关注)

最后

以上就是积极悟空为你收集整理的X-CUBE-USB-AUDIO 资料篇④——USB音频流传输实例(音频播放+音频录制)一、音频播放二、音频录制的全部内容,希望文章能够帮你解决X-CUBE-USB-AUDIO 资料篇④——USB音频流传输实例(音频播放+音频录制)一、音频播放二、音频录制所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部