您的位置:首页 > 其它

Usb Audio Device Descriptor(9) Standard Audio Streaming Isochronous Audio Data Endpoint Descriptor

2016-01-22 17:15 537 查看
Standard Audio Streaming Isochronous Audio Data Endpoint Descriptor

struct usb_standard_as_isochronous_endpoint_descriptor
{
U8 bLength; /*Size of this descriptor, in bytes : 9*/
U8 bDescriptorType; /*ENDPOINT descriptor type*/
U8 bEndpointAddress; /*The address of the endpoint on the USB
device described by this descriptor. The
address is encoded as follows:
D7: Direction.
0 = OUT endpoint
1 = IN endpoint
D6..4: Reserved, reset to zero
D3..0: The endpoint number,
determined by the designer.*/
U8 bmAttributes; /*D3..2: Synchronization type
01 = Asynchronous
10 = Adaptive
11 = Synchronous
D1..0: Transfer type
01 = Isochronous
All other bits are reserved.*/
U16 wMaxPacketSize; /*Maximum packet size this endpoint is
capable of sending or receiving when this
configuration is selected.
This is determined by the audio
bandwidth constraints of the endpoint.*/
U8 bInterval; /*Interval for polling endpoint for data
transfers expressed in milliseconds.
Must be set to 1.*/
U8 bRefresh; /*Reset to 0.*/
U8 bSynchAddress; /*The address of the endpoint used to
communicate synchronization information
if required by this endpoint. Reset to zero
if no synchronization pipe is used.*/
};


bLength = 0x09;

bDescriptorType = 0x05; endpoint descriptor;

bEndpointAddress: 含义如下

D7: Direction.

0 = OUT endpoint

1 = IN endpoint

D6..4: Reserved, reset to zero

D3..0: The endpoint number,

determined by the designer.

bmAttributes: 含义如下

D3..2: 同步类型

01 = Asynchronous

10 = Adaptive

11 = Synchronous

D1..0: 传输类型

01 = Isochronous

wMaxPacketSize: max packet size, 由带宽决定;

bInterval: 数据传输所需时间,单位milliseconds;

bRefresh = 0; 未使用;

bSynchAddress: 如果用此endpoint进行同步信息交互,则使用此地址,=0则不使用同步信息。

对于Standard Audio Streaming Isochronous Synch Endpoint Descriptor, 结构与此相同,但含义略有不同,不同点如下:

bmAttributes:

D3..2: Synchronization type

00 = None

D1..0: Transfer type

01 = Isochronous

bInterval = 1; 未使用,必须为1;

bRefresh: 同步管道提供新的同步feedback数据时的速率,必须是2的幂次方,范围是1(2ms)~9(512ms);

bSynchAddress = 0; 未使用;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  audio usb