LPCOpen Platform
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
HIDClassHost.c File Reference
#include "../../Core/USBMode.h"
#include "HIDClassHost.h"

Go to the source code of this file.

Functions

uint8_t HID_Host_ConfigurePipes (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo, uint16_t ConfigDescriptorSize, void *ConfigDescriptorData)
 Host interface configuration routine, to configure a given HID host interface instance using the Configuration Descriptor read from an attached USB device. This function automatically updates the given HID Host instance's state values and configures the pipes required to communicate with the interface if it is found within the device. This should be called once after the stack has enumerated the attached device, while the host state machine is in the Addressed state.
 
static uint8_t DCOMP_HID_Host_NextHIDInterface (void *const CurrentDescriptor)
 
static uint8_t DCOMP_HID_Host_NextHIDDescriptor (void *const CurrentDescriptor)
 
static uint8_t DCOMP_HID_Host_NextHIDInterfaceEndpoint (void *const CurrentDescriptor)
 
uint8_t HID_Host_ReceiveReportByID (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo, const uint8_t ReportID, void *Buffer)
 Receives a HID IN report from the attached device, by the report ID.
 
uint8_t HID_Host_ReceiveReport (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo, void *Buffer)
 Receives a HID IN report from the attached HID device, when a report has been received on the HID IN Data pipe.
 
uint8_t HID_Host_SendReportByID (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo, const uint8_t ReportID, const uint8_t ReportType, void *Buffer, const uint16_t ReportSize)
 Sends an OUT or FEATURE report to the currently attached HID device, using the device's OUT pipe if available, or the device's Control pipe if not.
 
bool HID_Host_IsReportReceived (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo)
 Determines if a HID IN report has been received from the attached device on the data IN pipe.
 
uint8_t HID_Host_SetBootProtocol (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo)
 Switches the attached HID device's reporting protocol over to the Boot Report protocol mode, on supported devices.
 
uint8_t HID_Host_SetIdlePeriod (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo, const uint16_t MS)
 Sets the idle period for the attached HID device to the specified interval. The HID idle period determines the rate at which the device should send a report, when no state changes have ocurred; i.e. on HID keyboards, this sets the hardware key repeat interval.
 
uint8_t HID_Host_SetReportProtocol (USB_ClassInfo_HID_Host_t *const HIDInterfaceInfo)
 Switches the attached HID device's reporting protocol over to the standard Report protocol mode. This also retrieves and parses the device's HID report descriptor, so that the size of each report can be determined in advance.
 

Function Documentation

static uint8_t DCOMP_HID_Host_NextHIDDescriptor ( void *const  CurrentDescriptor)
static

Definition at line 175 of file HIDClassHost.c.

static uint8_t DCOMP_HID_Host_NextHIDInterface ( void *const  CurrentDescriptor)
static

Definition at line 160 of file HIDClassHost.c.

static uint8_t DCOMP_HID_Host_NextHIDInterfaceEndpoint ( void *const  CurrentDescriptor)
static

Definition at line 187 of file HIDClassHost.c.