Eddy_Em 1 26 ноября, 2020 Опубликовано 26 ноября, 2020 · Жалоба 59 minutes ago, AlexandrY said: А три порта на 8-и эндпоинтах - фейк. Я уже в подобном споре участвовал. И прикола ради написал СЕМЬ CDC на одном STM32F103 (понятно, что без аппаратного коннекта с UART)!!! И протестировал их работу. Все ОК. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 26 ноября, 2020 Опубликовано 26 ноября, 2020 · Жалоба 6 часов назад, AlexandrY сказал: А че так нервничаете? Я спокоен, как удав ;) Но поскольку Ваш вздор иногда бывает опасным (в прямом смысле смертельно опасным, достаточно ознакомиться с темой): приходится и носом ткнуть, дабы вдруг у кого иллюзий не возникло... 6 часов назад, AlexandrY сказал: Я же дал направление. Читайте Guideline и просвящаетесь. Спорьте с авторитетными производителями, а не со мной. Т.е. приобщиться к сакральному знанию, как отсутствие супрессоров по шине у USB device может угробить компьютер и все остальное, подключенное к устройству, в очередной раз не удастся ? Жаль, мы так и не услышали начальника транспортного цеха. "Авторитетные производители" почему-то тоже молчат, как партизаны на допросе... 6 часов назад, r2axz сказал: Далеко не все адаптеры идут залитые и в экране. Я, например, таких вообще не встречал. USB-RS232 в пластиковом чехле - на вид был очень даже похож на залитый, но по факту защитный чехол прекрасно стягивается с DB9 (допускаю, что они, залитые, есть, но - не видел). А мелочь типа ST-LINK и адаптеров на CP2102 в алюминиевой трубке, так там "экран" это чисто механическая защита, он живет сам по себе и ни с чем не соединяется вообще. И уж если что защищать супрессорами у таких адаптеров, так это GPIO (до шины еще поди доберись, а VBUS по определению смотрит наружу, равно как и слабенький LDO на 3.3). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 26 ноября, 2020 Опубликовано 26 ноября, 2020 · Жалоба 17 minutes ago, rx3apf said: Я, например, таких вообще не встречал. USB-RS232 в пластиковом чехле - на вид был очень даже похож на залитый, но по факту защитный чехол прекрасно стягивается с DB9 (допускаю, что они, залитые, есть, но - не видел). А мелочь типа ST-LINK и адаптеров на CP2102 в алюминиевой трубке, так там "экран" это чисто механическая защита, он живет сам по себе и ни с чем не соединяется вообще. И уж если что защищать супрессорами у таких адаптеров, так это GPIO (до шины еще поди доберись, а VBUS по определению смотрит наружу, равно как и слабенький LDO на 3.3). Да я тоже не встречал, если честно. Просто готов допустить их существование, а жизненный опыт заставляет воздерживаться от безапелляционных утверждений в ситуациях, когда нет абсолютной уверенности в своих знаниях. Кстати, анодированный алюминиевый корпус в ST-LINK - в некотором смысле бомба замедленного действия. Иногда, при повреждении оксидный пленки плата замыкается на корпус, что приводит к выходу отладчика из строя. У меня такое однажды случилось... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 26 ноября, 2020 Опубликовано 26 ноября, 2020 · Жалоба В принципе да, если плата перекосится и ляжет на корпус, можно ожидать неприятностей, так что лучше заранее картонки вставить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 9 часов назад, r2axz сказал: Да я тоже не встречал, если честно. Просто готов допустить их существование На позапрошлой работе пришлось заняться выпуском таких - ибо готовых за вменяемые деньги не нашлось, да и за невменяемые, как MOXA, тоже. Базировались на FT234XD. Касательно того, что 3 переходника лучше, чем один тройной - ну конечно лучше. Вместо одного кабеля к "коробочке" пойдёт три. USB-портов в любом компьютере, конечно же, неограниченное количество, и к каждому из них можно внешний хаб подключить... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 76 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 17 часов назад, AlexandrY сказал: По любому три отдельный адаптера будет удобней и функциональней чем лишняя борда на столе представляющаяя собой постоянный головняк. А когда 10 портов и на каждый по адаптеру? Вот тогда и начинается настоящий головняк. А уж когда винда начинает в случайном порядке назначать COM-порты.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 27 ноября, 2020 Опубликовано 27 ноября, 2020 (изменено) · Жалоба 19 hours ago, Eddy_Em said: Я уже в подобном споре участвовал. И прикола ради написал СЕМЬ CDC на одном STM32F103 (понятно, что без аппаратного коннекта с UART)!!! И протестировал их работу. Все ОК. Это один из способов, но он плох тем, что нет возможности отправлять notifications (невозможно использовать несуществующий INTERRUPT IN endpotint). Но если надо просто слать информацию, то сгодится. Альтернативой может быть совместное использование одного INTERRUPT IN endpoint несколькими CDC устройствами. Из стандарта не следует что это не будет работать. Более того, в структуре данных notifications есть поле под номер интерфейса. То есть, теоретические можно сделать 6 полноценных CDC с notifications. Но я не тестировал это с реальными драйверами операционных систем. Очень может быть, что на практике это не взлетит. Изменено 27 ноября, 2020 пользователем r2axz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 18 минут назад, r2axz сказал: Из стандарта не следует что это не будет работать. r2axz, видно, что вы в теме USB очень хорошо разбираетесь. Какую бы вы посоветовали литературу для изучения USB и CDC в частности? Меня в первую очередь волнует вопрос: может ли мое устройство CDC, подключенное к хосту, узнать открыт ли порт на хосте сейчас? При открытии я получаю пачку GET_/SET_LINE_CODING, SET_CONTROL_LINE_STATE, по которым могу сконфигурировать UART и т.п. Но при закрытии порта вообще никаких пакетов не приходит. Или открытие/закрытие порта - это головная боль на уровне приложений, а драйвер всегда все принимает? И еще момент насчет VID/PID от ST: кто-нибудь получал официальное разрешение на их использование в своих изделиях? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 27 ноября, 2020 Опубликовано 27 ноября, 2020 (изменено) · Жалоба 18 minutes ago, adnega said: r2axz, видно, что вы в теме USB очень хорошо разбираетесь. Какую бы вы посоветовали литературу для изучения USB и CDC в частности? Спасибо, на счет "очень хорошо" не уверен :) Немного разбираюсь, да. Посоветую читать стандарты, простите за банальность. Перед этим для разминки можно прочитать USB in a Nutshell. Еще неплохая идея смотреть исходники драйверов (в том же Linux). Я не знаю есть ли хорошие книги обучающие USB и тем более CDC. Скорее всего есть, но я ничего такого не читал и посоветовать не могу, простите. 18 minutes ago, adnega said: Меня в первую очередь волнует вопрос: может ли мое устройство CDC, подключенное к хосту, узнать открыт ли порт на хосте сейчас? В общем случае эта задача не имеет решения. В стандарте CDC отсутствует такое событие как открытие порта. Однако до некоторой степени это можно эмулировать с использованием состояния управляющих сигналов. Например, DTR. Надо только убедиться, что терминал (или собственное ПО) при закрытии делает DTR неактивным. Именно для адаптеров как у меня, такой способ не годится, да и не нужен. А для всяких специализированных применений - вполне. Нужная информация передается в SET_CONTROL_LINE_STATE. 18 minutes ago, adnega said: Или открытие/закрытие порта - это головная боль на уровне приложений, а драйвер всегда все принимает? В целом, да. 18 minutes ago, adnega said: И еще момент насчет VID/PID от ST: кто-нибудь получал официальное разрешение на их использование в своих изделиях? У меня такого опыта не было. Когда организации в которой я работал потребовался VID, мы просто его купили. Для проектов с открытым исходным кодом рекомендую использовать https://pid.codes Эти ребята получили в подарок VID от компании которой он больше не нужен, и это было сделано до момента когда USB консорциум запретил передачу/перепродажу PID. Правда сейчас этот VID считается deprecated, но это не несет ровным счетом никаких последствий кроме того, что USB консорциум потешил свое самолюбие. Назначить этот VID другой компании они не могут согласно своим же правилам. Изменено 27 ноября, 2020 пользователем r2axz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 1 hour ago, r2axz said: Но если надо просто слать информацию, то сгодится. В моих поделках CDC используются исключительно для общения МК с компьютером. Я не делаю физических преобразователей с 232/485 на USB. В общем, мне и уведомления никакие не нужны. Кстати, при разработке эмулятора PL2303 я, чтобы не реверсить китайские подделки, взял всю необходимую информацию из модуля ядра. Понятно, что его делали по реверсу (иначе там бы не было комментариев вроде "ХЗ, зачем это нужно, но без этого не работает). Но вот конечная точка Interrupt там используется только номинально! Во многих других CDC она вообще не используется… Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 5 минут назад, r2axz сказал: Посоветую читать стандарты, простите за банальность. У меня есть: - Universal Serial Bus Specification Revision 2.0 April 27, 2000; - Universal Serial Bus Class Definitions for Communications Devices Revision 1.2 November 16, 2007; - Universal Serial Bus Communications Class Subclass Specification for PSTN Devices Revision 1.2 February 9, 2007. Этого достаточно или рекомендуете еще что-то? 5 минут назад, r2axz сказал: Перед этим для разминки можно прочитать USB in a Nutshell. Читал. Круто все и довольно глубоко все поясняется, но в стиле "делай раз, делай два", а мне нужно что-то типа спецификаций/стандартов. 5 минут назад, r2axz сказал: У меня такого опыта не было. Когда организации в которой я работал потребовался VID, мы просто его купили. Говорят, для ST-MCU могут выдать VID/PID. Мне бы хватило стандартного для VCP, но наверное нужно каким-то требованиям по функционалу удовлетворять. Как появится время - попробую этот вопрос решить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 27 ноября, 2020 Опубликовано 27 ноября, 2020 (изменено) · Жалоба Windows 10. Shared endpoint не помешала двум портам в составном устройстве нормально приниматиь и передавать данные. Нотификации не слал. Spoiler Connection Status Device connected Current Configuration 1 Speed Full (12 Mbit/s) Device Address 4 Number Of Open Pipes 6 Device Descriptor Storch Offset Field Size Value Description 0 bLength 1 12h 1 bDescriptorType 1 01h Device 2 bcdUSB 2 0200h USB Spec 2.0 4 bDeviceClass 1 EFh Miscellaneous 5 bDeviceSubClass 1 02h Common Class 6 bDeviceProtocol 1 01h Interface Association Descriptor 7 bMaxPacketSize0 1 40h 64 bytes 8 idVendor 2 FFFFh 10 idProduct 2 073Bh 12 bcdDevice 2 0106h 1.06 14 iManufacturer 1 01h "MicroGenSF" 15 iProduct 1 02h "Storch" 16 iSerialNumber 1 03h "SN:19640302_122880000_6" 17 bNumConfigurations 1 01h Configuration Descriptor 1 Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 02h Configuration 2 wTotalLength 2 01FDh 4 bNumInterfaces 1 0Bh 5 bConfigurationValue 1 01h 6 iConfiguration 1 00h 7 bmAttributes 1 C0h Self Powered 4..0: Reserved ...00000 5: Remote Wakeup ..0..... No 6: Self Powered .1...... Yes 7: Reserved (set to one) (bus-powered for 1.0) 1....... 8 bMaxPower 1 7Dh 250 mA Interface Association Descriptor Device Firmware Upgrade Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 00h 3 bInterfaceCount 1 01h 4 bFunctionClass 1 FEh Application-Specific 5 bFunctionSubClass 1 01h Device Firmware Upgrade 6 bFunctionProtocol 1 02h DFU Mode 7 iFunction 1 1Ah "Storch DFU Device" Interface Descriptor 0/0 Application-Specific, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 00h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 FEh Application-Specific 6 bInterfaceSubClass 1 01h Device Firmware Upgrade 7 bInterfaceProtocol 1 02h DFU Mode 8 iInterface 1 1Bh "@SPI Flash APPLICATION: SPIDF:EF:4018:00/0x70080000/248*064Kg" DFU Functional Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 21h DFU Functional 2 bmAttributes 1 07h 0: bitCanDnload .......1 Yes 1: bitCanUpload ......1. Yes 2: bitManifestationTolerant .....1.. Yes 3: bitWillDetach ....0... No 7..4: Reserved 0000.... 3 wDetachTimeOut 2 01F4h 500 ms 5 wTransferSize 2 0100h 256 bytes 7 bcdDFUVersion 2 0110h 1.10 Interface Descriptor 0/1 Application-Specific, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 00h 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 FEh Application-Specific 6 bInterfaceSubClass 1 01h Device Firmware Upgrade 7 bInterfaceProtocol 1 02h DFU Mode 8 iInterface 1 1Ch "@SPI Flash BOOTLOADER: W25Q128JV/0x70000000/08*064Kg" DFU Functional Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 21h DFU Functional 2 bmAttributes 1 07h 0: bitCanDnload .......1 Yes 1: bitCanUpload ......1. Yes 2: bitManifestationTolerant .....1.. Yes 3: bitWillDetach ....0... No 7..4: Reserved 0000.... 3 wDetachTimeOut 2 01F4h 500 ms 5 wTransferSize 2 0100h 256 bytes 7 bcdDFUVersion 2 0110h 1.10 Interface Association Descriptor Abstract Control Model Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 01h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 02h CDC Control 5 bFunctionSubClass 1 02h Abstract Control Model 6 bFunctionProtocol 1 00h 7 iFunction 1 04h "Storch Serial Port #1" Interface Descriptor 1/0 CDC Control, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 01h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 02h CDC Control 6 bInterfaceSubClass 1 02h Abstract Control Model 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Header Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 00h Header 3 bcdCDC 2 0110h 1.10 Call Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 01h Call Management 3 bmCapabilities 1 00h 7..2: Reserved 000000.. 1: Data Ifc Usage ......0. Call management only over Comm Ifc 0: Call Management .......0 Does not handle call management itself 4 bDataInterface 1 02h Abstract Control Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 04h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 02h Abstract Control Management 3 bmCapabilities 1 02h 7..4: Reserved 0000.... 3: Connection ....0... 2: Send Break .....0.. 1: Line Coding ......1. Line Coding requests and Serial State notification supported 0: Comm Features .......0 Union Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 06h Union 3 bControlInterface 1 01h 4 bSubordinateInterface0 1 02h CDC Data Endpoint Descriptor 83 3 In, Interrupt, 255 ms Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 83h 3 In 3 bmAttributes 1 03h Interrupt 1..0: Transfer Type ......11 Interrupt 7..2: Reserved 000000.. 4 wMaxPacketSize 2 000Ah 10 bytes 6 bInterval 1 FFh 255 ms Interface Descriptor 2/0 CDC Data, 2 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 02h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 02h 5 bInterfaceClass 1 0Ah CDC Data 6 bInterfaceSubClass 1 00h 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Endpoint Descriptor 02 2 Out, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 02h 2 Out 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Endpoint Descriptor 84 4 In, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 84h 4 In 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Interface Association Descriptor Abstract Control Model Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 03h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 02h CDC Control 5 bFunctionSubClass 1 02h Abstract Control Model 6 bFunctionProtocol 1 00h 7 iFunction 1 05h "Storch Serial Port #2" Interface Descriptor 3/0 CDC Control, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 03h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 02h CDC Control 6 bInterfaceSubClass 1 02h Abstract Control Model 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Header Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 00h Header 3 bcdCDC 2 0110h 1.10 Call Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 01h Call Management 3 bmCapabilities 1 00h 7..2: Reserved 000000.. 1: Data Ifc Usage ......0. Call management only over Comm Ifc 0: Call Management .......0 Does not handle call management itself 4 bDataInterface 1 04h Abstract Control Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 04h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 02h Abstract Control Management 3 bmCapabilities 1 02h 7..4: Reserved 0000.... 3: Connection ....0... 2: Send Break .....0.. 1: Line Coding ......1. Line Coding requests and Serial State notification supported 0: Comm Features .......0 Union Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 06h Union 3 bControlInterface 1 03h 4 bSubordinateInterface0 1 04h CDC Data Endpoint Descriptor 83 3 In, Interrupt, 255 ms Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 83h 3 In 3 bmAttributes 1 03h Interrupt 1..0: Transfer Type ......11 Interrupt 7..2: Reserved 000000.. 4 wMaxPacketSize 2 000Ah 10 bytes 6 bInterval 1 FFh 255 ms Interface Descriptor 4/0 CDC Data, 2 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 04h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 02h 5 bInterfaceClass 1 0Ah CDC Data 6 bInterfaceSubClass 1 00h 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Endpoint Descriptor 03 3 Out, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 03h 3 Out 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Endpoint Descriptor 85 5 In, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 85h 5 In 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Interface Association Descriptor Audio Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 05h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 01h Audio 5 bFunctionSubClass 1 00h 6 bFunctionProtocol 1 00h 7 iFunction 1 09h "Storch RX Voice" Interface Descriptor 5/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 05h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 01h Audio Control 7 bInterfaceProtocol 1 00h 8 iInterface 1 09h "Storch RX Voice" Audio Control Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Interface Header 2 7 01 00 01 27 00 01 06 Audio Control Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Output Terminal 2 7 03 30 01 01 00 60 0F Audio Control Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Feature Unit 2 7 06 60 31 02 03 00 00 Audio Control Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 0Ch 1 bDescriptorType 1 24h Audio Control Input Terminal 2 10 02 31 10 07 00 02 03 00 15 00 Interface Descriptor 6/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 06h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 12h "active 1" Interface Descriptor 6/1 Audio, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 06h 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 12h "active 1" Audio Streaming Interface Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 24h Audio Streaming Interface 2 5 01 30 01 01 00 Audio Streaming Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0Bh 1 bDescriptorType 1 24h Audio Streaming Format Type 2 9 02 01 02 02 10 01 80 BB 00 Endpoint Descriptor 81 1 In, Isochronous, 1 ms Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 81h 1 In 3 bmAttributes 1 25h Isochronous, Asynchronous, Implicit Feedback Data 1..0: Transfer Type ......01 Isochronous 3..2: Sync Type ....01.. Asynchronous 5..4: Usage Type ..10.... Implicit Feedback Data 7..6: Reserved 00...... 4 wMaxPacketSize 2 00C4h 196 bytes 6 bInterval 1 01h 1 ms 7 bRefresh 1 00h 8 bSynchAddress 1 00h Audio Streaming Isochronous Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 25h Audio Streaming Isochronous Audio Data Endpoint 2 5 01 00 02 00 00 Interface Association Descriptor Audio Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 07h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 01h Audio 5 bFunctionSubClass 1 00h 6 bFunctionProtocol 1 00h 7 iFunction 1 0Ah "Storch RX Spectrum" Interface Descriptor 7/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 07h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 01h Audio Control 7 bInterfaceProtocol 1 00h 8 iInterface 1 0Ah "Storch RX Spectrum" Audio Control Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Interface Header 2 7 01 00 01 27 00 01 08 Audio Control Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Output Terminal 2 7 03 44 01 01 00 64 10 Audio Control Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Feature Unit 2 7 06 64 45 02 03 00 00 Audio Control Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 0Ch 1 bDescriptorType 1 24h Audio Control Input Terminal 2 10 02 45 10 07 00 02 03 00 15 19 Interface Descriptor 8/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 08h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 13h "active 2" Interface Descriptor 8/1 Audio, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 08h 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 13h "active 2" Audio Streaming Interface Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 24h Audio Streaming Interface 2 5 01 44 01 01 00 Audio Streaming Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0Bh 1 bDescriptorType 1 24h Audio Streaming Format Type 2 9 02 01 02 03 18 01 00 77 01 Endpoint Descriptor 82 2 In, Isochronous, 1 ms Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 82h 2 In 3 bmAttributes 1 25h Isochronous, Asynchronous, Implicit Feedback Data 1..0: Transfer Type ......01 Isochronous 3..2: Sync Type ....01.. Asynchronous 5..4: Usage Type ..10.... Implicit Feedback Data 7..6: Reserved 00...... 4 wMaxPacketSize 2 0246h 582 bytes 6 bInterval 1 01h 1 ms 7 bRefresh 1 00h 8 bSynchAddress 1 00h Audio Streaming Isochronous Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 25h Audio Streaming Isochronous Audio Data Endpoint 2 5 01 00 02 00 00 Interface Association Descriptor Audio Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 09h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 01h Audio 5 bFunctionSubClass 1 00h 6 bFunctionProtocol 1 00h 7 iFunction 1 0Bh "Storch TX Voice" Interface Descriptor 9/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 09h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 01h Audio Control 7 bInterfaceProtocol 1 00h 8 iInterface 1 0Bh "Storch TX Voice" Audio Control Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Interface Header 2 7 01 00 01 27 00 01 0A Audio Control Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 0Ch 1 bDescriptorType 1 24h Audio Control Input Terminal 2 10 02 28 01 01 00 02 03 00 15 0E Audio Control Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Feature Unit 2 7 06 78 28 02 03 00 00 Audio Control Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Output Terminal 2 7 03 29 11 07 00 78 00 Interface Descriptor 10/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 0Ah 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 14h "active 3" Interface Descriptor 10/1 Audio, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 0Ah 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 14h "active 3" Audio Streaming Interface Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 24h Audio Streaming Interface 2 5 01 28 01 01 00 Audio Streaming Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0Bh 1 bDescriptorType 1 24h Audio Streaming Format Type 2 9 02 01 02 02 10 01 80 BB 00 Endpoint Descriptor 01 1 Out, Isochronous, 1 ms Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 01h 1 Out 3 bmAttributes 1 25h Isochronous, Asynchronous, Implicit Feedback Data 1..0: Transfer Type ......01 Isochronous 3..2: Sync Type ....01.. Asynchronous 5..4: Usage Type ..10.... Implicit Feedback Data 7..6: Reserved 00...... 4 wMaxPacketSize 2 00C0h 192 bytes 6 bInterval 1 01h 1 ms 7 bRefresh 1 00h 8 bSynchAddress 1 00h Audio Streaming Isochronous Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 25h Audio Streaming Isochronous Audio Data Endpoint 2 5 01 00 02 00 00 Изменено 27 ноября, 2020 пользователем GenaSPB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 16 minutes ago, Eddy_Em said: В моих поделках CDC используются исключительно для общения МК с компьютером. Я не делаю физических преобразователей с 232/485 на USB. В общем, мне и уведомления никакие не нужны. Кстати, при разработке эмулятора PL2303 я, чтобы не реверсить китайские подделки, взял всю необходимую информацию из модуля ядра. Понятно, что его делали по реверсу (иначе там бы не было комментариев вроде "ХЗ, зачем это нужно, но без этого не работает). Но вот конечная точка Interrupt там используется только номинально! Во многих других CDC она вообще не используется… И тем не менее, через эту точку я в соответствии со стандартом USB передаю состояние линий DCD, DSR и событие переполнения буфера на прием, ошибку четности, что отображается на хостах. Я могу ошибаться, но PL2303 не работает с CDC Class drivers, а требует своих драйверов. Почему потребовалось эмулировать именно его? Ну и опять же, есть стандарт USB CDC, я со своей стороны стараюсь максимально ему соответствовать. Хотя и там есть пространство для интерпретаций. Если какие-то драйвера не реализуют часть функциональности, то это в целом проблема этих драйверов, а не повод мне отклоняться от стандарта. Разумеется если это не вопрос вида: устройство не работает с кривой реализацией драйвера в популярной операционной системе. Тогда уже придется изворачиваться. Но я согласен, раз не нужны уведомления, ваш способ вполне имеет право на жизнь. Собственно я об этом в самом начале и сказал. 19 minutes ago, adnega said: У меня есть: - Universal Serial Bus Specification Revision 2.0 April 27, 2000; - Universal Serial Bus Class Definitions for Communications Devices Revision 1.2 November 16, 2007; - Universal Serial Bus Communications Class Subclass Specification for PSTN Devices Revision 1.2 February 9, 2007. Этого достаточно или рекомендуете еще что-то? Я думаю, достаточно. Навскидку больше ничего посоветовать не могу. 20 minutes ago, adnega said: Говорят, для ST-MCU могут выдать VID/PID. Мне бы хватило стандартного для VCP, но наверное нужно каким-то требованиям по функционалу удовлетворять. Как появится время - попробую этот вопрос решить. Если честно, то сомневаюсь в возможности получения PID для коммерческого устройства у STM в 2020 году. Причина в позиции организации занимающейся распределением VID. Продавать и передавать PID больше нельзя, к сожалению. У этого запрета сомнительный юридический статус, но тем не менее по моему мнению STM не будет связываться. Но это всего лишь мнение не подкрепленное практикой, поэтому я могу ошибаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 235 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 20 минут назад, adnega сказал: Читал. Круто все и довольно глубоко все поясняется, но в стиле "делай раз, делай два", а мне нужно что-то типа спецификаций/стандартов. "Энциклопедия Шины PCI, USB и FireWire" Михаила Гука. Довольно подробно и доходчиво описаны основы USB. Правда классы USB-устройств вроде не расписаны. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r2axz 0 27 ноября, 2020 Опубликовано 27 ноября, 2020 · Жалоба 13 minutes ago, GenaSPB said: Windows 10. Shared endpoint не помешала двум портам в составном устройстве нормально приниматиь и передавать данные. Нотификации не слал. Reveal hidden contents Connection Status Device connected Current Configuration 1 Speed Full (12 Mbit/s) Device Address 4 Number Of Open Pipes 6 Device Descriptor Storch Offset Field Size Value Description 0 bLength 1 12h 1 bDescriptorType 1 01h Device 2 bcdUSB 2 0200h USB Spec 2.0 4 bDeviceClass 1 EFh Miscellaneous 5 bDeviceSubClass 1 02h Common Class 6 bDeviceProtocol 1 01h Interface Association Descriptor 7 bMaxPacketSize0 1 40h 64 bytes 8 idVendor 2 FFFFh 10 idProduct 2 073Bh 12 bcdDevice 2 0106h 1.06 14 iManufacturer 1 01h "MicroGenSF" 15 iProduct 1 02h "Storch" 16 iSerialNumber 1 03h "SN:19640302_122880000_6" 17 bNumConfigurations 1 01h Configuration Descriptor 1 Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 02h Configuration 2 wTotalLength 2 01FDh 4 bNumInterfaces 1 0Bh 5 bConfigurationValue 1 01h 6 iConfiguration 1 00h 7 bmAttributes 1 C0h Self Powered 4..0: Reserved ...00000 5: Remote Wakeup ..0..... No 6: Self Powered .1...... Yes 7: Reserved (set to one) (bus-powered for 1.0) 1....... 8 bMaxPower 1 7Dh 250 mA Interface Association Descriptor Device Firmware Upgrade Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 00h 3 bInterfaceCount 1 01h 4 bFunctionClass 1 FEh Application-Specific 5 bFunctionSubClass 1 01h Device Firmware Upgrade 6 bFunctionProtocol 1 02h DFU Mode 7 iFunction 1 1Ah "Storch DFU Device" Interface Descriptor 0/0 Application-Specific, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 00h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 FEh Application-Specific 6 bInterfaceSubClass 1 01h Device Firmware Upgrade 7 bInterfaceProtocol 1 02h DFU Mode 8 iInterface 1 1Bh "@SPI Flash APPLICATION: SPIDF:EF:4018:00/0x70080000/248*064Kg" DFU Functional Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 21h DFU Functional 2 bmAttributes 1 07h 0: bitCanDnload .......1 Yes 1: bitCanUpload ......1. Yes 2: bitManifestationTolerant .....1.. Yes 3: bitWillDetach ....0... No 7..4: Reserved 0000.... 3 wDetachTimeOut 2 01F4h 500 ms 5 wTransferSize 2 0100h 256 bytes 7 bcdDFUVersion 2 0110h 1.10 Interface Descriptor 0/1 Application-Specific, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 00h 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 FEh Application-Specific 6 bInterfaceSubClass 1 01h Device Firmware Upgrade 7 bInterfaceProtocol 1 02h DFU Mode 8 iInterface 1 1Ch "@SPI Flash BOOTLOADER: W25Q128JV/0x70000000/08*064Kg" DFU Functional Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 21h DFU Functional 2 bmAttributes 1 07h 0: bitCanDnload .......1 Yes 1: bitCanUpload ......1. Yes 2: bitManifestationTolerant .....1.. Yes 3: bitWillDetach ....0... No 7..4: Reserved 0000.... 3 wDetachTimeOut 2 01F4h 500 ms 5 wTransferSize 2 0100h 256 bytes 7 bcdDFUVersion 2 0110h 1.10 Interface Association Descriptor Abstract Control Model Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 01h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 02h CDC Control 5 bFunctionSubClass 1 02h Abstract Control Model 6 bFunctionProtocol 1 00h 7 iFunction 1 04h "Storch Serial Port #1" Interface Descriptor 1/0 CDC Control, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 01h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 02h CDC Control 6 bInterfaceSubClass 1 02h Abstract Control Model 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Header Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 00h Header 3 bcdCDC 2 0110h 1.10 Call Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 01h Call Management 3 bmCapabilities 1 00h 7..2: Reserved 000000.. 1: Data Ifc Usage ......0. Call management only over Comm Ifc 0: Call Management .......0 Does not handle call management itself 4 bDataInterface 1 02h Abstract Control Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 04h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 02h Abstract Control Management 3 bmCapabilities 1 02h 7..4: Reserved 0000.... 3: Connection ....0... 2: Send Break .....0.. 1: Line Coding ......1. Line Coding requests and Serial State notification supported 0: Comm Features .......0 Union Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 06h Union 3 bControlInterface 1 01h 4 bSubordinateInterface0 1 02h CDC Data Endpoint Descriptor 83 3 In, Interrupt, 255 ms Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 83h 3 In 3 bmAttributes 1 03h Interrupt 1..0: Transfer Type ......11 Interrupt 7..2: Reserved 000000.. 4 wMaxPacketSize 2 000Ah 10 bytes 6 bInterval 1 FFh 255 ms Interface Descriptor 2/0 CDC Data, 2 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 02h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 02h 5 bInterfaceClass 1 0Ah CDC Data 6 bInterfaceSubClass 1 00h 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Endpoint Descriptor 02 2 Out, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 02h 2 Out 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Endpoint Descriptor 84 4 In, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 84h 4 In 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Interface Association Descriptor Abstract Control Model Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 03h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 02h CDC Control 5 bFunctionSubClass 1 02h Abstract Control Model 6 bFunctionProtocol 1 00h 7 iFunction 1 05h "Storch Serial Port #2" Interface Descriptor 3/0 CDC Control, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 03h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 02h CDC Control 6 bInterfaceSubClass 1 02h Abstract Control Model 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Header Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 00h Header 3 bcdCDC 2 0110h 1.10 Call Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 01h Call Management 3 bmCapabilities 1 00h 7..2: Reserved 000000.. 1: Data Ifc Usage ......0. Call management only over Comm Ifc 0: Call Management .......0 Does not handle call management itself 4 bDataInterface 1 04h Abstract Control Management Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 04h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 02h Abstract Control Management 3 bmCapabilities 1 02h 7..4: Reserved 0000.... 3: Connection ....0... 2: Send Break .....0.. 1: Line Coding ......1. Line Coding requests and Serial State notification supported 0: Comm Features .......0 Union Functional Descriptor Offset Field Size Value Description 0 bFunctionLength 1 05h 1 bDescriptorType 1 24h CS Interface 2 bDescriptorSubtype 1 06h Union 3 bControlInterface 1 03h 4 bSubordinateInterface0 1 04h CDC Data Endpoint Descriptor 83 3 In, Interrupt, 255 ms Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 83h 3 In 3 bmAttributes 1 03h Interrupt 1..0: Transfer Type ......11 Interrupt 7..2: Reserved 000000.. 4 wMaxPacketSize 2 000Ah 10 bytes 6 bInterval 1 FFh 255 ms Interface Descriptor 4/0 CDC Data, 2 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 04h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 02h 5 bInterfaceClass 1 0Ah CDC Data 6 bInterfaceSubClass 1 00h 7 bInterfaceProtocol 1 00h 8 iInterface 1 00h Endpoint Descriptor 03 3 Out, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 03h 3 Out 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Endpoint Descriptor 85 5 In, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 85h 5 In 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h Interface Association Descriptor Audio Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 05h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 01h Audio 5 bFunctionSubClass 1 00h 6 bFunctionProtocol 1 00h 7 iFunction 1 09h "Storch RX Voice" Interface Descriptor 5/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 05h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 01h Audio Control 7 bInterfaceProtocol 1 00h 8 iInterface 1 09h "Storch RX Voice" Audio Control Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Interface Header 2 7 01 00 01 27 00 01 06 Audio Control Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Output Terminal 2 7 03 30 01 01 00 60 0F Audio Control Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Feature Unit 2 7 06 60 31 02 03 00 00 Audio Control Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 0Ch 1 bDescriptorType 1 24h Audio Control Input Terminal 2 10 02 31 10 07 00 02 03 00 15 00 Interface Descriptor 6/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 06h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 12h "active 1" Interface Descriptor 6/1 Audio, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 06h 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 12h "active 1" Audio Streaming Interface Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 24h Audio Streaming Interface 2 5 01 30 01 01 00 Audio Streaming Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0Bh 1 bDescriptorType 1 24h Audio Streaming Format Type 2 9 02 01 02 02 10 01 80 BB 00 Endpoint Descriptor 81 1 In, Isochronous, 1 ms Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 81h 1 In 3 bmAttributes 1 25h Isochronous, Asynchronous, Implicit Feedback Data 1..0: Transfer Type ......01 Isochronous 3..2: Sync Type ....01.. Asynchronous 5..4: Usage Type ..10.... Implicit Feedback Data 7..6: Reserved 00...... 4 wMaxPacketSize 2 00C4h 196 bytes 6 bInterval 1 01h 1 ms 7 bRefresh 1 00h 8 bSynchAddress 1 00h Audio Streaming Isochronous Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 25h Audio Streaming Isochronous Audio Data Endpoint 2 5 01 00 02 00 00 Interface Association Descriptor Audio Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 07h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 01h Audio 5 bFunctionSubClass 1 00h 6 bFunctionProtocol 1 00h 7 iFunction 1 0Ah "Storch RX Spectrum" Interface Descriptor 7/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 07h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 01h Audio Control 7 bInterfaceProtocol 1 00h 8 iInterface 1 0Ah "Storch RX Spectrum" Audio Control Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Interface Header 2 7 01 00 01 27 00 01 08 Audio Control Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Output Terminal 2 7 03 44 01 01 00 64 10 Audio Control Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Feature Unit 2 7 06 64 45 02 03 00 00 Audio Control Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 0Ch 1 bDescriptorType 1 24h Audio Control Input Terminal 2 10 02 45 10 07 00 02 03 00 15 19 Interface Descriptor 8/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 08h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 13h "active 2" Interface Descriptor 8/1 Audio, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 08h 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 13h "active 2" Audio Streaming Interface Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 24h Audio Streaming Interface 2 5 01 44 01 01 00 Audio Streaming Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0Bh 1 bDescriptorType 1 24h Audio Streaming Format Type 2 9 02 01 02 03 18 01 00 77 01 Endpoint Descriptor 82 2 In, Isochronous, 1 ms Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 82h 2 In 3 bmAttributes 1 25h Isochronous, Asynchronous, Implicit Feedback Data 1..0: Transfer Type ......01 Isochronous 3..2: Sync Type ....01.. Asynchronous 5..4: Usage Type ..10.... Implicit Feedback Data 7..6: Reserved 00...... 4 wMaxPacketSize 2 0246h 582 bytes 6 bInterval 1 01h 1 ms 7 bRefresh 1 00h 8 bSynchAddress 1 00h Audio Streaming Isochronous Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 25h Audio Streaming Isochronous Audio Data Endpoint 2 5 01 00 02 00 00 Interface Association Descriptor Audio Offset Field Size Value Description 0 bLength 1 08h 1 bDescriptorType 1 0Bh Interface Association 2 bFirstInterface 1 09h 3 bInterfaceCount 1 02h 4 bFunctionClass 1 01h Audio 5 bFunctionSubClass 1 00h 6 bFunctionProtocol 1 00h 7 iFunction 1 0Bh "Storch TX Voice" Interface Descriptor 9/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 09h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 01h Audio Control 7 bInterfaceProtocol 1 00h 8 iInterface 1 0Bh "Storch TX Voice" Audio Control Interface Header Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Interface Header 2 7 01 00 01 27 00 01 0A Audio Control Input Terminal Descriptor Offset Field Size Value Description 0 bLength 1 0Ch 1 bDescriptorType 1 24h Audio Control Input Terminal 2 10 02 28 01 01 00 02 03 00 15 0E Audio Control Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Feature Unit 2 7 06 78 28 02 03 00 00 Audio Control Output Terminal Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 24h Audio Control Output Terminal 2 7 03 29 11 07 00 78 00 Interface Descriptor 10/0 Audio, 0 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 0Ah 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 00h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 14h "active 3" Interface Descriptor 10/1 Audio, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 0Ah 3 bAlternateSetting 1 01h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 01h Audio 6 bInterfaceSubClass 1 02h Audio Streaming 7 bInterfaceProtocol 1 00h 8 iInterface 1 14h "active 3" Audio Streaming Interface Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 24h Audio Streaming Interface 2 5 01 28 01 01 00 Audio Streaming Format Type Descriptor Offset Field Size Value Description 0 bLength 1 0Bh 1 bDescriptorType 1 24h Audio Streaming Format Type 2 9 02 01 02 02 10 01 80 BB 00 Endpoint Descriptor 01 1 Out, Isochronous, 1 ms Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 01h 1 Out 3 bmAttributes 1 25h Isochronous, Asynchronous, Implicit Feedback Data 1..0: Transfer Type ......01 Isochronous 3..2: Sync Type ....01.. Asynchronous 5..4: Usage Type ..10.... Implicit Feedback Data 7..6: Reserved 00...... 4 wMaxPacketSize 2 00C0h 192 bytes 6 bInterval 1 01h 1 ms 7 bRefresh 1 00h 8 bSynchAddress 1 00h Audio Streaming Isochronous Audio Data Endpoint Descriptor Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 25h Audio Streaming Isochronous Audio Data Endpoint 2 5 01 00 02 00 00 Спасибо. Подозреваю что в таком случае и нотификации бы заработали. Может быть не на всех платформах. Надо будет протестировать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться