+/*----------------------------------------------------------------------------\r
+ * U S B - K e r n e l\r
+ *----------------------------------------------------------------------------\r
+ * Name: usbuser.h\r
+ * Purpose: USB Custom User Definitions\r
+ * Version: V1.20\r
+ *----------------------------------------------------------------------------\r
+ * This software is supplied "AS IS" without any warranties, express,\r
+ * implied or statutory, including but not limited to the implied\r
+ * warranties of fitness for purpose, satisfactory quality and\r
+ * noninfringement. Keil extends you a royalty-free right to reproduce\r
+ * and distribute executable files created using this software for use\r
+ * on NXP Semiconductors LPC family microcontroller devices only. Nothing \r
+ * else gives you the right to use this software.\r
+ *\r
+ * Copyright (c) 2009 Keil - An ARM Company. All rights reserved.\r
+ *---------------------------------------------------------------------------*/\r
+\r
+#ifndef __USBUSER_H__\r
+#define __USBUSER_H__\r
+\r
+\r
+/* USB Device Events Callback Functions */\r
+extern void USB_Power_Event (uint32_t power);\r
+extern void USB_Reset_Event (void);\r
+extern void USB_Suspend_Event (void);\r
+extern void USB_Resume_Event (void);\r
+extern void USB_WakeUp_Event (void);\r
+extern void USB_SOF_Event (void);\r
+extern void USB_Error_Event (uint32_t error);\r
+\r
+/* USB Endpoint Callback Events */\r
+#define USB_EVT_SETUP 1 /* Setup Packet */\r
+#define USB_EVT_OUT 2 /* OUT Packet */\r
+#define USB_EVT_IN 3 /* IN Packet */\r
+#define USB_EVT_OUT_NAK 4 /* OUT Packet - Not Acknowledged */\r
+#define USB_EVT_IN_NAK 5 /* IN Packet - Not Acknowledged */\r
+#define USB_EVT_OUT_STALL 6 /* OUT Packet - Stalled */\r
+#define USB_EVT_IN_STALL 7 /* IN Packet - Stalled */\r
+#define USB_EVT_OUT_DMA_EOT 8 /* DMA OUT EP - End of Transfer */\r
+#define USB_EVT_IN_DMA_EOT 9 /* DMA IN EP - End of Transfer */\r
+#define USB_EVT_OUT_DMA_NDR 10 /* DMA OUT EP - New Descriptor Request */\r
+#define USB_EVT_IN_DMA_NDR 11 /* DMA IN EP - New Descriptor Request */\r
+#define USB_EVT_OUT_DMA_ERR 12 /* DMA OUT EP - Error */\r
+#define USB_EVT_IN_DMA_ERR 13 /* DMA IN EP - Error */\r
+\r
+/* USB Endpoint Events Callback Pointers */\r
+extern void (* const USB_P_EP[16])(uint32_t event);\r
+\r
+/* USB Endpoint Events Callback Functions */\r
+extern void USB_EndPoint0 (uint32_t event);\r
+extern void USB_EndPoint1 (uint32_t event);\r
+extern void USB_EndPoint2 (uint32_t event);\r
+extern void USB_EndPoint3 (uint32_t event);\r
+extern void USB_EndPoint4 (uint32_t event);\r
+extern void USB_EndPoint5 (uint32_t event);\r
+extern void USB_EndPoint6 (uint32_t event);\r
+extern void USB_EndPoint7 (uint32_t event);\r
+extern void USB_EndPoint8 (uint32_t event);\r
+extern void USB_EndPoint9 (uint32_t event);\r
+extern void USB_EndPoint10 (uint32_t event);\r
+extern void USB_EndPoint11 (uint32_t event);\r
+extern void USB_EndPoint12 (uint32_t event);\r
+extern void USB_EndPoint13 (uint32_t event);\r
+extern void USB_EndPoint14 (uint32_t event);\r
+extern void USB_EndPoint15 (uint32_t event);\r
+\r
+/* USB Core Events Callback Functions */\r
+extern void USB_Configure_Event (void);\r
+extern void USB_Interface_Event (void);\r
+extern void USB_Feature_Event (void);\r
+\r
+\r
+#endif /* __USBUSER_H__ */\r