ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
2 сентября
1539317 Топик полностью
Eddy_Em (Вчера, 12:14, просмотров: 74) ответил Andreas на В дескрипторе EP1 вижу, а ты ее в коде вообще не обрабатываешь? Она не разрешена?
Вообще не обрабатываю. Поначалу сделал отладочный выхлоп, но в EP1 никогда ничего не приходило. 

В общем, можно не париться, здесь та же история, что с interrupt point в USB-CDC: де-юре они нужны, а де-факто вообще никак не используются! Вот, например, рабочая железяка с тремя CDC "в одном флаконе":

https://github.com/eddyem/stm32samples/tree/master/F1%3AF103/BISS_C_encoders

Используются лишь четыре конечных точки: EP0 и по одной на каждый интерфейс. Устройство в /dev создается с подсказки COKPOWEHEU udev-скриптом по полю iInterface. В настройках устройства можно его поменять, чтобы не было проблем с различением устройств, если захочется N одинаковых железяк к компу подключить (VID/PID ведь у них один и тот же, в итоге возникнут /dev/iinterface_N, где по N хрен поймешь, какое это устройство).

Я поначалу для "одноинтерфейсных" CDC вообще использовал исключительно эмуляцию PL2303 без поля iInterface. Но столкнулся в предпоследнем спектрографе с тем, что у меня в комп подключалось сразу три таких устройства. И хрен разберешь, кто из них - автогид, кто - калибровка, кто - управление кэноновским объективом. Поэтому стал в обязательном порядке везде iInterface добавлять. Удобно.

Как без этого в маздае живут - не представляю. Видимо, жрут кактус.

eddy-em.livejournal.com github.com/eddyem