|
Определение USB устройства |
|
|
|
Jul 17 2012, 08:49
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(Kruftin @ Jul 16 2012, 20:37)  Ну а например с процессора с поддержкой usb можно сэмулировать флэшку, дескриптор который вычитал программой мониторинга usb порта? Можно. Но нужно прочитать следующие книги: П. Агуров "Интерфейс USB. Практика использования и программирования" 2004 г. П. Агуров "Практика программирования USB" 2006 г. Jan Axelson "USB Complete. The Developer's Guide. Fourth Edition" 2009 г. Jan Axelson "USB Mass Storage. Designing and Programming Devices and Embedded Hosts" 2006 г.
|
|
|
|
|
Jul 17 2012, 17:47
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Цитата(Kruftin @ Jul 16 2012, 21:37)  Ну а например с процессора с поддержкой usb можно сэмулировать флэшку, дескриптор который вычитал программой мониторинга usb порта? Конечно можно! Причем, именно так, как вы сами сказали - вычитать дискрипторы, которыми представляется оригинальная флешка. Работа того же типа описана в интернете в отношении джейлбрейка для приставок PlayStation (PS3), чтобы в нелицензированные игры можно было играть.  . Там тоже подсмотрели протокол и сделали эмулятор. Вы тоже можете, подсмотрев дискрипторы, сделать так, что ваше устройство будет опознаваться, как флешка или как любое другое USB-устройство, однако проблема в том, чтобы и далее своей роли соответствовать. А то назваться-то можно и груздем, но потом придется полезать в кузов  , когда комп начнет на псевдофлешку писать.
|
|
|
|
|
Jul 18 2012, 11:39
|
Местный
  
Группа: Участник
Сообщений: 356
Регистрация: 9-06-07
Пользователь №: 28 315

|
Цитата а затем просто посылаю их без всяких задержек через процессор на ПК и все должно быть гуд? Совсем НЕ ГУД. Каждому дескриптору свое время и строго по запросу от ПК.
--------------------
Хорошую систему делают из стандартных блоков нестандартно мыслящие инженеры.
|
|
|
|
|
Aug 3 2012, 09:24
|
Участник

Группа: Участник
Сообщений: 16
Регистрация: 6-01-09
Пользователь №: 42 957

|
Вопрос к знатокам, может кто знает? Не по теме, но на всякий случай. Не люблю я новые темы создавать
Как под Windows скоростное устройство USB 2.0 заставить работать на медленной скорости как по USB 1.1 ?
Только, пожалуйста, не нужно доказывать, что мне это не надо. Ещё как надо, и надо всем: половина 3G модемов глючат из-за скоростного USB, а когда втыкаешь в медленный USB, работают нормально.
Заранее спасибо!
|
|
|
|
|
Aug 4 2012, 05:46
|
Участник

Группа: Участник
Сообщений: 16
Регистрация: 6-01-09
Пользователь №: 42 957

|
Всё так. Глючат только модемы. Хабы USB 1.1 уже не сохранились, не достанешь. Порты 1.1 тоже не в моде.
Говорят, на некоторых биосах можно выставить режим USB 1.1, но не у всех такие биосы. Поэтому нужен чисто программный способ.
Сообщение отредактировал Ноль с переносом - Aug 4 2012, 05:47
|
|
|
|
|
Aug 4 2012, 06:45
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Цитата(Ноль с переносом @ Aug 4 2012, 09:46)  Всё так. Глючат только модемы. Хабы USB 1.1 уже не сохранились, не достанешь. Порты 1.1 тоже не в моде. Говорят, на некоторых биосах можно выставить режим USB 1.1, но не у всех такие биосы. Поэтому нужен чисто программный способ. Что касается устройства, то любое из расчитанных на 2.0 может работать, как 1.1. Только частоту PLL оно у себя должно другую выставить и в дескрипторе, когда тот попросят, указать USB_SPECIFICATION не 0x200, а 0x110. Плохо только то, что устройство не может знать, к какому порту его присоединили, потому что именно ему дают команду представиться, запросив посылку, где кроме PID/VID должно указать еще и USB_SPECIFICATION. Т.е. процедура такова, что компьютер должен подстраиваться к устройству, а не наоборот. При большом желании, конечно, можно рычажок или джампер поставить, по состоянию замкнутости которого МК будет активировать разные скорости USB, только вряд ли кто захочет этим делом заморачиваться.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|