Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Создание миниплаты для USB
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры
Melnikov
Добрый день.

Мне необходима такая микросхема (или плата, или еще как незнаю это назвать), которую можно подключить в компьютер в USB-порт. Единственное, что пока от этой платы требуется, так это чтоб на ней лампочка загоралась и передавался какой-то конкретный сигнал драйверу, который бы идентифицировал эту плату, например, под именем "Лампочка".

Т.е.
1. втыкаю провод в микросхему, другим концом в комп.
2. на плате загорается светодиод
3. Windows пишет, что "Подключено новое устройство "Лампочка"
4. запускается программа (калькулятор. например)
5. при вынимании провоа из компа программа (калюкулятор наш) закрывается.

Ребят, скажите, это вообще реально или такое возможно только со штатом в 40 инженеров и гигантским заводом сделать? Что вообще делать-то? С какой стороны подойти к вопросу?
Melnikov
Добрый день.

Мне необходима такая микросхема (или плата, или еще как незнаю это назвать), которую можно подключить в компьютер в USB-порт. Единственное, что пока от этой платы требуется, так это чтоб на ней лампочка загоралась и передавался какой-то конкретный сигнал драйверу, который бы идентифицировал эту плату, например, под именем "Лампочка".

Т.е.
1. втыкаю провод в микросхему, другим концом в комп.
2. на плате загорается светодиод
3. Windows пишет, что "Подключено новое устройство "Лампочка"
4. запускается программа (калькулятор. например)
5. при вынимании провоа из компа программа (калюкулятор наш) закрывается.

Ребят, скажите, это вообще реально или такое возможно только со штатом в 40 инженеров и гигантским заводом сделать? Что вообще делать-то? С какой стороны подойти к вопросу?
olefil
Вопрос хороший. Могу сразу ответить Windows побарабану до лампочки и сам он конечно о ней не чего не узнает. А вот если идет речь о написании своей программы, которая соединялась бы с устройством и опрашивала его, то тут все просто. Бери Jungo Windriver не ниже 5.05b и пиши драйверы сколько хочешь. Драйвер должен обслуживаться еще и со сотороны устройства. А тут начинается самое интересное. Спецификаций протокола USB одна (в плане 2.0 и 1.1 закрывает), а вот протоколов передачи данных не так и мало. Зайди на usb.org там их и увидишь. По сути возможно подобрать, то что интересует. И тогда в папке Система появится устройство USB - лампочка - ура, все давольны. Таким образом: 1 - необходимо выбрать протокол передачи данных по USB, 2 - в соответсвии с этим протоколом написать драйверы для обоих сторон (PC и устройство), 3 - включить питание и радоваться, что нехрена не работает, 4- потратить еще пару недель на, то чтобы заработало. Возможен вариант, что драйвер уже имеется со стороны устройства, тогда надо понять по какому интерфейсу он работает, в документации тогда должны быть также дрова для PC. Что еще можно сказать? Да вроде похоже это все.
Alexandr
USB микросхемами довольно успешно занимается фирма FTDI. Микросхемы крайне простые в использовании - со стороны электроники USB интерфейсная микросхема выглядит как обычный регистр. В самой микрухе (например FT245BM) есть вшитые дескрипторы, которые он передает при установлении соединения и по ним однозначно можно определить подключенное устройство. Но вообще то к этой микрухе можно подцепить внешний EEPROM с любыми своими дескрипторами.
И так с электроникой разобрались, теперь что касается драйверов: Политика компании FTDI заключается в бесплатном распространении USB-драйверов, обеспечивающих создание пользовательского Windows-приложения для управления обменом данными между компьютером и USB-устройством, использующим кристаллы FTDI. На выбор программиста предлагаются два типа драйверов: VCP (Virtual Com Port) - драйвер и D2xx-драйвер.

VCP-драйвер (драйвер виртуального последовательного порта) позволяет программисту управлять обменом данными с устройством USB также, как и с обычным портом RS232, используя API-функции Windows. При этом все особенности формирования USB-протокола скрыты от пользователя так, что он может даже и не знать стандарта USB.

D2xx-драйвер предоставляет dll-библиотеку с набором специализированных функций, которые открывают программисту более широкие функциональные возможности и позволяют получить более высокие скорости обмена данными.

