X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/ece9e3d5991dd481fc36baf799a1a85d14b88251..dc42c5eb6b663b0b117b5660ba5818186744efd5:/Demos/Device/GenericHID/GenericHID.h diff --git a/Demos/Device/GenericHID/GenericHID.h b/Demos/Device/GenericHID/GenericHID.h index d13e6debf..b68dc4c24 100644 --- a/Demos/Device/GenericHID/GenericHID.h +++ b/Demos/Device/GenericHID/GenericHID.h @@ -46,47 +46,34 @@ #include "Descriptors.h" - #include // Library Version Information - #include // Simple scheduler for task management - #include // PROGMEM tags readable by the ButtLoad project - #include // USB Functionality - #include // LEDs driver - - /* Macros: */ - /** HID Class specific request to get the next HID report from the device. */ - #define REQ_GetReport 0x01 + #include + #include + #include + #include - /** HID Class specific request to send the next HID report to the device. */ - #define REQ_SetReport 0x09 + /* Macros: */ + /** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ + #define LEDMASK_USB_NOTREADY LEDS_LED1 - /* 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 enumerating. */ + #define LEDMASK_USB_ENUMERATING (LEDS_LED2 | LEDS_LED3) - /* Event Handlers: */ - /** Indicates that this module will catch the USB_Reset event when thrown by the library. */ - HANDLES_EVENT(USB_Reset); + /** LED mask for the library LED driver, to indicate that the USB interface is ready. */ + #define LEDMASK_USB_READY (LEDS_LED2 | LEDS_LED4) - /** 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