Цитата
Если можно немного подробнее. Через какой ендпоинт гонится поток? Поток изохронный? Можете ли поделится дескриптором устройства? Формат и скорость жестко забиты или ими можно управлять с компа?
Частота кварца?
Очень большое пожалуста ответить.
Какая разница, через какой. через какой захотел,через такой и погнал. сейчас 2-OUT,4-IN. Сейчас Bulk. Причем сдесь скорость? или вы о частоте дискретизации? - тогда жестко. мне надо макс. разрешение.
Одного 24.000мгц. второго 24.576мгц. Тоже из серии - почитай даташит...
дескриптор:
Код
// Device Descriptor
{
0x12, // bLength
USB_DESCRIPTOR_DEVICE, // bDescriptorType
USBW(0x0200), // USB 2.0
0xFF, // bDeviceClass
0x00, // bDeviceSubclass
0x00, // bDeviceProtocol
0x40, // bMaxPacketSize0
USBW(USB_VENDOR_BRAG), // idVendor
USBW(USB_PRODUCT_BRAG_DD2), // idProduct
USBW(0x0001), // bcdDevice :Device Release Number
0x01, // iManufacturer
0x02, // iProduct
0x00, // iSerialNumber
0x01 // bNumConfigurations
},
// Configuration Descriptor
{
// std configuration descriptor
0x09, // bLength
USB_DESCRIPTOR_CONFIG, // bDescriptorType
USBW(USB_CFGDESCSIZE), // wTotalLength
0x01, // bNumInterfaces
0x01, // bConfigurationValue
0x00, // iConfiguration
0xC0, // bmAttributes
0x00, // bMaxPower
// Interface descriptor
0x09, // bLength
USB_DESCRIPTOR_IFACE, // bDescriptorType
0x00, // bInterfaceNumber
0x00, // bAlternateSetting
0x03, // bNumEndpoints
0xFF, // bInterfaceClass
0x00, // bInterfaceSubClass
0x00, // bInterfaceProtocol
0x00, // iInterface
// Endpoint descriptor (OUT EP2)
0x07, // bLength
USB_DESCRIPTOR_ENDPOINT, // bDescriptorType
0x02, // bEndpointAddress : D0..D3 - ep num; D7 - IN endpoint
0x02, // bmAttributes
USBW(0x200), // wMaxPacketSize
0x01, // bInterval
// Endpoint descriptor (IN EP4)
0x07, // bLength
USB_DESCRIPTOR_ENDPOINT, // bDescriptorType
0x84, // bEndpointAddress : D0..D3 - ep num; D7 - IN endpoint
0x02, // bmAttributes
USBW(0x200), // wMaxPacketSize
0x01, // bInterval
// Endpoint descriptor (IN EP1)
0x07, // bLength
USB_DESCRIPTOR_ENDPOINT, // bDescriptorType
0x81, // bEndpointAddress : D0..D3 - ep num; D7 - IN endpoint
0x02, // bmAttributes
USBW(0x40), // wMaxPacketSize
0x80 // bInterval
},
#if USB_CFGDESCSIZE & 1
0,
#endif
// LangID
{USB_DESCRIPTOR_STRING_SIZE(1),USB_DESCRIPTOR_STRING,USB_LANG_EN_US},
// Manufacturer
{
USB_DESCRIPTOR_STRING_SIZE(4),USB_DESCRIPTOR_STRING,
'B',0,'r',0,'a',0,'g',0
},
// Product
{
USB_DESCRIPTOR_STRING_SIZE(12),USB_DESCRIPTOR_STRING,
'D',0,'i',0,'g',0,'i',0,'D',0,'e',0,'g',0,'a',0,'n',0,' ',0,'I',0,'I',0
}
Толку вам от него? Дескрипторов никогда не видели?

Где-то видел страницу - сборник дескрипторов популярных усб-устройств, типа для коллекции :D
Код
С изохрлоном ясно. А ошибки-то вот откуда возьмутся, если используем хороший экранированный USB кабель, и нормально разведена плата? Вы изохрон пользуете?
Ошибки дажа на шинах ATA,SATA,DDR,... есть, не даром есть такие вещи,как ECC, CRC итп..а вы тут о usb..
Читайте доку с usb.org
Ошибки - это не подвисание драйвера. Это просто ошибки и они всегда могут встретится.
usb_20.pdf say:
Цитата
isochronous transfers have the general implication of constant-rate, errortolerant
transfers. In the USB environment, requesting an isochronous transfer type provides the requester
with the following:
• Guaranteed access to USB bandwidth with bounded latency
• Guaranteed constant data rate through the pipe as long as data is provided to the pipe
• In the case of a delivery failure due to error, no retrying of the attempt to deliver the data
и еще
Цитата
USB Communication Flow
Transfer |Bandwidth |Error Detection |Retrying
Control |Not guaranteed |Yes |Automatic
Isochronous |Guaranteed |Yes |No
Interrupt |Not guaranteed |Yes |Yes
Bulk |Not guaranteed |Yes |Yes
USB-audio мягкий не по карману.глючный он сильно,особенно в win2000
В FreeBSD он и то более-менее работает