Змінюй хід війни! Допомагай ЗСУ!

delete

🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
Статус: Offline
Реєстрація: 06.08.2008
Повідом.: 50
Оголошень: 2
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #1
delete
 
Останнє редагування:
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #2
Класс HID как был слейвом,так слейвом и останется и будет он отвечать хосту только по его,хоста, запросу.
103-й камень имеет на борту USB-device, но не host, хостом страдают камни с USB-OTG(105,107)
Можно ли более подробнее прояснить задачу?
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #3
Спасибо за ответ.


Дело в том, что между MCU и ПК должен стоять Хаб.

А Хаб ведь не поддерживает ОТГ...

Правильно?


Задача простая: MCU, имея свою небольшую местную клавиатуру задания команд для ПК, должен отправлять по нажатию на клавишу код стандартной (как стандартная клавиатура ПК) команды.
ПК должен оперативно эту команду отработать.

Удобнее всего такое сделать бы по прерыванию от MCU.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #4
Возьмите у ST библиотеку STM32_USB-FS-Device_Lib_V4.0.0 ,например.
В папке /Projects найдите прожект Custom_HID и доработайте его до своих нужд.
Не получится - поищите в сети RHIDDemo, примеров и прожектов - большой вагон и маленький тележка.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #5
Спасибо.

Меня же всё убеждают, что такой режим обмена по прерыванию не возможен.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #6
Щось мені здається, що ТС тупо не розуміє як працює юсб.

Навіщо якісь переривання для клави? Твій хід буде опитуватись хостом з якоюсь частотою, шли у відповідь свої коди команд при натисненні.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #7
Спасибо.

Меня же всё убеждают, что такой режим обмена по прерыванию не возможен.

Складывайте информацию от устройства в буфер,хоть по прерыванию,хоть поллингом. Винда поллит подключенное устройство каждую миллисекунду и калбэк события SOF отдаст инфу хосту.
Почитайте книгу Агурова "Практика программирования USB" - многие вопросы станут ясными.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #8
Щось мені здається, що ТС тупо не розуміє як працює юсб.

Навіщо якісь переривання для клави? Твій хід буде опитуватись хостом з якоюсь частотою, шли у відповідь свої коди команд при натисненні.

Ну, если бы ТС "розумив", то и вопросов бы и не было...

На самом деле, тема USB очень объемна (взять только одни спецификации и пр.).

А ТС - не программер, он собственно, по аналогу, по схемам.

Поэтому, так и получается.


Постоянный опрос смущает тем, что ПК - может быть портативным, мобильным, iDevice, а устройство HID - однозначно портативное, питается от своей батареи.

ПК через хаб (упомянутый выше) постоянно передает поток данных также в устройство.

Дополнительный постоянный опрос устройства - это загрузка ПК и потребление ПК и устройства собственно.

Поэтому, хочется изыскать возможность обмена по прерыванию от HID-устройства.

Складывайте информацию от устройства в буфер,хоть по прерыванию,хоть поллингом. Винда поллит подключенное устройство каждую миллисекунду и калбэк события SOF отдаст инфу хосту.
Почитайте книгу Агурова "Практика программирования USB" - многие вопросы станут ясными.

1. Техническая возможность реализации обмена, желаемого и описанного в стартпосте существует?

2. *Винда поллит подключенное устройство каждую миллисекунду*
Такое происходит и даже в (возможном) случае обмена по прерыванию от HID?

3. *Почитайте книгу Агурова... *
Смотрел ее и другие.
Показалось, что описание там, как-то в "общем"...

Для схемотехника-аналоговика сложная задача переварить такое.

Поэтому, он решил взять "помощь клуба".
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #9
Постоянный опрос смущает тем, что ПК - может быть портативным, мобильным, iDevice, а устройство HID - однозначно портативное, питается от своей батареи.

ПК через хаб (упомянутый выше) постоянно передает поток данных также в устройство.

Дополнительный постоянный опрос устройства - это загрузка ПК и потребление ПК и устройства собственно.

Поэтому, хочется изыскать возможность обмена по прерыванию от HID-устройства.
Кажу ж - не розумієш, як працює юсб.

Мишка, клава та будь-що інше працює саме так - опитування N разів в секунду. І щось не гальмує систему твою. Да і процу пох, якщо є зовнішнє живлення.
Хід по командам до 1кГц.

Почитай про юсб ліби для стм. Знайди найпростішу, що шле 0-1 в залежності від натискання кнопки та допили, щоб слало коди команд. Ну і драйвер для хосту( пк, телефон тощо), який вже таки ловитиме переривання від системи та опрацьовуватиме отримані дані. Ну і остаточний софт, що ловитиме переривання від драйвера( а точніше переривання системи, викликані перериваннями драйверу).
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #10
Кажу ж - не розумієш, як працює юсб.

Мишка, клава та будь-що інше працює саме так - опитування N разів в секунду. І щось не гальмує систему твою. Да і процу пох, якщо є зовнішнє живлення.
Хід по командам до 1кГц.

*Кажу ж - не розумієш, як працює юсб.*

Так разве кто спорит?

Вопрос - к Знатокам.


*Мишка, клава та будь-що інше працює саме так - опитування N разів в секунду.*

Т-е, желаемый обмен по прерыванию технически не реализуем?


*Хід по командам до 1кГц.*

Закончите мысль, пожалуйста.
А то не понятно.

Почитай про юсб ліби для стм. Знайди найпростішу, що шле 0-1 в залежності від натискання кнопки та допили, щоб слало коди команд. Ну і драйвер для хосту( пк, телефон тощо), який вже таки ловитиме переривання від системи та опрацьовуватиме отримані дані. Ну і остаточний софт, що ловитиме переривання від драйвера( а точніше переривання системи, викликані перериваннями драйверу).

Спасибо, передам Ваш совет программисту.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #11
Блін, ну почитай як працює юсб.
В будь-якому режимі хост опитує УСІ слеви з якоюсь частотою.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #12
А драйвера? Если вы избавляетесь от HID то и подхватывать устройство некому.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #13
Блін, ну почитай як працює юсб.
В будь-якому режимі хост опитує УСІ слеви з якоюсь частотою.

А, то есть режим прерывания от HID нет смысла реализовывать вообще?

ТС теперь правильно понял идеологию рекомендаций?

А драйвера? Если вы избавляетесь от HID то и подхватывать устройство некому.

Это, наверное, вопрос к tifo?

Что это значит?
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #14
Так, нічого не треба вигадувати.
Все, що тобі треба - правити один єдиний дескриптор-відповідь. А точніше не його, а лише буфер данних, підсовуючи туди код команди при натисненні кнопки. Ну або нулі чи ще щось( як у софтині хосту реалізуєш).

Тобто при натисненні кнопки суєш в буфер код команди. Вона передається при наступному опитуванні юсб хостом. По перериванню чи відпусканню кнопки пишеш нулі чи ще щось - вже залежить від реалізації в софті на пк.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #15
Так, нічого не треба вигадувати.
Все, що тобі треба - правити один єдиний дескриптор-відповідь. А точніше не його, а лише буфер данних, підсовуючи туди код команди при натисненні кнопки. Ну або нулі чи ще щось( як у софтині хосту реалізуєш).

Спасибо.

Уже лучше.


А о чем это товарищ Me1 говорит:

"А драйвера? Если вы избавляетесь от HID то и подхватывать устройство некому." ?
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #16
Это мысли вслух. Если отходить от HIDовских записать\прочитать\посмотреть со стороны хоста, и влезать в более глубокие дебри, то стандартные дрова уже подхватываться не будут, надо будет делать свои и прослойку которая будет интерпретировать их для системы.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #17
Хз до чого він те написав.
Звичайно я маю на увазі, що використовувати ХІД. Вигадувати свій класс та писати дрова, коли треба реалізувати ссану клаву, то збочення.
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #18
Это мысли вслух. Если отходить от HIDовских записать\прочитать\посмотреть со стороны хоста, и влезать в более глубокие дебри, то стандартные дрова уже подхватываться не будут, надо будет делать свои и прослойку которая будет интерпретировать их для системы.

Спасибо.

Мысли по сути - будут очень кстати.


Т-е, это в случае реализации первоначально рассмотренного в теме обмена по прерыванию от HID, т-е "влезать в более глубокие дебри" , так что-ли?
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #19
А разве HID устройства могут в принципе генерировать прерывания?
 
  • 🟠 01:41 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #20
Назад
Зверху Знизу