- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
小川工作室编写,本书为 LM3S 的 USB 芯片编写,上传的均为草稿,
还有没修改,可能还有很多地方不足,希望各位网友原谅!
QQ:2609828265
TEL
E-mail:paulhyde@126.com
第六章 Audio 设备
6.1 Audio 设备介绍
USB 协议制定时,为了方便不同设备的开发商基于 USB 进行设计,定义了不同的设备类
来支持不同类型的设备。虽然在 USB 标准中定义了 USB_DEVICE_CLASS_AUDIO--AUDIO 设备。
但是很少有此类设备问世。目前称为 USB 音箱的设备,大都使用 USB_DEVICE_CLASS_POWER,
仅仅将 USB 接口作为电源使用。完全基于 USB 协议的 USB_DEVICE_CLASS_AUDIO 设备,采用
一根 USB 连接线,在设备中不同的端点实现音频信号的输入,输出包括相关按键控制。
AUDIO 设备是专门针对 USB 音频设备定义的一种专用类别,它不仅定义了音频输入、输
出端点的标准,还提供了音量控制、混音器配置、左右声道平衡,甚至包括对支持杜比音效
解码设备的支持,功能相当强大。不同的开发者可以根据不同的需求对主机枚举自己的设备
结构,主机则根据枚举的不同设备结构提供相应的服务。
AUDIO 设备采用 USB 传输模式中的 Isochronous transfers 模式,Isochronous
transfers 传输模式是专门针对流媒体特点的传输方法。它依照设备在链接初始化时枚举的
参数,保证提供稳定的带宽给采用该模式的设备或端点。由于对实时性的要求,它不提供相
应的接收/应答和握手协议。这很好地适应了音频数据流量稳定、对差错相对不敏感的特点。
6.2 Audio 描述符
Audio 设备定义了三种接口描述符子类,子协议恒为 0x00。三种接口描述符子类分别定
义为:
// Audio Interface Subclass Codes
#define USB_ASC_AUDIO_CONTROL 0x01
#define USB_ASC_AUDIO_STREAMING 0x02
#define USB_ASC_MIDI_STREAMING 0x03
USB_ASC_AUDIO_CONTROL,音频设备控制类;USB_ASC_AUDIO_STREAMING,音频流类;
USB_ASC_MIDI_STREAMING,MIDI 流类。以上三种用于描述接口描述符的子类,确定被描述
接口的功能。Audio 设备没有定义子协议,所以为定值 0x00。
Audio 设备接口描述符中要包含 Class-Specific AC Interface Header Descriptor,
用于定义接口的其它功能端口。Class-Specific AC Interface Header Descriptor(AC 接
口头)描述符如下表:
偏移量 域 大小 值 描述
0 bLength 1 数字 字节数。
配置描述符类型
1 bDescriptorType 1 常量
USB_DTYPE_CS_INTERFACE (36)
2 bDescriptorSubtype 1 数字 AC 接口头:USB_DSUBTYPE_HEADER
3 bcdADC 2 数字 Audio 设备发行号,BCD 码
5 wTotalLength 2 数
文档评论(0)