И последнее - зайдите по этой ссылке. Это сайт компании ЭФО, которая помоему одна из первых в России начала распространение кристаллов FTDI.
На сайте ЭФО полоно статей и примеров использования на русском языке.
http://www.efo.ru/doc/Ftdi/
С уважением Alexandr cheers.gif
olefil
Чесно говоря на рекламу похоже больше, чем на ответ. А вот фирма Cypress на мой взгляд чуток по моднее будет.
ALexx
Посмотрите на продукцию FTDI. Пользуем их. Довольно интересные штучки. И штата в 40 сотрудников :-) для освоения не требуется.

http://www.ftdichip.com/Products/FT245BM.htm
Melnikov
Ага, т.е. в принципе нужно такую штуку поискать в магазинах, а потом припаять ее на плату? Или эта микросхемка уже на плате с USB-выходом продается?
COMA
начал отвечать тут:
http://forum.electronix.ru/index.php?act=S...st=0#entry11899

продолжу здесь.

вот ссылка на хороший проект:
http://www.myplace.nu/mp3/usb_module.htm
Alexandr
FTDI выпускает как микросхемы отдельно, так и мини платки с разъемом - такой своебразный интерфейсный модуль.
Alexandr
Цитата(olefil @ Dec 28 2004, 11:17)
Чесно говоря на рекламу похоже больше, чем на ответ. А вот фирма Cypress на мой взгляд чуток по моднее будет.
*

Ну дык расскажите в чем этот чуток заключается, может и правда более достойная весчь. smile.gif
olefil
Мне просто кажется, что вопрос не втом был. Человек хотел узнать как ему с готовым устройством быть.
А насчет чуток. Я не совсел понял в каком виде поставляется устройство для программирования FTDI. И еще вопрос они че только 8Мбит/c на USB2.0 раскачивают. В этом случае паровозы быстрее летают. Хотя конечно для лампочки этого итак дофига.
Cypress поставляет нормальную отладочную плату с возможностью писать дрова Windriver b DevStudio. Текст очень хорошо документирован. Работают они на всех операционках (не только Windows). С этой всей хренью прикольно и удобно работать. Между прочим Cypress считается мировым лидером в области USB, а это что-то да значит
olefil
Я тут сначала на программерском форуме нашел ваш вопрос, а теперь здесь увидел. Идея ваша проще чем вы думаете. Вы можете на данный момент вообще использовать обычную USB-FLASH. И лампочка горит и калькулятор можно запустить. Делается за 5 секунд. Я хочу спосить, что конкретно надо, потому как такие устройства разрабатываю сам. Идея с лампочкой хороша для начала, а что потом?
Andrew2000
Вот, натыкался:
http://www.cesko.host.sk/
AllSeeker
Насколько я понял необходимо написать драйвер для готового устройства. Так зачем отладочные платы?
Я конечно, не могу похвастаться фирменным софтом и при написании драйвера воспользовался бы NuMega под DDK позволяет реализовать любой драйвер на любом уровне + легко достать + официально поддерживается, а всякие сторонние фирмы облегчающие жизнь – сомнительны.!
olefil
Цитата(AllSeeker @ Dec 28 2004, 12:58)
Насколько я  понял необходимо написать драйвер для готового устройства. Так зачем отладочные платы?
Я конечно, не могу похвастаться фирменным софтом и при написании драйвера воспользовался бы NuMega под DDK позволяет реализовать любой драйвер на любом уровне + легко достать + официально поддерживается, а всякие сторонние фирмы облегчающие жизнь – сомнительны.!
*


Вопрос был открыт в другом разделе форума. Там подробнее написано, чего надо. Дело оказлось далеко не в программе.
yornik
!Если речь идет о лампочке!, то самый простой способ - воспользоваться адаптером USB-1Wire от Dallas плюс DS2406 с этим самым светодиодом-лампочкой (опять же, готовую такую коробочку можно найти) плюс готовый софт (хоть из html-кода лампочку включайте/определяйте - но как всегда с софтом, придется разбираться, как работать с чужим, если не пишешь свое). Плюс, возможность безгеморройно расширяться в сторону подключения микросхем-термометров, АЦП, ID-чипов, управляемых замков и прочей периферии, не требующей большого потока и особой скорости реакции.

