реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Два фнукциональных устройства в одном физическом
korbian
сообщение Nov 21 2009, 06:01
Сообщение #31





Группа: Участник
Сообщений: 13
Регистрация: 13-03-09
Пользователь №: 46 063



DiMonstr, а что за софт дескриптор устройства в таком виде(html) отображает?


--------------------
© korbian
Go to the top of the page
 
+Quote Post
DiMonstr
сообщение Nov 22 2009, 09:22
Сообщение #32


Частый гость
**

Группа: Свой
Сообщений: 81
Регистрация: 26-10-06
Из: Россия, Пенза
Пользователь №: 21 706



Цитата(korbian @ Nov 21 2009, 09:01) *

Да любой софт для анализа обмена на шине usb.Я использую последнее время USBAnalyser.
Go to the top of the page
 
+Quote Post
korbian
сообщение Nov 22 2009, 09:41
Сообщение #33





Группа: Участник
Сообщений: 13
Регистрация: 13-03-09
Пользователь №: 46 063



Цитата(DiMonstr @ Nov 22 2009, 12:22) *
Да любой софт для анализа обмена на шине usb.Я использую последнее время USBAnalyser.

а ссылку можно, а то гугл много чего выдает на такой запрос!


--------------------
© korbian
Go to the top of the page
 
+Quote Post
DiMonstr
сообщение Nov 23 2009, 11:31
Сообщение #34


Частый гость
**

Группа: Свой
Сообщений: 81
Регистрация: 26-10-06
Из: Россия, Пенза
Пользователь №: 21 706



Цитата(korbian @ Nov 22 2009, 12:41) *
а ссылку можно, а то гугл много чего выдает на такой запрос!

Извиняюсь за невеное название софта. Вот список программ для анализа USB трафика:
USBlyzer.1.5.97
SysNucleus USBTrace
Advanced USB Port Monitor 2.3.0.14.
Go to the top of the page
 
+Quote Post
galjoen
сообщение Nov 23 2009, 11:55
Сообщение #35


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(DiMonstr @ Nov 20 2009, 17:17) *
Хочу опровергнуть заявление galjoen о невозможности создания составного устройста biggrin.gif
Сегодня попробовал сделать составное USB устройство: Mass Storage Device и CDC Ethernet Emulation Model.

Ну, если можно сделать MS+CDC, то это радует. Хотя м.б. эта возможность только начиная с SP1 появилась. И ещё, неизвестно как драйвера встали - по bInterfaceClass или по VID+PID. Попробуйте, как я в своё время, в дескрипторе DEVICE idVendor=idProduct=bcdDevice=0 сделать. Если и в этом случае всё работать будет, то действительно можно радоваться...

К списку ПО, анализирующего USB, могу ещё BusHound (не совсем то и платное wink.gif ) и SnoopyPro (лично мне нравится и бесплатное) добавить.
Go to the top of the page
 
+Quote Post
DiMonstr
сообщение Nov 25 2009, 13:04
Сообщение #36


Частый гость
**

Группа: Свой
Сообщений: 81
Регистрация: 26-10-06
Из: Россия, Пенза
Пользователь №: 21 706



Для класса устройства Mass Storage Device описанного в дескрипторе интерфейса №0 драйвера у меня встали автоматически.
Для класса устройства Communication Device Descriptor описанного в дескрипторе интерфейса №1 драйвера автоматически ось не поставила. Чтобы установить стандартный драйвер usbser.sys для интерфейса №1, необходимо создать INF-файл. Образец я выложил.

Основная его фишка в этой строке: biggrin.gif
Код
%USBtoSerialConverter%=USBtoSer.Install,USB\VID_DC99&PID_C906&MI_01

Здесь идентификатор устройства включает Vendor ID, Product ID и "MI_01" означает номер интерфейса USB устройства для которого нужно поставить драйвер.

Как вы заметили, я не применял дескриптор Interface Association Descriptor (IAD). Я описал интерфейс CDC с тремя конечными точками. Я не стал отдельно создавать интерфейс данных и коммуникационный интерфейс. Кроме того, я не описал следующие дескрипторы:
- заголовочный (Header Functional Descriptor);
- режима команд (Call Management Functional Descriptor);
- абстракции устройства (Abstract Control Management Functional Descriptor);
- группирования (Union Functional Descriptor).

Работу девайса по второму интерфейсу я пока не проверял. На днях протестирую. smile3009.gif

Сообщение отредактировал DiMonstr - Nov 25 2009, 13:06
Эскизы прикрепленных изображений
Прикрепленное изображение
 

Прикрепленные файлы
Прикрепленный файл  csmmc_inf.txt ( 847 байт ) Кол-во скачиваний: 73
Прикрепленный файл  Composite_USB_device_MSD_CDC.html ( 21.88 килобайт ) Кол-во скачиваний: 109
 
Go to the top of the page
 
+Quote Post
galjoen
сообщение Nov 26 2009, 11:34
Сообщение #37


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(DiMonstr @ Nov 25 2009, 16:04) *
Для класса устройства Communication Device Descriptor описанного в дескрипторе интерфейса №1 драйвера автоматически ось не поставила.

И у меня так было. Поэтому и дальнейшие попытки не предпринимал т.к. мне нужно было чтобы программа со встроенного диска без установки на комп работала.
А вот если в дескрипторе DEVICE bDeviceClass=CDC установить, то драйвера автоматически ставятся в т.ч. и при VID=PID=0, но устройство уже будет без MassStorage. Хотя я, к сожалению, не попробовал при этом устройство составным, в т.ч. и с интерфейсом MassStorage, делать. А вдруг прокатило бы?
Go to the top of the page
 
+Quote Post
aal
сообщение Jan 15 2010, 10:19
Сообщение #38


Местный
***

Группа: Свой
Сообщений: 230
Регистрация: 20-10-04
Из: Новосибирская обл, п.Краснообск.
Пользователь №: 916



2 DiMonstr Ну и чем опыты закончились?


--------------------
_____________________________________
Пароли неприемлемы, легко взламываются терморектальным криптоанализатором.
Go to the top of the page
 
+Quote Post
DiMonstr
сообщение Feb 5 2010, 12:03
Сообщение #39


Частый гость
**

Группа: Свой
Сообщений: 81
Регистрация: 26-10-06
Из: Россия, Пенза
Пользователь №: 21 706



Цитата(aal @ Jan 15 2010, 13:19) *
2 DiMonstr Ну и чем опыты закончились?

На этом всё и закончилосьsmile.gif
Сейчас другим делом занят. Разбираюсь со спецификацией Remote NDIS. Хочу забацать типа адаптера USB-Ethernet
Go to the top of the page
 
+Quote Post
KIM
сообщение Aug 4 2010, 20:30
Сообщение #40


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 25-10-06
Пользователь №: 21 655



народ, а кто нить писал композитное устройство на основе cy7c68013? Хочу сделать Mass Storage плюс свой девайс, чтобы драйвера и софт на него таскать вместе с ним и ставить прямо с него. Я там понимаю проблема далеко не нова и повсеместно применяется в мобильных usb девайсах, модемах и пр. Мож есть какие примеры на эту тему? Вообще мне нужно корректно поставить задачу для проектирования и разводки ПП для устройтва. А как программировать его можно разобраться и позже. То есть необходимо составить что то вроде функциональной схемы. Пока в голову приходит вот что:

CY7c16013 (Cypress, usb fx2) связан с FPGA (она все равно будет в девайсе для реализации его основного функционала), на FPGA заведена FLASH память какая-нить (для mass storage девайса). Вооот... Все остальное достигается за счет программирования CY7c16013 и FPGA.
Go to the top of the page
 
+Quote Post
KIM
сообщение Aug 5 2010, 05:09
Сообщение #41


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 25-10-06
Пользователь №: 21 655



Цитата(KIM @ Aug 5 2010, 00:30) *
CY7c16013 (Cypress, usb fx2) связан с FPGA (она все равно будет в девайсе для реализации его основного функционала), на FPGA заведена FLASH память какая-нить (для mass storage девайса). Вооот... Все остальное достигается за счет программирования CY7c16013 и FPGA.

Пардон, не CY7c16013 , а CY7C68013
Go to the top of the page
 
+Quote Post
galjoen
сообщение Aug 5 2010, 08:45
Сообщение #42


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(KIM @ Aug 5 2010, 00:30) *
CY7c16013 (Cypress, usb fx2) связан с FPGA (она все равно будет в девайсе для реализации его основного функционала), на FPGA заведена FLASH память какая-нить (для mass storage девайса). Вооот... Все остальное достигается за счет программирования CY7c16013 и FPGA.

