Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

STM32 HID пользовательское устройство управления

Сб янв 04, 2020 19:06:09

Добрый день ! Я разобрался с устройством работы HID мышки, клавиатуры, джойстика - все отлично работает ! Но никак не получается завести HID как пользовательское устройство управления, чтобы можно было управлять громкостью на компьютере.
В Windows он коректно отображается как HID-cовместимое устройство управления. Использую STM32f103 и библиотеку HAL.

Дескриптор я использую такой:

0x05, 0x0c, // USAGE_PAGE (Consumer Devices)
0x09, 0x01, // USAGE (Consumer Control)
0xa1, 0x01, // COLLECTION (Application)
0x05, 0x0c, // USAGE_PAGE (Consumer Devices)
0x09, 0xe2, // USAGE (Mute)
0x09, 0xe9, // USAGE (Volume Up)
0x09, 0xea, // USAGE (Volume Down)
0x09, 0xb0, // USAGE (Play)
0x09, 0xb1, // USAGE (Pause)
0x09, 0xb7, // USAGE (Stop)
0x15, 0x01, // LOGICAL_MINIMUM (1)
0x25, 0x06, // LOGICAL_MAXIMUM (6)
0x75, 0x08, // REPORT_SIZE (8)
0x95, 0x01, // REPORT_COUNT (1)
0x81, 0x00, // INPUT (Data,Ary,Abs)
0x95, 0x01, // REPORT_COUNT (1)
0x75, 0x10, // REPORT_SIZE (16)
0x81, 0x03, // INPUT (Cnst,Var,Abs)
0xc0 // END_COLLECTION

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

Re: STM32 HID пользовательское устройство управления

Сб янв 04, 2020 20:25:28

[quote="winston1777"]Но никак не получается завести HID как пользовательское устройство управления, чтобы можно было управлять громкостью на компьютере./quote]Это расширенная клавиатура.
Здесь есть код для AVR. https://bascom.at.ua/publ/multimedijnaj ... a/1-1-0-74
Посмотрите как устроены дескрипторы и осуществляется передача данных.
Насколько помню, нужно добавить еще одну конфигурацию и конечную точку.
Ответить