/**********************************************************************
* $Id$		abstract.txt 			
*//**
* @file		abstract.txt 
* @brief	Example description file
* @version	2.0
* @date		
* @author	NXP MCU SW Application Team/Micromint USA Support
*
* Copyright(C) 2010, NXP Semiconductor
* All rights reserved.
*
***********************************************************************
* Software that is described herein is for illustrative purposes only
* which provides customers with programming information regarding the
* products. This software is supplied "AS IS" without any warranties.
* NXP Semiconductors assumes no responsibility or liability for the
* use of the software, conveys no license or title under any patent,
* copyright, or mask work right to the product. NXP Semiconductors
* reserves the right to make changes in the software without
* notification. NXP Semiconductors also make no representation or
* warranty that such application will be suitable for the specified
* use without further testing or modification.
**********************************************************************/
  
@Example description:
Purpose:
	This example describes how to use USBDEV on LPC1768 to run a simple HID 
        application.
Process:			                                                  
	Clock Settings:
	   - XTAL                   =  12 MHz
	   - PLL                    =  400 MHz
	   - processor clock = CCLK =  100 MHz
	   - USB clock              =  48 MHz
	   - CCLK / 4 clock         =  25 MHz

	It demonstrates an USB HID (Human Interface Device):
	  -  GPIO (GPIO controlled by P1.28, P1.29, P1.31, P2.2-5, P3.26)
          -  P1.28 on J2 pin 19
          -  P1.29 on J2 pin 20
          -  P1.31 on J7 pin 4
          -  P2.2 on J2 pin 21
          -  P2.3 on J2 pin 22
          -  P2.4 on J2 pin 23
          -  P2.5 on J2 pin 24
          -  P3.26 on USER LED2
	  -  Push Button (INT0) USER Push Button
		
	The USB HID is recognized by the host PC running Windows
	which will load a generic HID driver. The board LEDs
	and Push Buttons can then be accessed from the PC
	through a custom HID Client Program.

@Directory contents:
\app: HID Client application, use to test HID class in this example.
\EWARM: includes EWARM (IAR) project and configuration files
\Keil:	includes RVMDK (Keil)project and configuration files 
	
hid.h: USB HID (Human Interface Device) Definitions
hiduser.h/.c: HID Custom User module
lpc17xx_libcfg.h: Library configuration file - include needed driver library for
this example usb.h:  USB Definitions
usbcfg.h: USB Custom Configuration
usbcore.h/.c: USB Core Module
usbdesc.h/.c: USB Descriptors
usbhw.h/.c: SB Hardware Layer Module
usbreg.h: USB Hardware Layer Definitions for NXP Semiconductors LPC 
usbuser.h/.c: USB Custom User Module	
makefile: Example's makefile (to build with GNU toolchain)
demo.h/.c: Main program

@How to run:
Hardware configuration:		
	These jumpers must be configured as following:
			- JP2 pin 3 and 5 (DEVICE)
			- JP2 pin 4 and 6 (DEVICE)
                        
Running mode:
RAM mode:   This example can be run on RAM mode with debugger. 
 	    All files must be build to .elf file, this file will be loaded into 
            RAM through a debugger tool before running 

ROM(FLASH)mode: This example can be run on ROM mode with debugger or standalone
                after burning. 
		All files in each example must be built to .hex file. This file 
                will be burned into 

(Please reference "LPC1000 Software Development Toolchain" - chapter 4 "Creating
and working with LPC1000CMSIS project" for more information)
	
Step to run:
	- Step 1: Build example.
	- Step 2: Burn hex file into board (if run on ROM mode)
	- Step 3: Configure hardware as above instruction 
	- Step 4: Hit reset button to run example.
	- Step 5: After see USER LED1(USB Good Link)on board turn on, run 
                  HIDClient application by clicking HIDClient.ext at USBHID\app 
                  folder
	- Step 6: Chose "LPC17xx HID" device.
	- Step 7: Click in box-0 in Outputs (LEDs) to turn on/off USER LED2 on 
                  the Lincoln 60
	- Step 8: Hit USER button and see if Inputs(BUTTON) box-0 turn on or not
		
(Pls see "LPC17xx Example Description" document - chapter "Examples > USBDEV > 
USBHID" for more details)
		
@Tip:
	- Open \EWARM\*.eww project file to run example on IAR
	- Open \RVMDK\*.uvproj project file to run example on Keil