Flz 0 9 апреля, 2014 Опубликовано 9 апреля, 2014 (изменено) · Жалоба Здравствуйте. Разбираюсь с USB. Конкретнее с CDC (виртуальный COM порт), реализую на микроконтроллере STM32(L). Библиотека от ST это просто кошмар, поэтому решил написать свою на основе библиотеки от keil. У keil есть реализация HID устройства, а CDC нет. Читая Агурова и статьи в интернете, уже кое-чего добился проходит инициализация – читаются дескрипторы, на ПК подключается драйвер и даже можно найти новый COM порт и открыть его в терминале. А вот с передачей и приемом у меня проблемы – я никак не пойму с какого момента заканчивается общение с нулевой конечной точкой и начинается общение с другими конечными точками. При отладке последовательность запросов у меня такая: 1. GET_DESCRIPTOR_DEVICE (дескриптор устройства) 2. SET_ADRESS 3. GET_DESCRIPTOR_DEVICE (дескриптор конфигурации) 4. SET_CONFIGURATION 5. SET_LINE_CODING 6. GET_LINE_CODING 7. SET_CONTROL_LINE_STATE 8. При открытии виртуального порта в терминале опять SET_LINE_CODING А далее ничего не происходит, даже когда я передаю данные через терминал. Хотя USB не отваливается и продолжает работать дальше. У меня такие вопросы. 1. Что должно происходить дальше? Какие запросы обрабатываться? 2. Что нужно сделать при запросе SET_CONFIGURATION? Я при этом запросе только включаю/настраиваю остальные(не конфигурационные) конечные точки и то не уверен, что правильно? 3. Как и когда правильно настраивать не конфигурационные конечные точки – по дескрипторам конечных точек или нужно учитывать какую-то информацию при запросе с ПК? Вроде пока больше вопросов не вспомню. Заранее благодарю за любую помощь. P.S. Может у кого есть пример для cdc usb, хотя-бы даже для другого микроконтроллера. Изменено 9 апреля, 2014 пользователем Нортон Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 9 апреля, 2014 Опубликовано 9 апреля, 2014 · Жалоба Пройдитесь поиском по форуму. Я выкладывал usb_cdc для stm32 (http://electronix.ru/forum/index.php?showtopic=111955&st=15). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lotor 0 9 апреля, 2014 Опубликовано 9 апреля, 2014 · Жалоба Библиотека от ST это просто кошмар Но оно работает. Хорошо живете, если есть время писать своё. =) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flz 0 10 апреля, 2014 Опубликовано 10 апреля, 2014 (изменено) · Жалоба Пройдитесь поиском по форуму. Я выкладывал usb_cdc для stm32 (http://electronix.ru/forum/index.php?showtopic=111955&st=15). Спасибо, буду разбираться. Изменено 10 апреля, 2014 пользователем Нортон Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться