These are the examples provided for [[/users/frank26080115/libraries/LPC1700CMSIS_Lib/]] Note, the entire "program" is not compilable!

Revision:
0:bf7b9fba3924
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/USBDEV/USBHID/hiduser.c	Sun Mar 20 05:38:56 2011 +0000
@@ -0,0 +1,146 @@
+/*----------------------------------------------------------------------------
+ *      U S B  -  K e r n e l
+ *----------------------------------------------------------------------------
+ *      Name:    HIDUSER.C
+ *      Purpose: HID Custom User Module
+ *      Version: V1.10
+ *----------------------------------------------------------------------------
+*      This software is supplied "AS IS" without any warranties, express,
+ *      implied or statutory, including but not limited to the implied
+ *      warranties of fitness for purpose, satisfactory quality and
+ *      noninfringement. Keil extends you a royalty-free right to reproduce
+ *      and distribute executable files created using this software for use
+ *      on NXP Semiconductors LPC family microcontroller devices only. Nothing
+ *      else gives you the right to use this software.
+ *
+ *      Copyright (c) 2005-2009 Keil Software.
+ *---------------------------------------------------------------------------*/
+
+
+#include "lpc_types.h"
+
+#include "usb.h"
+#include "hid.h"
+#include "usbcfg.h"
+#include "usbcore.h"
+#include "hiduser.h"
+
+#include "demo.h"
+
+
+uint8_t HID_Protocol;
+uint8_t HID_IdleTime[HID_REPORT_NUM];
+
+
+/*
+ *  HID Get Report Request Callback
+ *   Called automatically on HID Get Report Request
+ *    Parameters:      None (global SetupPacket and EP0Buf)
+ *    Return Value:    TRUE - Success, FALSE - Error
+ */
+
+uint32_t HID_GetReport (void) {
+
+  /* ReportID = SetupPacket.wValue.WB.L; */
+  switch (SetupPacket.wValue.WB.H) {
+    case HID_REPORT_INPUT:
+      GetInReport();
+      EP0Buf[0] = InReport;
+      break;
+    case HID_REPORT_OUTPUT:
+      return (FALSE);          /* Not Supported */
+    case HID_REPORT_FEATURE:
+      /* EP0Buf[] = ...; */
+      /* break; */
+      return (FALSE);          /* Not Supported */
+  }
+  return (TRUE);
+}
+
+
+/*
+ *  HID Set Report Request Callback
+ *   Called automatically on HID Set Report Request
+ *    Parameters:      None (global SetupPacket and EP0Buf)
+ *    Return Value:    TRUE - Success, FALSE - Error
+ */
+
+uint32_t HID_SetReport (void) {
+
+  /* ReportID = SetupPacket.wValue.WB.L; */
+  switch (SetupPacket.wValue.WB.H) {
+    case HID_REPORT_INPUT:
+      return (FALSE);          /* Not Supported */
+    case HID_REPORT_OUTPUT:
+      OutReport = EP0Buf[0];
+      SetOutReport();
+      break;
+    case HID_REPORT_FEATURE:
+      return (FALSE);          /* Not Supported */
+  }
+  return (TRUE);
+}
+
+
+/*
+ *  HID Get Idle Request Callback
+ *   Called automatically on HID Get Idle Request
+ *    Parameters:      None (global SetupPacket and EP0Buf)
+ *    Return Value:    TRUE - Success, FALSE - Error
+ */
+
+uint32_t HID_GetIdle (void) {
+
+  EP0Buf[0] = HID_IdleTime[SetupPacket.wValue.WB.L];
+  return (TRUE);
+}
+
+
+/*
+ *  HID Set Idle Request Callback
+ *   Called automatically on HID Set Idle Request
+ *    Parameters:      None (global SetupPacket)
+ *    Return Value:    TRUE - Success, FALSE - Error
+ */
+
+uint32_t HID_SetIdle (void) {
+
+  HID_IdleTime[SetupPacket.wValue.WB.L] = SetupPacket.wValue.WB.H;
+
+  /* Idle Handling if needed */
+  /* ... */
+
+  return (TRUE);
+}
+
+
+/*
+ *  HID Get Protocol Request Callback
+ *   Called automatically on HID Get Protocol Request
+ *    Parameters:      None (global SetupPacket)
+ *    Return Value:    TRUE - Success, FALSE - Error
+ */
+
+uint32_t HID_GetProtocol (void) {
+
+  EP0Buf[0] = HID_Protocol;
+  return (TRUE);
+}
+
+
+/*
+ *  HID Set Protocol Request Callback
+ *   Called automatically on HID Set Protocol Request
+ *    Parameters:      None (global SetupPacket)
+ *    Return Value:    TRUE - Success, FALSE - Error
+ */
+
+uint32_t HID_SetProtocol (void) {
+
+  HID_Protocol = SetupPacket.wValue.WB.L;
+
+  /* Protocol Handling if needed */
+  /* ... */
+
+  return (TRUE);
+}