Detailed Description
зависимости для исходного кода модуля
Следующие файлы должны быть скомпилированы с любым проектом, который использует этот модуль:
- LUFA/Drivers/USB/Class/Device/HID.c (Имя модуля исходного кода для makefile: LUFA_SRC_USBCLASS)
 
модуля
Фреймворк-интерфейс драйвера режима USB-устройства, для драйвера HID USB Class. 
Function Documentation
      
        
          | bool CALLBACK_HID_Device_CreateHIDReport  | 
          ( | 
          USB_ClassInfo_HID_Device_t *const  | 
          HIDInterfaceInfo,  | 
        
        
           | 
           | 
          uint8_t *const  | 
          ReportID,  | 
        
        
           | 
           | 
          const uint8_t  | 
          ReportType,  | 
        
        
           | 
           | 
          void *  | 
          ReportData,  | 
        
        
           | 
           | 
          uint16_t *const  | 
          ReportSize  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Функция обратного вызова (callback) драйвера HID class для создания пользователем HID-репорта IN. Этот callback может запускаться либо в ответ на управляющие запросы HID class от хоста, либо по обычному опросу конечной точки HID. Внутри этого callback пользователь отвечает за создание следующего входного репорта HID для отправки его хосту.
- Parameters:
 - 
  
    | [in,out] | HIDInterfaceInfo | указатель на структуру, содержащую конфигурацию и состояние HID Class.  | 
    | [in,out] | ReportID | если предустановлено в ненулевое значение, это ID репорта, запрошенного хостом. Если ноль, то должно быть установлено в ID репорта при генерации входного репорта HID (если это имеет место). Если несколько репортов не посылается через указанный интерфейс HID, этот параметр должен игнорироваться.  | 
    | [in] | ReportType | тип репорта HID для генерации, либо HID_REPORT_ITEM_In, либо HID_REPORT_ITEM_Feature.  | 
    | [out] | ReportData | указатель на буфер, где должен быть сохранен сгенерированный репорт HID.  | 
    | [out] | ReportSize | количество байт в сгенерированном входном репорте, или ноль, если репорт не будет отправлен. | 
  
   
- Returns:
 - двоичное true, чтобы отправить репорт принудительно, даже если он идентичен предыдущему репорту и все еще в пределах периода ожидания (удобно для устройств, которые показывают относительное перемещение), иначе false. 
 
 
 
      
        
          | void CALLBACK_HID_Device_ProcessHIDReport  | 
          ( | 
          USB_ClassInfo_HID_Device_t *const  | 
          HIDInterfaceInfo,  | 
        
        
           | 
           | 
          const uint8_t  | 
          ReportID,  | 
        
        
           | 
           | 
          const uint8_t  | 
          ReportType,  | 
        
        
           | 
           | 
          const void *  | 
          ReportData,  | 
        
        
           | 
           | 
          const uint16_t  | 
          ReportSize  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Функция обратного вызова (callback) драйвера HID class для обработки пользователем принятого HID-репорта OUT. Этот callback может запускаться либо в ответ на управляющие запросы HID class от хоста, либо по обычному опросу конечной точки HID. Внутри этого callback пользователь отвечает за обработку принятого от хоста выходного репорта HID.
- Parameters:
 - 
  
    | [in,out] | HIDInterfaceInfo | указатель на структуру, содержащую конфигурацию и состояние HID Class.  | 
    | [in] | ReportID | ID принятого выходного репорта. Если на указанном интерфейсе HID не принимается несколько репортов, этот параметр должен игнорироваться.  | 
    | [in] | ReportType | тип принятого репорта HID, либо HID_REPORT_ITEM_Out, либо HID_REPORT_ITEM_Feature.  | 
    | [in] | ReportData | указатель на буфер, где сохранен принятый репорт HID.  | 
    | [in] | ReportSize | размер в байтах принятого от хоста репорта.  | 
  
   
 
 
Конфигурирует конечные точки указанного интерфейса HID готовыми для использования. Должна быть слинкована с событием библиотеки EVENT_USB_Device_ConfigurationChanged(), чтобы конечные точки конфигурировались, когда выбрана конфигурация, содержащая указанный интерфейс HID.
- Note:
 - Индексные номера конечной точки, как указано в структуре конфигурации интерфейса, не должны наложиться ни с каким другим интерфейсом, иначе произойдет повреждение банка конечной точки. Разрывы в номерах конечных точек или непоследовательные индексы в пределах единственного интерфейса допустимы, но никакие два интерфейса любого типа не должны иметь чередования индексов конечной точки.
 
- Parameters:
 - 
  
    | [in,out] | HIDInterfaceInfo | указатель на структуру, содержащую конфигурацию и состояние HID Class. | 
  
   
- Returns:
 - двоичное true, если конечные точки успешно сконфигурированы, иначе false. 
 
 
 
Показывает, что прошла милисекунда времени ожидания на указанном интерфейсе HID, и счетчик ожидания должен декрементироваться. Нужно вызывать раз в милисекунду, чтобы ключевые повторения аппаратуры работали правильно. Рекомендуется вызывать эту функцию по событию EVENT_USB_Device_StartOfFrame(), как только события SOF (события начала фрейма) разрешены функцией USB_Device_EnableSOFEvents().
- Parameters:
 - 
  
    | [in,out] | HIDInterfaceInfo | указатель на структуру, содержащую конфигурацию и состояние HID Class.  | 
  
   
 
 
Обрабатывает приходящие запросы от хоста, которые направлены на указанный интерфейс HID class. Это должно быть слинковано с событием EVENT_USB_Device_ControlRequest() библиотеки.
- Parameters:
 - 
  
    | [in,out] | HIDInterfaceInfo | указатель на структуру, содержащую конфигурацию и состояние HID Class.  | 
  
   
 
 
Главная задача поддержки для указанного интерфейса HID class, необходимая для корректной работы интерфейса. Должна часто вызываться в главном цикле программы, перед главной задачей поддержки USB USB_USBTask().
- Parameters:
 - 
  
    | [in,out] | HIDInterfaceInfo | указатель на структуру, содержащую конфигурацию и состояние HID Class.  |