0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
1 | |
Чтение данных из usb-порта22.08.2018, 20:45. Просмотров 3301. Ответов 13
Метки нет Все метки)
(
Здравствуйте, уважаемые форумчане! Надо организовать передачу данных от самодельного устройства к компьютеру через usb-порт (COM-порт не подходит по скорости передачи данных). Нашел библиотеку PyUSB и столкнулся с проблемой, надо указать VID и PID, но поскольку устройство самодельное, оно не имеет VID и PID, и к моему сожалению, просто так читать данные из usb-порта нельзя. После чего возникла идея выбрать два рандомных числа и передать их как VID и PID (Я понимаю, что тогда устройство может определиться как флешка, камера, джойстик, клавиатура и т.д., но по идеи, компьютеру будет без разницы, т.к. драйвер для этого устройства напишу я.) Вопрос, как устройство передает свои VID и PID (т.е. как часто, это происходит, есть ли специальные биты, которые отделяют VID, PID и полезную информацию) и как, собственно, происходит передача данных по usb?
0
|
|
22.08.2018, 20:45 | |
MathCAD: чтение из COM- (либо USB-) порта Получение данных с USB/COM-порта Получение данных с USB-порта Захват данных с USB порта |
|
![]() 4178 / 3071 / 1007
Регистрация: 28.10.2013
Сообщений: 7,980
|
|
22.08.2018, 23:31 | 2 |
Мы, конечно, тут знаем вообще про все (ну наш раздел так ведь и называется: Python и все все все), но пожалуй вам стоит начать с официальной спецификации от Intel и K. На 482 страницах этого потрясающего бестселлера вы найдете исчерпывающие ответы о жизни и судьбе увлекательнейшего протокола шины USB.
1
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 12:41 [ТС] | 3 |
За документацию спасибо.
Если не хотите отвечать, то не отвечайте, не надо ерничать.
0
|
![]() |
|
23.08.2018, 12:56 | 4 |
![]() Решение
Есть покомпактнее описание:
USB in a NutShell (перевод). Интерфейс USB. Практика использования и программирования. Ваш вопрос вообще никакого отношения к Python не имеет. Вам туда: https://www.cyberforum.ru/electronics-beginners/ Вопрос слишком объёмный, чтобы кто-то на форуме вам взялся объяснять в деталях, как всё это работает. Однократно, при инициализации, в ответе на служебные запросы от хоста.
0
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 13:39 [ТС] | 5 |
Спасибо большое.
Извините, совсем задумался о том, что хочу реализовать это на Python.
Извините, что я спросил не в том разделе. Но ерничать как-то не очень.
После беглового просмотра документации и статей, понял что usb шина работает по-сложнее чем я это себе представлял.
Спасибо.
PS, насчет возмущений "Не разберутся в теме, тут же лезут на форум, думают им все объяснят", которые могут возникнуть. Извините, поскольку я думал, что usb-шина работает проще, искал в основном программную реализацию, после недели тщетных попыток полез на форум. Большое спасибо, за приведенные ссылки
0
|
![]() |
|
23.08.2018, 14:08 | 6 |
UART работает легко и понятно, поэтому новички мастерят связь на USB-UART мостах.
А стандарт USB сам по себе - убиться ап стену... Но на готовых примерах и макетных платах девайс завести не так уж сложно. Добавлено через 19 минут Она есть на микроконтроллерах AVR: V-USB. Тогда, когда оно начиналось, USB в МК не были шибко распространены. А сейчас у всех нормальных МК есть серии, имеющие на борту аппаратную реализацию. Поэтому уже сама программная реализация стала редкостью.
0
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 16:19 [ТС] | 7 |
Давайте я лучше расскажу, что я хочу сделать. Идея такая: сделать легкий видеопередатчик, передавать с него видеосигнал на компьютер, после чего нейросеть его обрабатывает(находит лицо, и выделяет его) и выводит готовую картинку на экран. Схемы видеопередатчиков я нашел(частота в основном 433МГц), нейросеть написал, с демодуляторами и АЦП почти разобрался, кодировку PAL знаю. Купить FPV систему(приемник+передатчик) не могу, т.к. на али она стоит от 1500-2000руб (Мне 15 лет, денег нет). Видел проекты на ПЛИС. Но с usb как я думал, почти сложилось, поэтому перестал искать в этом ключе, да и денег нет. По моим подсчетам скорость передачи данных должна быть от 35Кбайт/с, в то время как у COM-порта максимальная скорость 28.8Кбайт/с. С AVR (Arduino Uno) я работал, она определяется как виртуальный COM-порт, а у COM-порта максимальная скорость 28.8Кбайт/с + максимальная скорость которую я видел в кодах для ардуино 115200бод = 14.4Кбайт/с, поэтому реализацию устройств на AVR обходил стороной. Скорость передачи данных с помощью библиотеки V-USB хватает, но боюсь не хватит производительности МК(Хотя можно попробовать написать скрипт на чистом C). За библиотеку V-USB спасибо, все вышенаписанное реализуемое или меня заносит в колхоз и лучше поднакопить денег и купить по-лучше железо?
0
|
![]() |
|
23.08.2018, 17:20 | 8 |
У родителей попросите. Не на пиво же
![]() Обычный аппаратный в винде позволяет из коробки 115 Кбит/с, ~9,6 Кбайт/с Silabs CP210x - USB-UART, по описанию, позволяет получить 921 Кбит/с, что ~76 Кбайт/с. Silabs CP2130 - мост USB-SPI, выдаёт 3-4 Мбит/с. И это всё довольно простые и доступные интерфейсы. На форуме ардуинщиков есть записи о получении 0,5...2 Мбит/с по виртуальному COM порту. Но вообще да, лучше стороной обходить. Есть гораздо более мощные и быстродействующие микроконтроллеры, вроде STM32. Правда, денег поболее стоят. Да, лучше бы. Но и на ардуине попробовать можно. Добавлено через 6 минут Откуда такая инфа? Добавлено через 26 минут И если уж есть кабель USB, то почему бы просто не подключить вебкамеру к ПК напрямую? Лишнее устройство здесь не нужно.
1
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 18:02 [ТС] | 9 |
Википедия https://ru.wikipedia.org/wiki/... 1%8B%D1%85
Родители, в связи с моим недавним ДР, хотят купить мне монитор(решение взвешенное, т.к. старый совсем никакой) + видеокарту хочется обновить(т.к. gt240 уже не хватает), моих денег не хватает на новую, поэтому они мне решили добавить, поэтому просить еще денег некрасиво. Давайте не будем про деньги, а то звучит это со стороны не очень.
А мир-то интересней, чем мне казалось
![]()
0
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 18:30 [ТС] | 10 |
Т.к. хочется сделать беспроводную передачу видео, т.к. с вебкамерой я уже работал и так же определял лица(только с помощью хаар каскада).
0
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 20:47 [ТС] | 12 |
Фактически, беспроводного USB не будет, т.к. сигнал с видеопередатчика принимает демодулятор, после чего АЦП преобразует этот сигнал в цифровой(передатчик аналоговый) и уже этот сигнал скармливается USB-UART устройству. Получается без разницы от чего принимает сигнал USB-UART конвертор от ардуино или от АЦП или я что-то путаю?
0
|
0 / 0 / 0
Регистрация: 10.03.2018
Сообщений: 20
|
|
23.08.2018, 21:27 [ТС] | 14 |
0
|
23.08.2018, 21:27 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Чтение данных с COM-порта Чтение данных с COM порта Чтение данных с COM-порта Чтение данных из com-порта Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |