Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Требуется консультация по USB host
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
Ivan_Kov
Стоит перспективная задача поднять USB host на микроконтроллере lpc24xx. Будет необходимо работать с устройствами хранения данных и с коммуникационными устройствами (думаю дело ограничется USB флешками и модемами).
Интересуют такие вопросы:
1) Хочется оценить примерную трудоемкость разработки.
2) Влезет ли все это во внутреннюю флешь(512Кб) ?
3) Какие имеются легкие ОС или библиотеки (желательно open source) поддерживающие работу USB host?
4) Какие книжки хорошие есть по USB?
TBI
Посмотрите ветку:
http://electronix.ru/forum/index.php?showtopic=35173
Ivan_Kov
Цитата(TBI @ Sep 14 2007, 12:00) *

Может я чего не понимаю, но, честно говоря, не увидел ответа на свои вопросы.
TBI
Я имел ввиду,что FTDI выпустила VNC1L (Vinculum USB Host Controller Device).
http://www.vinculum.com/prd_vnc1l.html
Для управления к нему можно прицепить любой микроконтроллер.
Ivan_Kov
Цитата(TBI @ Sep 14 2007, 15:32) *
Я имел ввиду,что FTDI выпустила VNC1L (Vinculum USB Host Controller Device).

Спасибо, конечно, но lpc24xx имеет host на борту, так что меня интересует чисто разработка софта
vmp
Цитата(Ivan_Kov @ Sep 14 2007, 11:42) *
1) Хочется оценить примерную трудоемкость разработки.
2) Влезет ли все это во внутреннюю флешь(512Кб) ?
3) Какие имеются легкие ОС или библиотеки (желательно open source) поддерживающие работу USB host?
4) Какие книжки хорошие есть по USB?

1. Порядка одного человеко-года.
2. Да. И в 256К войдет и место останется. ОЗУ лучше иметь не менее 64К.
3. Порекомендую SMX. http://www.smxrtos.com/. Не бесплатно, но цена разумная, ценник пришлют по запросу.
4. Очень хорошее введение в USB было у Cypress в EZ-USB Technical Reference Manual. Буквально на нескольких страницах изложены основы протокола. За дальнейшим - на www.usb.org, там свободно.

Настоятельно рекомендуется иметь аппаратный USB-анализатор, например от Ellisys.
Ivan_Kov
Цитата(vmp @ Sep 14 2007, 16:50) *
...

Спасибо, будем думать
AlexandrY
Все запутанней на самом деле чем мне кажется вы думает.
Host как его понимают юзеры на самом деле состоит как минимум из 3-4 слоев.
1. Физический программный драйвер к USB интерфейсу
2. USB host стек
3. Драйвер контрольного канала.
4. Драйвер класса устройств для хоста

Как выполнен 1-й уровень сильно зависит от того применяете ли вы операционную систему и какую или нет.
Обычно фирмы изготовители чипов типа LPC дают физический драйвер не использующий операционку.
Но вот 2-й уровень в исходниках можно найти только работающий совместно с операционкой, обычно Linux. Т.е. сразу тупик.
Физический драйвер займет не более пары килобайт, оперативной вообще почти не надо.
USB host вообщем тоже достаточно несложен, за месяца 3-и написать можно если уже досконально знать механизм работы.
С драйверами классов уже сложнее, там гораздо больше может быть функций и команд и расход памяти трудно прогнозировать.
Классы это - MassStorage (диск), Modem Communications Class Driver , HID и т.д.
Для драйвера MassStorage (дисков) все еще хуже, поверх него надо еще иметь саму файловую систему соответствующую системе на Flash накопителе.
Но хуже всего с драйверами контрольного канала, все дешевые USB побрякушки которые еще не устарели сделаны на глубоко засекреченных чипах, для которых нет никакой информации как они управляются по контрольному каналу. Дока на них даже под NDA может не даваться.
Вот тут полный ступор.
Если с USB Flash особо ничего знать не надо и можно реализовать чтение по открытой документации, то например к какому-нибудь USB Wi-FI адаптеру подключиться без шансов.
Выход только ковырять бинарные драйверы.

В общем случае для достаточно универсального hosta с учетом операционки ресурсов LPC на пределе.


Цитата(Ivan_Kov @ Sep 14 2007, 11:12) *
Стоит перспективная задача поднять USB host на микроконтроллере lpc24xx. Будет необходимо работать с устройствами хранения данных и с коммуникационными устройствами (думаю дело ограничется USB флешками и модемами).
Интересуют такие вопросы:
1) Хочется оценить примерную трудоемкость разработки.
2) Влезет ли все это во внутреннюю флешь(512Кб) ?
3) Какие имеются легкие ОС или библиотеки (желательно open source) поддерживающие работу USB host?
4) Какие книжки хорошие есть по USB?
WEST128
Если вы ограничитесь только флеш-накопителями, то за полгода можно написать софт, с модемами все гораздо сложнее, как уже говорилось выше. У нас как-то была задача подобная, после месяца ковыряния модема пришли к выводу, что быстрее будет свой сделать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.