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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите с проектом под Delphi дл работы с HID USB, поиск простенького проекта 
:(
    Опции темы
CROC
Дата 26.10.2008, 20:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Ищу простенький проект под Delphi для работы с HID USB устройствами..
PM MAIL ICQ   Вверх
Mazzi
Дата 27.10.2008, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Тебе поможет книга Агурова "Практика программирования USB".


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


Шустрый
*


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

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



Цитата(Mazzi @ 27.10.2008,  09:54)
Тебе поможет книга Агурова "Практика программирования USB".

вот как раз я не могу запустить проек из этой книги smile
PM MAIL ICQ   Вверх
Mazzi
Дата 28.10.2008, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Поконкретней пожалуйста, что именно не получается?


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


Шустрый
*


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

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



Цитата(CROC @  26.10.2008,  20:57 Найти цитируемый пост)
щу простенький проект под Delphi для работы с HID USB устройствами..


Ничего искать не надо, HID устройства так и задуманы, чтоб подключил к компу и без установки драйверов работаешь (клавиатура, мышь и т.д). 

Объясни по конкретней, что нужно.

Программу ты должен написать для устройства (для микроконтроллера с USB), которое будешь подключать к компу. Для этого Delphi не годится. Используй IAR, Кеил и т.п. Проект в Агурове как раз для микроконтроллера и, если память не изменяет, 8051
PM MAIL   Вверх
Mazzi
Дата 6.11.2008, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(LessNik @ 5.11.2008,  19:41)
Цитата(CROC @  26.10.2008,  20:57 Найти цитируемый пост)
щу простенький проект под Delphi для работы с HID USB устройствами..


Ничего искать не надо, HID устройства так и задуманы, чтоб подключил к компу и без установки драйверов работаешь (клавиатура, мышь и т.д). 

Объясни по конкретней, что нужно.

Программу ты должен написать для устройства (для микроконтроллера с USB), которое будешь подключать к компу. Для этого Delphi не годится. Используй IAR, Кеил и т.п. Проект в Агурове как раз для микроконтроллера и, если память не изменяет, 8051

Если точнее, то at89c5131.

Ну и как операционка догадается, что нужно делать с устройством если для него нет никаких программ?


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


Шустрый
*


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

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



Цитата

Ну и как операционка догадается, что нужно делать с устройством если для него нет никаких программ?


Драйвера в операционке есть (я про винду), в некоторых случаях может дополнительно понадобится только inf файл. Какие драйвера использовать, операционка может решить по дескрипторам, которые устройство передаёт хосту в процессе энумерации (мы же на usb мышь или клавиатуру дрова не ставим), если не поймёт, то нужно использовать inf файл, в котором будет прописана необходимая информация, но это в случае более "сложных" устройств, чем мышь или клава.

PM MAIL   Вверх
Mazzi
Дата 7.11.2008, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(LessNik @ 7.11.2008,  10:26)
Цитата

Ну и как операционка догадается, что нужно делать с устройством если для него нет никаких программ?


Драйвера в операционке есть (я про винду), в некоторых случаях может дополнительно понадобится только inf файл. Какие драйвера использовать, операционка может решить по дескрипторам, которые устройство передаёт хосту в процессе энумерации (мы же на usb мышь или клавиатуру дрова не ставим), если не поймёт, то нужно использовать inf файл, в котором будет прописана необходимая информация, но это в случае более "сложных" устройств, чем мышь или клава.

А если это не клава, а некое нестандартное устройство? 
Как получить доступ к его функциям без написания своей программы?


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


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

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



Цитата(Mazzi @ 7.11.2008,  11:54)
Цитата(LessNik @ 7.11.2008,  10:26)
Цитата

Ну и как операционка догадается, что нужно делать с устройством если для него нет никаких программ?


Драйвера в операционке есть (я про винду), в некоторых случаях может дополнительно понадобится только inf файл. Какие драйвера использовать, операционка может решить по дескрипторам, которые устройство передаёт хосту в процессе энумерации (мы же на usb мышь или клавиатуру дрова не ставим), если не поймёт, то нужно использовать inf файл, в котором будет прописана необходимая информация, но это в случае более "сложных" устройств, чем мышь или клава.

А если это не клава, а некое нестандартное устройство? 

Тогда это не HID устройство - они все стандартные (для того и придумывались) Если устройство не способно прикинутся одним из HID классов, то увы, придется писать для него полноценный драйвер на хосте.
Цитата

Как получить доступ к его функциям без написания своей программы?
Если не HID - то никак

PM MAIL   Вверх
Mazzi
Дата 7.11.2008, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(xvr @ 7.11.2008,  13:01)
Цитата(Mazzi @ 7.11.2008,  11:54)
Цитата(LessNik @ 7.11.2008,  10:26)
Цитата

Ну и как операционка догадается, что нужно делать с устройством если для него нет никаких программ?


Драйвера в операционке есть (я про винду), в некоторых случаях может дополнительно понадобится только inf файл. Какие драйвера использовать, операционка может решить по дескрипторам, которые устройство передаёт хосту в процессе энумерации (мы же на usb мышь или клавиатуру дрова не ставим), если не поймёт, то нужно использовать inf файл, в котором будет прописана необходимая информация, но это в случае более "сложных" устройств, чем мышь или клава.

А если это не клава, а некое нестандартное устройство? 

Тогда это не HID устройство - они все стандартные (для того и придумывались) Если устройство не способно прикинутся одним из HID классов, то увы, придется писать для него полноценный драйвер на хосте.
Цитата

Как получить доступ к его функциям без написания своей программы?
Если не HID - то никак

Перечислю типы HID - устройств упомянутые в книге Агурова.

1) клавиатуры и указатели
2) кнопки управления, переключатели, задвижки
3) устройства управления в видеомагнитофонах, телефонах, игровых приставках
4) устройства не требующие взаимодействия с человеком, термометры, вольтметры

Что скажете?


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


Шустрый
*


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

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



Цитата(Mazzi @  7.11.2008,  13:30 Найти цитируемый пост)
Перечислю типы HID - устройств упомянутые в книге Агурова.

1) клавиатуры и указатели
2) кнопки управления, переключатели, задвижки
3) устройства управления в видеомагнитофонах, телефонах, игровых приставках
4) устройства не требующие взаимодействия с человеком, термометры, вольтметры

Что скажете?


Скажу, что на одну страницу ниже в главе 6.Класс HID Агурова (стр 147) написано, что :
Цитата

весь обмен с HID-устройством происходит с помощью определенной структуры, которая называется репортом (report). Один репорт может содержать до 65535 байтов данных. Микропрограмма HID-устройства должна содержать дескриптор репорта (report descriptor), который описывает структуру данных репорта. Репорт имеет достаточно гибкую структуру для описания любого типа устройства и формата передачи данных.


а также много другого полезного.

PM MAIL   Вверх
Mazzi
Дата 7.11.2008, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(LessNik @ 7.11.2008,  15:45)
Цитата(Mazzi @  7.11.2008,  13:30 Найти цитируемый пост)
Перечислю типы HID - устройств упомянутые в книге Агурова.

1) клавиатуры и указатели
2) кнопки управления, переключатели, задвижки
3) устройства управления в видеомагнитофонах, телефонах, игровых приставках
4) устройства не требующие взаимодействия с человеком, термометры, вольтметры

Что скажете?


Скажу, что на одну страницу ниже в главе 6.Класс HID Агурова (стр 147) написано, что :
Цитата

весь обмен с HID-устройством происходит с помощью определенной структуры, которая называется репортом (report). Один репорт может содержать до 65535 байтов данных. Микропрограмма HID-устройства должна содержать дескриптор репорта (report descriptor), который описывает структуру данных репорта. Репорт имеет достаточно гибкую структуру для описания любого типа устройства и формата передачи данных.


а также много другого полезного.

Ну хорошо, с помощью репорта происходит обмен, а дальше что?
Как этим репортом воспользоваться без программы верхнего уровня, если у меня самодельное устройство HID? 


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


Шустрый
*


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

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



Цитата(Mazzi @  7.11.2008,  16:20 Найти цитируемый пост)
Ну хорошо, с помощью репорта происходит обмен, а дальше что?
Как этим репортом воспользоваться без программы верхнего уровня, если у меня самодельное устройство HID? 


Я понял, что вы имели ввиду: работать с HID устройством наподобии как с COM портом.
Ну тогда, после того как операционка САМА поймёт, что это HID устройство и САМА установит нужные драйвера, то можно писать приложение верхнего уровня: получить дескриптор HID устройства для того, чтобы суметь его открыть, а дальше работать как с файлом(read, write и т.д.).
P.S. Подумал, что проблема в драйверах.

PM MAIL   Вверх
arzamax
Дата 14.11.2008, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день! Я тоже столкнулся с данной проблемой (и тоже по книге Агурова). Дело в том что в книге приводится конкретная программа для микропроцессора, после залития которой в него, он передает в систему некоторые данные генерирующиеся непрерывно. На диске к книге представленна откомпилированная программа на DELPHI которая читает эти данные, также там имеется исходник для этой программы откомпилировать который получается только после добавления в папку SetupApi.pas и еше парочки библиотек. Далее после компиляции программа не хочет работать вообще. Хотя откомпилированный якобы, агуровым код работает прекрасно.
Т.е. Агуров поступил интересно: показал что такое может быть, а дальше делайте чего хотите smile

P.S. Ужасно разочарован книгами агурова. Не разобравшись в вопросе досконально, возомнил себя гением и полез писать книги. 
В первой дофига косяков: мало того что про микропроцессоры рассказывается не все (по его словам существует всего две разновидности микропроцессора at89c5131: at89c5131-L и at89c5131-M. Всего их как оказалось три: "at89c5131", "at89c5131-L" и "at89c5131-M". Описывает он два последних, а структурную схему включения приводит для первого. У двух последних на две ножки больше: 18 и кажется 25, которые в первом не использовались.), так еще на диске нет и половины нужной информации, файлов и исходников, а та что есть на столько каличная что не знеш к куда ее приткнуть.
Вторая книга полная аналогия первой, ну добавлено пара глав и возможно исправлено пара косяков (кстати структурная схема включения микропоцессора не исправлена и в этой smile)
Желаю всем приятного прочтения!!!!!

А вопрос с написанием программы для HID устройства остался открытым. Все советуют использовать модуль SetupApi.pas из библиотеки JEDI но как его конкретно применять не обьясняется. Если кто нибудь сталкивался с подобной проблемой и успешно ее разрешил, обьясните пожалуйста каким образом.
PM MAIL   Вверх
xvr
Дата 14.11.2008, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

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



Цитата(arzamax @ 14.11.2008,  13:26)
А вопрос с написанием программы для HID устройства остался открытым. Все советуют использовать модуль SetupApi.pas из библиотеки JEDI но как его конкретно применять не обьясняется. Если кто нибудь сталкивался с подобной проблемой и успешно ее разрешил, обьясните пожалуйста каким образом.

Нашел у себя в закромах какой то исходник

Присоединённый файл ( Кол-во скачиваний: 804 )
Присоединённый файл  HIDKomponente.zip 371,72 Kb
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

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


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

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

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


 




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


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

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