| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| USB въпрос http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=14546 |
Страница 1 от 2 |
| Автор: | Dimitar [ Сря Май 04, 2016 12:13 am ] |
| Заглавие: | USB въпрос |
Някой наясно ли е дали е възможно едно устройство да се представя едновременно като CDC, HID и мас сторидж като се закачи на USB-то. Демек едновременно да може да приема/предава по CDC-то и HID-а и да можеш да си четеш/записваш върху SD картата, дето е закачена за него. Сега имаме една джаджа, дето едновременно се представя като CDC и HID но искаме да добавим и SD карта та преди да почнем да дълбаем на дълбоко ме интерисува дали въобще е възможно. |
|
| Автор: | 4040 [ Сря Май 04, 2016 1:47 am ] |
| Заглавие: | Re: USB въпрос |
Би трябвало да може. Май се води "usb composite device". |
|
| Автор: | palavrov [ Сря Май 04, 2016 1:53 am ] |
| Заглавие: | Re: USB въпрос |
Правил съм такова нещо под линукс - с ethernet over usb, mass storage и т.н. http://www.linux-usb.org/gadget/ - Linux-USB Gadget Имай в предвид, че имаше някакви безумни патенти ако се изкушиш да си сложиш драйвери на масс сториджа |
|
| Автор: | Dimitar [ Сря Май 04, 2016 2:25 am ] |
| Заглавие: | Re: USB въпрос |
Няма ли универсален мас сторидж драйвер също като HID-а и CDC-то? |
|
| Автор: | palavrov [ Сря Май 04, 2016 8:18 am ] |
| Заглавие: | Re: USB въпрос |
Нямам идея дали преизползват в gadged другите драйвери - би било глупаво да не го правят. |
|
| Автор: | miro_atc [ Сря Май 04, 2016 9:12 am ] | |||||||||
| Заглавие: | Re: USB въпрос | |||||||||
По стандарт може, но трябва джелязото ти да поддържа достатъчно на брой ендпоинтове. Останалото е стек и дескриптори, но ти като си подкарал CDC и HID би трябвало да нямаш грижи да добавиш и MS. |
||||||||||
| Автор: | Dimitar [ Сря Май 04, 2016 2:07 pm ] |
| Заглавие: | Re: USB въпрос |
Там е работата, че аз нищо не съм подкарвал иначе нямаше да питам |
|
| Автор: | miro_atc [ Сря Май 04, 2016 2:21 pm ] |
| Заглавие: | Re: USB въпрос |
Щото каза че имате джаджа аз си помислих че вие сте я правили... Тъй де, виж само контролера дали има достатъчно ендпоинти, виж потенциалните стекове колко са гъвкави (дано да не е ST че техния стек е голЕма боза..) |
|
| Автор: | Цецо [ Сря Май 04, 2016 4:57 pm ] |
| Заглавие: | Re: USB въпрос |
Може да не ти стигнат ендпоинтите за трипъл. Зависи колко е гъвкъв контролера. Трябват ти 3 за CDC, 2 за MSD и 2 за HID (може и 1). Демек абсолютния минимум е 6 броя. По големия проблем ще ти е драйвера, т.е. inf файла. Едва ли ще имаш подписан такъв, а от боза 8 нагоре, неподписаните пак са наебани. Не че не става, ама е хакерия. |
|
| Автор: | ike [ Сря Май 04, 2016 5:16 pm ] |
| Заглавие: | Re: USB въпрос |
А за виртуален USB хъб колко ендпоинта трябват? Защото пооделно ще може да ги подкара без подписване. |
|
| Автор: | Dimitar [ Чет Май 05, 2016 6:20 am ] |
| Заглавие: | Re: USB въпрос |
Мисля да ползваме кинетис К26 серията. Пише че usb модула му има 16 байдирекшънъл енд пойнта във фул спийд режим и 8 ендпойнта в хай спий режим. Демек би трябвало да стане хватката, нали? |
|
| Автор: | Цецо [ Чет Май 05, 2016 8:49 am ] |
| Заглавие: | Re: USB въпрос |
Ами така изглежда, ама трябва да го прочетеш внимателно да няма уловка. Другото което е незнам какви стекове дават от фрискеил. Аз имам опит (по скоро единствено и само главоболия), само с тия дето вървят в пакет с MQX. Пълен шит и отбиване на номера, общо взето неизползваем за нищо сериозно. Знам, че даваха и отделни плеин стекове без ОС, дано там нещата да са по читави. И все пак мисля, че основния проблем ще ти е с драйвера, ако ще го пускате на боза 8 и нагоре. Тоест ако ви трябва за клиент де, ако е за вътрешна употреба ще мине. |
|
| Автор: | miro_atc [ Чет Май 05, 2016 9:49 am ] | |||||||||
| Заглавие: | Re: USB въпрос | |||||||||
Това е ключовата дума... обикновено броят всяка посока за ендпоинт (ако може да се ползва така). Или пък казват че ендпоинта е байдирекшънъл, ама ако го ползваш като IN не може в същото време да го ползваш и OUT. Примерно голо CDC става с един IN и един OUT, ако поддържа ACM или друга надстройка си трябват още по един OUT и IN. Общо стават 4 стрийма. Ако са истински biderectional са 2 ендпоинта, иначе отиват 4. Освен това Цецо забрави да спомене нулевия ендпоинт. Той си е зает и в двете посоки и не може да се ползва, обаче производителите обикновено го включват в бройката, демек ти пък трябва да го извадиш. В случая 16 ендпоинта двупосочни ако са истински означава 30 стрийма и звучи мнооого добре. Даже прекалено добре за да е истина, защото в "лошия" вариант са поне 14 стрийма, което пак е добре и е достатъчно за 3-те функции. За сравнение STM32 full speed контролера освен нулевия (2 стрийма) има 3 IN и 3OUT стрийма. High speed версията им има 12 стрийма от които 2 за нулива + 5IN и 5OUT. |
||||||||||
| Автор: | ps66 [ Чет Май 05, 2016 11:08 am ] |
| Заглавие: | Re: USB въпрос |
Kinetis K60 има 3IN + 3OUT HS и 16IN+16OUT FS K26 май е по-нова серия и може да са повече (ако са 8 би-дир. - най-вероятно са 8IN+8OUT за HS) Аз ползвам K60 3IN + 3OUT HS - постигам от 10MB/s до 20МB/s (при 3.0 hub) бареметал EP0 - не го броя |
|
| Автор: | Dimitar [ Съб Май 07, 2016 6:47 pm ] |
| Заглавие: | Re: USB въпрос |
Цецо, току що го закачих на Уиндоус 10 64 бит и даже не търси никакви драйвери и CDC-то и HID-а си тръгнаха веднага като пичове без никакви грижи. Ако същото стане и с мас сториджа направо ще е песен |
|
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|