STM32已经在很多领域被广泛应用,比如消费电子、医疗设备、楼宇安防、网络互联、工业控制等,在这些领域有各种各样的应用,这篇文章主要介绍家庭音响和汽车音响。
ST现有的音频应用
1. STM32 USB音频应用
USB音响
音频编码(WAV,MP3)
音频解码(WAV,MP3,WMA,AAC)
iPod Docking
软件升级(U_disk)
2. STM32其他音频应用
DSP
一些其他免费的编码和解码
Sound bar
Smart Phone音频开发板
USB拓扑图
只有一个主机
最多7层
最多5层是HUB
最多127端点
例子——USB拓扑图
USB逻辑图
USB传输
在一个USB系统中,主机只有一个,它会初始化所有的通讯,能够跟一个或者多个设备在同一个总线上通讯。
主机也提供电源,对设备进行供电,数据是基于帧进行发送和接收,每一帧包含多个数据包。
在USB通讯的工程中,数据的接收和发送都是由主机发起要求。
在传输的过程中,我们会看到四种传输类型:
控制传输:强制所有设备都必须支持。
批量传输:非周期性,大量的数据,保障数据的正确性。
中断传输:非周期性,小数据量,实时性。
同步传输:周期性,实时性。
ST USB库
ST Support USB 2.0
全速(12M)
高速(up to 480M)
HCC Library(not free)
iAP1
MP3,WMA,decoder
Firmware update
ST Library(Free)
USB Device,USB Host and OTG
Apple Accessories
Android Accessories
MP3(encoder and decoder),WMA,AAC(.adts、adif、.loas)
Audio Streaming
Firmware update
ST的USB库包含多个版本
STM32 USB类
OTG_FS & OTG_HS library
虽然USB是一个高度标准化的接口,但是它也是具有多功能和高度客户化的接口。
USB允许通过不同的方式传输各种类型的数据。
它有多种USB类去允许传输数字音频数据,这些类都有它们各自的优缺点:
USB Audio Class 1.0 & 2.0
USB Mass Storage
USB MTP
USB CDC
USB Audio Class 1.0 & 2.0
1. 同步传输,实时性得到保障,但是并不保障数据的完整性,占有高带宽(最高可以达到90%的带宽);
2. 允许扩展音频的一些控制(source,sink,volume,clocks……);
3. 有效的同步机制:
Synchronous:设备从主机的SOF上面获取它的音频时钟(Start Of Frame)。(高可靠 性,低成本)
Asynchronous:设备的时钟是自己控制,设备需要自己实现自我同步。(可靠性低,低成本,软件简单)
Adaptive:设备根据自己收到的数据获取和改变它的时钟。(高可靠性,软件简单,硬件复杂)
4. 不完全兼容!
5. USB Audio Class 2.0是基于USB Audio Class 1.0增加和适当的修改了一些功能:
支持高速模式
使用了时钟单元
设备可以通过中断端点去通知主机设备端的一些改变
支持“Category”,允许主机去自动检测或判断设备具有的主要功能
MSC
大批量数据传输:
数据得到保障,但是不保障实时性。
没有办法同步。
2. 尽管它被广泛应用于汽车音响、消费类电子,但是USB没有任何专门协议对于音频(它仅仅只是通过USB读取文件数据)。
3. 非常容易得到各种元数据。
4. 没有专门的控制协议。
5. 主机必须增加文件管理系统。
6. 需要额外的软件去编码或者解码这些压缩文件。
MTP
大批量数据传输:
保障数据的完整性,但是不保障数据的实时性。
没有办法同步。
2. 它是基于PTP(Picture Transfer Protocol)
命令-数据-响应的通讯模式。
基于抽象的音频内容和大小的数据传输。
3. 元数据和音频控制也是可能的。
4. 内容数字版权加密保护技术(DRM)。
5. 广泛应用于便携式或者掌上音频设备。
CDC
1. 任一传输类型:
CDC是收集了任何传输接口的传输类。
一个CDC设备可以用作音频类、MTP……
2. 没有专门应用于音频的协议。
3. 主要应用于电话和网络协议。
4. 它是多接口的应用典范。
5. 并没有广泛的应用。
上一篇:STM32 USB 设备音频数据流
下一篇:STM32安全固件更新的额外设计
推荐阅读最新更新时间:2024-11-09 10:20
推荐帖子
- 应广单片机
- 最近在用应广的单片机的烧录器P-002烧录程序时一直无法从电脑下载程序到烧录器中,选择文件就提示文件被保护。有没有用应广片子的大牛,求点拨一下应广单片机提示下载OK,然后才说保护,按理应属于正常操作,即先烧录/下载完成后进行保护操作,这样就不能从MCU读出程序了。不需要保护可在烧录软件的配置中取消保护功能即可,但程序就完全开放了。文件夹用英文试试烧录软件设置有问题没有应该有选择不用自动烧录的地方,这个烧录文件是否正确,选择烧录文件后才能提示被保护 问题找到了,把烧
- xuanyuanzhu 单片机
- 网络版原理图==stm32核心板+w5100模块
- http://www.stmsky.com/bbs/viewthread.php?tid=1446&extra=网络版原理图==stm32核心板+w5100模块可以直接联网ping192.168.1.2直接打开显示helloworld网络版原理图==stm32核心板+w5100模块顶上来不知道成本多少w5100价格大概45干吗要
- hconfeng stm32/stm8
- 2014年TI杯大学生电子设计竞赛地区赛使用仪器及器件、设备
- 该推荐列表适用于TI参考题(TI参考题于8月12日公布),选用TI参考题的省市有:上海,江苏,浙江,陕西,湖北,四川,重庆,黑龙江,辽宁,天津。各赛区可能自行微调,最终请以分赛区组委会的通知为准。常规仪器:a)3A/30V双路稳压电源(可并联);b)60MHz示波器;c)三位半数字万用表;d)低频(10MHz)信号源;e)低频交流毫伏表。AY-LDC1000评估板(用于一道指定赛题
- maylove TI技术论坛
- 关于模拟量采集的问题请教各位前辈
- 做了一个4-20ma的采集,经过校准之后,在采集4-20ma时我测了下取样电阻两端电压(用的优利德的UT58A万用表测试的)和程序测试值一样,但是如果没有接4-20ma的时候,由于有一个校准值,所以也会有0.5mV。这个值应该怎么处理。我的想法是采集到0.5mV左右的电压时,就去掉这个值,采集到的其他值就不做处理。没有做这方面的东西,不知道这样处理是否合理是否正确。前辈是否有更好更可靠的处理方法,请前辈指点,十分感谢。关于模拟量采集的问题请教各位前辈有前辈在吗
- hanwenli123 TI技术论坛
- 电力的机车电机驱动
- 电路机车单相从高压电网取电,其电动机是什么规格?大家有知道的否?电力的机车电机驱动大概27500V,电机大概是500多伏特
- eeleader 工控电子
- IGBT参数解析
- IGBT(绝缘栅双极晶体管(InsulatedGateBipolarTransistor))的内部架构如下所示:IGBT是个单向的器件,电流只能朝一个方向流动,通常IGBT会并联一个续流二极管IGBT型号:IKW40N120T2IKW40N120T2电路符号IGBT和MOSFET不同,体现在驱动时候的电流会拖尾Tail,启动和关闭都会有延时,典型的几个参数如下所示这些参数的解释是:Turn-ondelaytime:10%
- xutong 开关电源学习小组
设计资源 培训 开发板 精华推荐
- 采用 LTC1387 的 5V RS232/RS485 多协议收发器参考设计
- 使用具有最大功率点跟踪功能的 LTC4162IUFD-L42 太阳能供电 36 节 3.2A 充电器的典型应用
- 使用 Microchip Technology 的 HV9967DB1 的参考设计
- LTC3406ES5 单节锂离子 1.5V/600mA 稳压器的典型应用电路,用于实现高效率和小尺寸
- LTC3445EUF 演示板,I2C 可控降压稳压器
- 恒流灯板
- 钢铁侠PCB炫彩板
- 使用 NXP Semiconductors 的 TDA8932B 的参考设计
- AD8011-EBZ,用于 AD8011 指定高速性能的评估套件需要仔细注意电路板布局和元件选择
- LT1584 线性稳压器专为台式奔腾处理器应用而优化