Поделиться через


Управление радиоуправлением в режиме самолета

Начиная с Windows 8 операционная система Windows обеспечивает поддержку с помощью HID, для управления радиоуправлением в режиме самолета.

Архитектура и обзор

Цель режима самолета — разрешить производителю ПК предоставить кнопку или переключатель (и потенциально светодиодный индикатор для указания состояния), что позволяет пользователю включать или отключать все беспроводные элементы управления в одном снимке. Это в первую очередь позволяет пользователю, который должен включить или отключить режим самолета, чтобы сделать это программным способом, позволяя операционной системе (a) определять состояние коммутатора и (b) управлять различными беспроводными радио через программное обеспечение.

Windows обеспечивает поддержку следующих использования HID на странице использования универсального рабочего стола.

Идентификатор использования Имя использования Тип использования
0x000C Беспроводные радио-элементы управления CollectionApplication (ЦС)
0x00C6 Беспроводной переключатель Элемент управления "Вкл/выкл." (OOC)
0x00C7 Беспроводной радио светодиодный индикатор Элемент управления "Вкл/выкл." (OOC)
0x00C8 Переключатель беспроводного радиополунка Элемент управления "Вкл/выкл." (OOC)

Ниже приведена архитектурная схема клиента HID, которая обеспечивает поддержку радиоуправления или режима самолета.

Архитектура режима самолета.

Служба обнаружения ShellHW (SHSVCD.dll) — это драйвер или служба клиента HID, которая работает в пользовательском режиме и обеспечивает поддержку устройства управления радиосвязью. Он отслеживает наличие коллекции верхнего уровня HID типа

  • USAGE_PAGE (универсальный рабочий стол) 05 01
  • USAGE (беспроводное радиоу управление) 09 0C

Пример дескриптора отчета

В следующем разделе приведены примеры дескрипторов отчета, которые должны использовать производители пк. Обратите внимание, что если коллекция верхнего уровня входит в дескриптор отчета, который уже имеет другую коллекцию верхнего уровня, идентификатор отчета должен быть включен (не показан в примерах ниже).

В следующем разделе содержатся дополнительные сведения для производителей компьютеров и определяется, какой пример дескриптора отчета наиболее подходит для их системного проектирования:

  • Кнопка без отслеживания состояния часто используется на кнопках управления потребителем клавиатуры (автономно или в сочетании с кнопкой "Функция" во многих мобильных системах (например, Fn+F5)).
  • Переключатель ползунка часто используется в мобильных системах с физическим ползунком включено или выключение (например, ноутбуки с режимом в самолете в режиме выключения или выключения).
  • Светодиодный индикатор часто используется как автономный самолет больше индикатора или в сочетании с кнопкой без отслеживания состояния или переключателем ползунка. Пользователям окна не требуется использовать этот светодиодный индикатор в системах мобильных форм-факторов, так как в пользовательском интерфейсе в режиме самолета есть визуальное указание.

Кнопка без отслеживания состояния без светодиодных индикаторов

USAGE_PAGE (Generic Desktop)                   05 01 
USAGE (Wireless Radio Controls)                09 0C 
COLLECTION (Application)                       A1 01 
LOGICAL_MINIMUM (0)                            15 00 
LOGICAL_MAXIMUM (1)                            25 01 
USAGE (Wireless Radio Button)                  09 C6 
REPORT_COUNT (1)                               95 01 
REPORT_SIZE (1)                                75 01 
INPUT (Data,Var,Rel)                           81 06 
REPORT_SIZE (7)                                75 07 
INPUT (Cnst,Var,Abs)                           81 03 
END_COLLECTION                                 C0

Кнопка без отслеживания состояния с светодиодным индикатором

USAGE_PAGE (Generic Desktop)                    05 01 
USAGE (Wireless Radio Controls)                 09 0C 
COLLECTION (Application)                        A1 01 
LOGICAL_MINIMUM (0)                             15 00 
LOGICAL_MAXIMUM (1)                             25 01 
USAGE (Wireless Radio Button)                   09 C6 
REPORT_COUNT (1)                                95 01 
REPORT_SIZE (1)                                 75 01 
INPUT (Data,Var,Rel)                            81 06 
REPORT_SIZE (7)                                 75 07 
INPUT (Cnst,Var,Abs)                            81 03 
USAGE (Wireless Radio LED)                      09 C7 
REPORT_SIZE (1)                                 75 01 
OUTPUT (Data,Var,Rel)                           91 02 
REPORT_SIZE (7)                                 75 07 
OUTPUT (Cnst,Var,Abs)                           91 03 
END_COLLECTION                                  C0

Переключатель ползунка (без светодиодных индикаторов)

USAGE_PAGE (Generic Desktop)                    05 01 
USAGE (Wireless Radio Controls)                 09 0C 
COLLECTION (Application)                        A1 01 
LOGICAL_MINIMUM (0)                             15 00 
LOGICAL_MAXIMUM (1)                             25 01 
USAGE (Wireless Radio Slider Switch)            09 C8 
REPORT_COUNT (1)                                95 01 
REPORT_SIZE (1)                                 75 01 
INPUT (Data,Var,Abs)                            81 02 
REPORT_SIZE (7)                                 75 07 
INPUT (Cnst,Var,Abs)                            81 03 
END_COLLECTION                                  C0

Переключатель ползунка с светодиодным индикатором

USAGE_PAGE (Generic Desktop)                    05 01 
USAGE (Wireless Radio Controls)                 09 0C 
COLLECTION (Application)                        A1 01 
LOGICAL_MINIMUM (0)                             15 00 
LOGICAL_MAXIMUM (1)                             25 01 
USAGE (Wireless Radio Slider Switch)            09 C8 
REPORT_COUNT (1)                                95 01 
REPORT_SIZE (1)                                 75 01 
INPUT (Data,Var,Abs)                            81 02 
REPORT_SIZE (7)                                 75 07 
INPUT (Cnst,Var,Abs)                            81 03 
USAGE (Wireless Radio LED)                      09 C7 
REPORT_SIZE (1)                                 75 01 
OUTPUT (Data,Var,Rel)                           91 02 
REPORT_SIZE (7)                                 75 07 
OUTPUT (Cnst,Var,Abs)                           91 03 
END_COLLECTION                                  C0

Только светодиодный индикатор (кнопка или ползунок)

USAGE_PAGE (Generic Desktop)                   05 01 
USAGE (Wireless Radio Controls)                09 0C 
COLLECTION (Application)                       A1 01 
LOGICAL_MINIMUM (0)                            15 00 
LOGICAL_MAXIMUM (1)                            25 01 
USAGE (Wireless Radio LED)                     09 C7 
REPORT_COUNT (1)                               95 01 
REPORT_SIZE (1)                                75 01 
OUTPUT (Data,Var,Rel)                          91 02 
REPORT_SIZE (7)                                75 07 
OUTPUT (Cnst,Var,Abs)                          91 03 
END_COLLECTION                                 C0

Устранение распространенных ошибок

Совет #1. При использовании переключателя BUTTON производитель пк должен отправить один отчет HID при освобождении кнопки, а не при нажатии кнопки. Это связано с тем, что кнопка переключателя обычно является относительным входным и не абсолютным.

Совет 2. Использование HID в режиме самолета работает только в мобильных системах (питание от батареи) и требует windows 8 или более поздних версий Windows.

Совет #3. Дополнительные сведения о переключателе "Режим самолета" см . в техническом документе "Усовершенствования клавиатуры" в Windows 8 .

Совет 4. Дополнительные сведения о кнопках и обеспечение правильности реализации правильного оборудования см. в требованиях к системе Windows 8.