Модераторы: PILOT, ManiaK, Mazzi

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программирование USB 
V
    Опции темы
Helmet
Дата 16.6.2009, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



Добрый день. Даже не знаю как правильно описать возникшую проблему. Постараюсь =)
Необходимо каким-то образом программно отследить подачу напряжения на USB порт. ОС - Windows. Т.е. должна быть программа крутящаяся на винде, которая "слушает" USB порт, и как только на контакты пришло напряжение, произвести некое действие.
Подскажите пожалуйста, реально ли это? Какие есть варианты решения? Какие библиотеки могут помочь в этом?
Я очень далек от программирования на таком низком уровне и из предположений только есть мысль, что надо установить драйвер USB->COM и там уже что-то ловить. Спасибо заранее.
PM   Вверх
Mazzi
Дата 16.6.2009, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



Без аппаратной части не обойтись. Просто так подавать напряжение на USB порт нельзя, там должны быть информационные посылки.


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
Helmet
Дата 16.6.2009, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



Mazzi, спасибо за ответ.
А аппаратная часть - это контроллер, да? А есть ли какие-нибудь типовые готовые решения для следующего: самая простейшая кнопка, при нажатии на нее замыкаются 2 контакта. При этом нужно послать какой-нибудь информационный сигнал по USB.
PM   Вверх
mr_smit
Дата 16.6.2009, 20:16 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 1
Всего: 4



Цитата

Необходимо каким-то образом программно отследить подачу напряжения на USB порт.


Мне кажется ты не понимаешь что пишешь.

Напряжение на USB разъёме есть всегда, даже при не подключенном устройстве. Возьми вольтметр и замерь, убедись (крайние контакты +/-). Там 5 вольт.

user posted image

Пиши конкретно что надо.

Цитата

...информационный сигнал...

 smile 

Тебе сюда как минимум.
Ну или сразу сюда.

Это сообщение отредактировал(а) mr_smit - 16.6.2009, 21:21
PM MAIL   Вверх
Helmet
Дата 17.6.2009, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



mr_smit, правильно, я же сразу сказал, что не разбираюсь в этом, а перелопачивать гору литературы нет времени :(
Задача по сути простая: послать некоторые данные в USB порт, хотя бы 1 байт, чтобы потом программа смогла среагировать на это событие. Желательно обойтись без контроллера. Ведь наверняка можно установить драйвер USB->COM и как то сэмулировать подачу напряжения на одну из ножек порта. Что то я совсем запутался =)

PM   Вверх
Mazzi
Дата 17.6.2009, 12:00 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



Цитата(Helmet @ 16.6.2009,  18:34)
Mazzi, спасибо за ответ.
А аппаратная часть - это контроллер, да? А есть ли какие-нибудь типовые готовые решения для следующего: самая простейшая кнопка, при нажатии на нее замыкаются 2 контакта. При этом нужно послать какой-нибудь информационный сигнал по USB.

Простейшее решение для тебя это использовать микросхему CP2102, даташит на которую легко найти в интернете. Эта микросхема - преобразователь USB в UART. Затем подсоединяешь свою кнопку на её выводы RXD и TXD. Устанавливаешь драйвера, после чего у тебя появляется ещё один COM-порт. Затем в этот порт кидаешь байт, и если он через кнопку возвращается тебе назад, значит кнопка замкнута, если не возвращается, значит разомкнута.

Схема во вложении, только кнопку не нарисовал.

Удачи!

Присоединённый файл ( Кол-во скачиваний: 128 )
Присоединённый файл  USB_UART.GIF 8,91 Kb


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
mr_smit
Дата 17.6.2009, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 1
Всего: 4



http://www.platan.ru/cgi-bin/qwery_i.pl?code=CP2102
99 руб схемка Mazzi стоит.

Можешь ещё тут почитать:
http://my-avr.at.ua/publ/1-1-0-27

Но для схемы Mazzi нужно драйвера устанавливать, а можно то же самое (для твоего случая) сделать без драйверов. Микросхема которая прикидывается HID устройством и выполняет те же задачи. Только можно: к любому компу подключил - и сразу работай.

http://www.firmwarefactory.com/USB-232.aspx

P.S. Правда насчет цены не уверен, может и дороже стоить.

Это сообщение отредактировал(а) mr_smit - 17.6.2009, 12:30
PM MAIL   Вверх
cardinal
Дата 17.6.2009, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 8
Всего: 99



Цитата(mr_smit @  17.6.2009,  10:22 Найти цитируемый пост)
P.S. Правда насчет цены не уверен, может и дороже стоить.

судя по ценам на Digikey USB-232 будет стоить около 250 рублей. Но вещь прикольная! smile 


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
mr_smit
Дата 17.6.2009, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 1
Всего: 4



А вообще сейчас почитал про CP2102 классная вещь. Надо будет купить. И никаких тебе MAX232 не надо.

Кстати, Helmet, давай колись для чего тебе всё это нужно.

Это сообщение отредактировал(а) mr_smit - 17.6.2009, 13:06
PM MAIL   Вверх
cardinal
Дата 17.6.2009, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 8
Всего: 99



mr_smit, есть еще FT232...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Helmet
Дата 17.6.2009, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



Ого, загрузили информацией  smile  Спасибо, буду разбираться, надеюсь больших трудностей не возникнет.

Цитата(mr_smit @  17.6.2009,  12:54 Найти цитируемый пост)
Кстати, Helmet, давай колись для чего тебе всё это нужно.

А хрен знает, на работе сказали "Для проекта нужно большую красную кнопку придумать чтоб жмякнул - и программа наша запустилась"
 smile 

Mazzimr_smitcardinal, еще раз спасибо!!!

Добавлено через 1 минуту и 1 секунду
Ребята с кол-вом постов больше 100, поставьте плюсы парням плиз от меня  smile 
PM   Вверх
mr_smit
Дата 18.6.2009, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 1
Всего: 4



Цитата(cardinal @ 17.6.2009,  13:07)
mr_smit, есть еще FT232...

Он дороже. smile
PM MAIL   Вверх
mr_smit
Дата 18.6.2009, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 27.2.2008
Где: Самара

Репутация: 1
Всего: 4



А если без всяких драйверов, по принципу "Подключил и ЖМИ!", то тогда:

user posted image

Сегодня время если будет, попробую сделать, что то самому интересно стало. smile
PM MAIL   Вверх
Mazzi
Дата 18.6.2009, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



Я на ATMege8 не делал устройств для USB, но слышал отзывы, что работает очень плохо, через раз и к томуже обмен очень медленный.( это не относится к текущей теме кнопки )


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
cardinal
Дата 18.6.2009, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 8
Всего: 99



Ну нельзя же программно решить эффективно то, что по сути должно решаться аппаратно. Тем более, что у USB 2.0 очень неплохие скорости обмена данными...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.1598 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.