А если НУЖНЫ поток и скорость, так и надо прямо спрашивать - а то получается: "Скажите мне, ламеру, как бы попроще каламашку сделать, а я потом уже потихоньку из нее ракету-носитель 'Энергия' заделаю и без ваших советов". ;)
Melnikov
Нет, "Энергию" не надо smile.gif Только лампочку.
Большое всем спасибо за помощь. Сейчас пытаюсь разобраться по какому пути идти дальше smile.gif Цель собственна вот какова: Сейчас создается некий мир, в котором живут игрушки (авторские куклы несуществующих животных). Так вот каждая игрушка должна подключаться в компьютер и там оживать (оживает она счет спецпрограммы). Причем программа не только оживляет игрушка на экране но и через общий сервер коннектится к другим игрушкам (т.е. не между игрушками а между программами), позволяя вести нечто вроде интерактивного комикс-разговора.

Я так подумал, что для того, чтобы программа начала коннектится на сервер необходимо только чтобы стао известо, что подключилась игрушка. Именно игрушка, а не любое другое USB-устройство. Т.е типа функия "автозапуска" и идентификации. Вот как-то так...
P.S. А лампочка для того, чтобы у куклы светился глаз smile.gif
Может у вас есть мысли как это все удачнее устроить?
Melnikov
Цитата(olefil @ Dec 28 2004, 13:19)
Я хочу спосить, что конкретно надо, потому как такие устройства разрабатываю сам. Идея с лампочкой хороша для начала, а что потом?
*

А как, как это делается-то? smile.gif Я сейчас там в конце этой темы написал подробно для чего мне такое соединение нужно и как будет использоваться. Если вы такой штукой (ну, я про платы) занимались, то очень был бы признателен, если бы разъяснили что к чему. Наладили бы производство, в конце концов! Этого добра много понадобится.
yornik
Если делать на USB-2-1Wire, то:

1) Покупаете https://shop.maxim-ic.com/cgi-bin/Maxim.sto...ct/View/DS9490R - одна подобная хрень понадобится впоследствии любому родителю, который пожелает покупать ваши игрушки. Чего это такое - см. http://www.maxim-ic.com/products/ibutton/i...ns/blue_dot.cfm

2) Покупаете http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2907/ln/ , светодиоды, резисторы - то, что в самой игрушке будет стоять. Ессно, четырехпроводный кабель и разъемы (имхо, с телефонными RJ не каждый ребенок управится), спаиваете это все на коленках для пробы, подключаете к DS9490.

3) Разбираетесь с http://www.maxim-ic.com/products/1-wire/software/ все оставшееся время; думаете, что впихнуть в 1К EEPROM в игрушке и т.п. креатив

Чем мог - помог.
yornik
Решил уточнить - адаптер DS9490 нужен один на весь "зоопарк", сколько бы там игрушек не было; игрушки соединять между собой желательно гирляндой - одну к другой, хотя - и только если провода между игрушками будут короткими - можно и хаотично; число игрушек в одном "зоопарке" - до 200; легко делается игрушка "доктор" с работающим термометром в руке (хотя, может, и не столь точным, как реальный ртутный).

А вообще, тут главное - в какой бюджет нужно вписаться. Тут спецификации радиоинтерфейсов появляются, типа до 65тыс. устройств без выделенного сервера в одном месте. Проводов не надо...
-Tумблер-
Цитата(Melnikov @ Dec 28 2004, 02:46)
Добрый день.

Мне необходима такая микросхема (или плата, или еще как незнаю это назвать), которую можно подключить в компьютер в USB-порт. Единственное, что пока от этой платы требуется, так это чтоб на ней лампочка загоралась и передавался какой-то конкретный сигнал драйверу, который бы идентифицировал эту плату, например, под именем "Лампочка".

*


Возможно это поможет:
http://www.gaw.ru/html.cgi/txt/app/Atmel/m...b/rs232_usb.htm

А вот и плата:
http://www.gaw.ru/html.cgi/txt/app/Atmel/m.../AT89STK-05.htm

Прошу не считать это рекламой. smile.gif
Vladimir84
Народ у меня вопрос. я вообщем то в этом деле ламер но выпал такая тема диплома. как собрать на основе ds2406 датчик движения??? Если кто поможет буду очень благодарен.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.