STM32 USB 设备音频数据流

发布时间:2023-02-27  

音频数据流的应用

音频数据流是没有任何压缩的音频数据,我们可以直接通过I2S传输到数字功放,也可以对这些数字音频进行处理,比如EQ音量控制、音质补偿等等。

典型应用举例

首先是PC,然后PC通过USB数据线连接到MCU,MCU再通过I2S输出到功放,最后连接到喇叭或耳机。

当然,还有GUI的部分显示可以控制,同时还可以通过麦克风把音频传输到PC进行刻录或保存。

同步问题

USB外设时钟、I2C外设时钟和外部功放时钟是同步的,因为它们共用一个时钟域,但不能同步PC的时钟域。

这些不同的时钟域将会造成音频的不同步,出现断音或丢失部分音频。

主要问题

1. USB的参考时钟(SOF)并不跟系统时钟同步,主要表现在三个方面:

  • 由于温度、电压的不同,引起时钟信号的变化,会产生一些Jitter;

  • 时钟本身的精准度会产生一些Drift;

  • 两个时钟连接在一起的相位可能相反或相同;

2. 我们在传输的过程中会预先开辟一些buffer去存储部分音频数据,buffer的读取、处理时间会有一点延迟,也会造成音频的不同步。

那这些时钟的不同步具体会造成什么样的问题呢?

1. 如果PC的时钟相对MCU慢,那么USB收到音频数据就会慢于I2S所消耗的音频数据,就会造成I2S去取数据音频的时候,buffer的数据还没有准备好而出现下溢。

2. 如果PC的时钟相对MCU快,那么USB收到音频数据就会快于I2C所消耗的音频数据,就会造成当USB接收到音频数据的时候buffer的数据还没有被取走而出现复写的情况。



主要改善

1. 非USB改善:

  • 精准的时钟:可以用高精度的时钟给I2S提供更加准确的采样时钟。

  • 深的存储BUFFER:增加存储的BUFFER,比如我们有足够的RAM,可以先存储大量的数

据。

  • DMA:用DMA方式可以去减少复制和处理的时间。

  • 减少USB的复制时间:通过优化USB的库可以减少部分USB从USB RAM复制到用户RAM

的时间。

  • 基于SOF信号,同步所有的消耗音频数据:这将造成丢失部分音频数据或出现断音的情

况。

2. USB同步机制:

USB数据速率控制机制(同步/异步/高级)

同步机制比较


STM32同步实现


STM32 USB设备的音频数据流的例程是一个完整的软件库。

提供:

  • USB音频数据流的应用:USB耳机、喇叭

  • 多种同步方式:

外部时钟同步:运用一个外部可以动态配置的PLL,根据在STM32时钟域和USB主机

时钟域的不同,它允许动态并精准地调节产生I2S的时钟频率

PIPE反馈:USB通过一个特殊的端点去告诉主机现在需要的数据个数,它有在USB 2.0

规范里面定义,但是并没有在音频规范里面定义。

增加/减少采样个数:这样会播放流畅,但会丢失一批音频数据或者出现断音的情况。

SRC同步:SRC是一个把采样率是X的buffer转变成采样率是Y的buffer的一个模块,

它不会丢失数据而仅仅是改变数据,这种转换是基于查补和过滤的方式。

STM32异步机制


应得MCU负荷


应用占有的资源


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    两个CS42448音频编解码器最多可实现12通道模拟音频输出   通过光S/PDIF实现PCm的数字音频输出   耳机输出插孔   通过CDB USB MASTER卡实现多通道数字音频输入(尚未......
    飞腾云XMOS USB HiFi声卡解决方案;现在越来越多消费者对于老旧的电脑或移动设备内置的音频输出质量不满意,希望可以通过外部设备获得更高质量的音频体验。同时随着高分辨率音频格式如PCM高达32......
    和输出或IIS主从输入输出,以及UAC(USB Audio Class)输入输出,实现高质量的48K 16bits位深的USB音频录制和音频播放,让会议场景下的多路音频输入不再繁琐,即插即用。 和传......
    、Subwoofer等产品的开发。 核心技术优势: 可以支持多达7种音频的输入模式,如HDMI、光纤模式等; 支持多种功率的音频输出选择,可根据音频输出选择驱动电压,如5V、24V; 支持电池和USB......
    技术优势: 可以支持多达7种音频的输入模式,如HDMI、光纤模式等; 支持多种功率的音频输出选择,可根据音频输出选择驱动电压,如5V、24V; 支持电池和USB供电......
    大世平基于中科蓝讯产品的蓝牙音箱开发板方案的场景应用图 本方案可以分为电源模块、音频输入模块、音频输出模块、LED显示、人机交互、下载调试接口和最小系统等多个组成部分。其中,最小......
    3x3引脚说明 注:I/O:数字输入/输出;I:数字输入;A:模拟引脚;PWR:电源引脚;GND:接地。 CS201设计USB TYPEC音频输出方案电路原理图如下: ......
    加入多种引出接口:通讯接口:PIO、UART、USB、I2C、SPI、AIO、LED音频输出接口:I2S、SPDIF、ANALOG音频输入接口:I2S、SPDIF、AUX、MIC模组内置32MB SPI......
    器   ◇ 对于耳机功能,USB 音频功能拓扑有 2 个输入端,2 个输出端,1 个混频器单元,1  个选择器单元和 3 个功能单元(某些单元可以通过 ROM 代码选项使能)   ◇ 支持 1 个控......
    操作系统:Linux。 输入/输出接口: USB:2×USB 2.0(外部),一个用于USB串行下载更新/2×USB 2.0(内部)+ 2×USB 2.0(可选); 以太网:2×RJ45 GBE LAN; 音频......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>