Чтобы сделать составное устойство нужно чтобы кол-во EndPoint (EP) было достаточным. Вот например для HID+MassStorage нужно 3 EP (не считая 0й) - 1. HID-овская InterruptIn, 2. MassStorage Bulk IN, 2. MassStorage Bulk OUT. Можно обойтись и без InterruptIn EP - сделать HID только с Get(Set)Feature через контрольный канал (0-я EP). Но у CY7C68013 кол-во EP для всех случаев вполне достаточное.

Не знаю какие требования к скорости и объёму передаваемых данных (кроме MassStorage) в вашем случае, поэтому рекомендовать ничего не могу. Но хочу заметить, что м.б. всё можно сделать и вообще без CY7C68013? На самой FPGA.
Go to the top of the page
 
+Quote Post
KIM
сообщение Aug 5 2010, 15:22
Сообщение #43


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 25-10-06
Пользователь №: 21 655



Цитата(galjoen @ Aug 5 2010, 12:45) *
Чтобы сделать составное устойство нужно чтобы кол-во EndPoint (EP) было достаточным. Вот например для HID+MassStorage нужно 3 EP (не считая 0й) - 1. HID-овская InterruptIn, 2. MassStorage Bulk IN, 2. MassStorage Bulk OUT. Можно обойтись и без InterruptIn EP - сделать HID только с Get(Set)Feature через контрольный канал (0-я EP). Но у CY7C68013 кол-во EP для всех случаев вполне достаточное.

Не знаю какие требования к скорости и объёму передаваемых данных (кроме MassStorage) в вашем случае, поэтому рекомендовать ничего не могу. Но хочу заметить, что м.б. всё можно сделать и вообще без CY7C68013? На самой FPGA.


Честно говоря, у меня есть опыт работы с cy7c68013, а на FPGA я usb никогда не реализовывал. Думаю есть готовые ядра, но я их пока не смотрел. Кстати FPGA скорее всего будет EP3C55 (Altera Cyclone III). Для моего девайса вполне достаточно будет двух Bulk EP (одна на вход, одна на выход), скорости там небольшие - если 15 мегабит на проходе через девайс получится, буднет очень Здорово. FPGA как вы наверняка поняли, будет определенную обработку входных данных проводить и гнать их обратно.

То есть создание композитного девайса заключается в написании драйвера и прошивки для CY7C680013, данные получать из FLASH через FPGA... Интерфейс для mass storage сложен в реализации? Мост между ним и FPGA с флеш-памятью придется на CY7C68013 реализовывать, я правильно понимаю?

Go to the top of the page
 
+Quote Post
galjoen
сообщение Aug 5 2010, 16:00
Сообщение #44


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(KIM @ Aug 5 2010, 19:22) *
Для моего девайса вполне достаточно будет двух Bulk EP (одна на вход, одна на выход), скорости там небольшие - если 15 мегабит на проходе через девайс получится, буднет очень Здорово.

FPGA как вы наверняка поняли, будет определенную обработку входных данных проводить и гнать их обратно.

Интерфейс для mass storage сложен в реализации?

Тогда вам вообще составное устройство не нужно. Можно одним MassStorage обойтись. Например, опишите его как устройство с 2-мя логическими дисками и всё. На одном, защищённом от записи, все программы для работы с вашим девайсом, а на другой, фиктивный, будет для приёма-передачи данных использоваться. Работать с ним придётся через запись/чтение сектора (иначе винда закэширует), но зато никаких драйверов не нужно. И две bulk EP нужны всего.

Так что, вам никакого общения с внешним миром не нужно? Что же это такое будет? Защита от копирования?

MassStorage в реализации не сложен, но требуется аккуратность. И виндовсие глюки обойти, иначе виндой отформатировать невозможно будет.
Go to the top of the page
 
+Quote Post
KIM
сообщение Aug 5 2010, 19:03
Сообщение #45


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 25-10-06
Пользователь №: 21 655



Цитата(galjoen @ Aug 5 2010, 20:00) *
Так что, вам никакого общения с внешним миром не нужно? Что же это такое будет? Защита от копирования?


Да, типа того, защита от копирования, реинженеринга и все такое, плюс шифрованный конфиг прям на девайсе - получается все свое ношу с собой )

А может есть где в открытом доступе примеры реализации композитных девайсов под CY7C68013? А примеры драйверов для композитных девайсов?
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th June 2025 - 01:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01503 секунд с 7
ELECTRONIX ©2004-2016