X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/32f0f605efa293430a47d60bb857695ff6937d21..dc42c5eb6b663b0b117b5660ba5818186744efd5:/Demos/Device/GenericHID/GenericHID.h diff --git a/Demos/Device/GenericHID/GenericHID.h b/Demos/Device/GenericHID/GenericHID.h index 5841595e3..b68dc4c24 100644 --- a/Demos/Device/GenericHID/GenericHID.h +++ b/Demos/Device/GenericHID/GenericHID.h @@ -46,43 +46,34 @@ #include "Descriptors.h" - #include // Library Version Information - #include // Simple scheduler for task management - #include // USB Functionality - #include // LEDs driver - + #include + #include + #include + #include + /* Macros: */ - /** HID Class specific request to get the next HID report from the device. */ - #define REQ_GetReport 0x01 + /** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ + #define LEDMASK_USB_NOTREADY LEDS_LED1 - /** HID Class specific request to send the next HID report to the device. */ - #define REQ_SetReport 0x09 + /** LED mask for the library LED driver, to indicate that the USB interface is enumerating. */ + #define LEDMASK_USB_ENUMERATING (LEDS_LED2 | LEDS_LED3) - /* Enums: */ - /** Enum for the possible status codes for passing to the UpdateStatus() function. */ - enum GenericHID_StatusCodes_t - { - Status_USBNotReady = 0, /**< USB is not ready (disconnected from a USB host) */ - Status_USBEnumerating = 1, /**< USB interface is enumerating */ - Status_USBReady = 2, /**< USB interface is connected and ready */ - }; + /** LED mask for the library LED driver, to indicate that the USB interface is ready. */ + #define LEDMASK_USB_READY (LEDS_LED2 | LEDS_LED4) - /* Event Handlers: */ - /** Indicates that this module will catch the USB_Connect event when thrown by the library. */ - HANDLES_EVENT(USB_Connect); + /** LED mask for the library LED driver, to indicate that an error has occurred in the USB interface. */ + #define LEDMASK_USB_ERROR (LEDS_LED1 | LEDS_LED3) - /** Indicates that this module will catch the USB_Disconnect event when thrown by the library. */ - HANDLES_EVENT(USB_Disconnect); + /* Function Prototypes: */ + void SetupHardware(void); - /** Indicates that this module will catch the USB_ConfigurationChanged event when thrown by the library. */ - HANDLES_EVENT(USB_ConfigurationChanged); - - /* Task Definitions: */ - TASK(USB_HID_Report); + void EVENT_USB_Connect(void); + void EVENT_USB_Disconnect(void); + void EVENT_USB_ConfigurationChanged(void); + void EVENT_USB_UnhandledControlPacket(void); - /* Function Prototypes: */ - void UpdateStatus(uint8_t CurrentStatus); - void ProcessGenericHIDReport(uint8_t* DataArray); - void CreateGenericHIDReport(uint8_t* DataArray); + uint16_t CALLBACK_USB_HID_CreateNextHIDReport(USB_ClassInfo_HID_t* HIDInterfaceInfo, void* ReportData); + void CALLBACK_USB_HID_ProcessReceivedHIDReport(USB_ClassInfo_HID_t* HIDInterfaceInfo, + void* ReportData, uint16_t ReportSize); #endif