📄 readme.txt
字号:
/*****************************************************************************
* readme.txt: Description of the LPC3180 Sample Software
*
* Copyright(C) 2006, Philips Semiconductor
* All rights reserved.
*
* History
* 2006.07.01 ver 1.00 Preliminary version, first Release
*
******************************************************************************/
/*****************************************************************************/
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. Philips 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. Philips Semiconductors reserves the right to make changes in the
software without notification. Philips Semiconductors also make no representation
or warranty that such application will be suitable for the specified use without
further testing or modification.
/*****************************************************************************/
The Description of the sample software
===================
The sample software have been tested on both Keil uVision MDK and ARM RealView(RVDS)
software development platform. The target board is Nohau's LPC318x board.
The sample software includes, common library, peripheral APIs, and test modules
for the APIs. The common library include startup file, standard definition and
header files, processor specific setup module, generic interrupt handler and
related APIs, timer routine, and scatter loading file.
The peripheral directory include so far is USB. However, it has used all the
common library modules APIs to test the USB device. The USB example software
include OTG and I2C configuration, System PLL clock configuration, power
management, how to use generic interrupt APIs, high-speed timer, etc.
The example software has passed the USB compliance test(software only) internally.
Keil USB device HID example is the core for the USB device portion of the software
as the same IP has been used for both LPC2xxx and LPC3xxx family MCUs. There
are several differences in the USB module between LPC3xxx and LPC2xxx:
On LPC3xxx, USB modules include USB host, USB device, and OTG. However, external
USB tranceiver is needed for both device and host. On LPC2xxx, USB module include
USB device only. However, the tranceiver is built-in.
Keil provides a Windows GUI utility HIDClient. This utility can be
used to test LPC318x USB device:
(1) To test USB DATA_OUT, open Keil's HIDClient, check or uncheck LED 0 and 1,
GPO9 and GPO10 will be on and off accordingly.
(2) To test USB DATA_IN, On the LPC3180, press push button S4, GPI7, the GUI
light should be checked or unchecked accordingly.
The power management feature has also been tested, but, not enabled by default,
this is because, if the USB device is accidentally put into the SUSPEND mode, the
CPU will be in STOP mode without warning, as the result, the HIDClient example may not
work.
In order to test the power management feature, open usbtest.c, change below line as
"#define STOP_MODE_USB_WAKEUP" from 0 to 1 to enable USB suspend and resume related
functionality, then, recompile the project.
Once above flag is enabled, when USB SUSPEND occurs, the software will put CPU in STOP
mode, when USB RESUME occurs, of the CPU is in stop mode, the software will resume CPU
back to RUN mode.
The directory tree and content of the sample software
===================
common
-- inc
-- lpc318x.h Definition file of all the registers of LPC213x/4x
-- irq.h Interrupt related definitions and API prototyping
-- type.h Type definition
-- target.h Target specific definition for Nohau's LPC3180 board
-- timer.h Definition and header file for timer module
-- mem_b.scf Scatter loader for code running in SRAM
-- src
-- startup.s Code start up entry
-- heap.s Heap entry definition
-- stack.s Stack entry definition
-- swi_handler.s SWI handler
-- irq.c Generic interrupt handler related APIs
-- target.c Target specific modules
-- timer.c Timer related APIs
USB
-- usb318xcfg.h USB device clock and OTG configuration header
-- usb318xcfg.c USB device and OTG configuration APIs
-- usbtest.c Main entry, USB test module
-- usbhw.h USB device configuration header
-- usbhw.c USB device configuration APIs
-- usbreg.h USB device register bits definition
-- usbuser.h USB device endpoints related and misc. definition
-- usbuser.c USB device customerization APIs
-- hid.h USB HID example related definition and prototyping
-- hiduser.c USB HID related APIs
-- usbdesc.h USB descriptor related definition
-- usbdesc.c USB descriptor related APIs
-- usbcfg.h USB device related configuration such as EPs,
classes, DMA, etc.
-- usb.h USB device related definition
-- hiduser.h USB HID customerization and definition
-- usbcore.c USB device core APIs
-- usbcore.h USB device core definition
-- usb.prj RVDS project file
-- fromelf.exe RVDS ELF conversion program to convert from AXF to BIN, HEX, etc.
-- usb.uV2 Keil uVision Project file
-- usb.opt Keil uVision Project supporting file
-- ram.ini Keil uVision script file to reset PC
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -