📄 lpc288x.h
字号:
/*******************************************************************************
* LPC288x.h: Header file for Philips LPC288x Family Microprocessors
* The header file is the super set of all hardware definition of the
* peripherals for the LPC288x family microprocessor.
*
* Copyright(C) 2006, Philips Semiconductor
* All rights reserved.
*
* Current revision
* 2007.01.09 ver 1.2
*
* Note: There are 17 unnamed register locations in the Clock Generation
* Unit,which are designated as X1-X17. These 17 locations should
* be initialized to zero to minimize total power consumption
*
* Revision History:
* v1.0- First release(2006.08.15)
* - The main PLL and high speed PLL register locations were incorrect
* v1.1- Second release
* - EMCMisc, DMA3EXTEN, DMA5EXTEN had incorrect register locations
***********************************************************************************/
#ifndef __LPC288x_H
#define __LPC288x_H
/* System Control */
#define SYS_BOOTMAP (*((volatile unsigned int *) 0x80005070))
#define SYS_BOOTADDR (*((volatile unsigned int *) 0x80005074))
/* Cache/ Memory Map */
#define CACHE_RST_STAT (*((volatile unsigned int *) 0x80104000))
#define CACHE_SETTINGS (*((volatile unsigned int *) 0x80104004))
#define CACHE_PAGE_CTRL (*((volatile unsigned int *) 0x80104008))
#define C_RD_MISSES (*((volatile unsigned int *) 0x8010400C))
#define C_FLUSHES (*((volatile unsigned int *) 0x80104010))
#define C_WR_MISSES (*((volatile unsigned int *) 0x80104014))
#define ADDRESS_PAGE_0 (*((volatile unsigned int *) 0x80104018))
#define ADDRESS_PAGE_1 (*((volatile unsigned int *) 0x8010401C))
#define ADDRESS_PAGE_2 (*((volatile unsigned int *) 0x80104020))
#define ADDRESS_PAGE_3 (*((volatile unsigned int *) 0x80104024))
#define ADDRESS_PAGE_4 (*((volatile unsigned int *) 0x80104028))
#define ADDRESS_PAGE_5 (*((volatile unsigned int *) 0x8010402C))
#define ADDRESS_PAGE_6 (*((volatile unsigned int *) 0x80104030))
#define ADDRESS_PAGE_7 (*((volatile unsigned int *) 0x80104034))
#define ADDRESS_PAGE_8 (*((volatile unsigned int *) 0x80104038))
#define ADDRESS_PAGE_9 (*((volatile unsigned int *) 0x8010403C))
#define ADDRESS_PAGE_10 (*((volatile unsigned int *) 0x80104040))
#define ADDRESS_PAGE_11 (*((volatile unsigned int *) 0x80104044))
#define ADDRESS_PAGE_12 (*((volatile unsigned int *) 0x80104048))
#define ADDRESS_PAGE_13 (*((volatile unsigned int *) 0x8010404C))
#define ADDRESS_PAGE_14 (*((volatile unsigned int *) 0x80104050))
#define ADDRESS_PAGE_15 (*((volatile unsigned int *) 0x80104054))
#define CPU_CLK_GATE (*((volatile unsigned int *) 0x80104058))
/* Flash Memory Controller */
#define F_CTRL (*((volatile unsigned int *) 0x80102000))
#define F_STAT (*((volatile unsigned int *) 0x80102004))
#define F_PROG_TIME (*((volatile unsigned int *) 0x80102008))
#define F_WAIT (*((volatile unsigned int *) 0x80102010))
#define F_CLK_TIME (*((volatile unsigned int *) 0x8010201C))
#define F_INTEN_CLR (*((volatile unsigned int *) 0x80102FD8))
#define F_INTEN_SET (*((volatile unsigned int *) 0x80102FDC))
#define F_INT_STAT (*((volatile unsigned int *) 0x80102FE0))
#define F_INTEN (*((volatile unsigned int *) 0x80102FE4))
#define F_INT_CLR (*((volatile unsigned int *) 0x80102FE8))
#define F_INT_SET (*((volatile unsigned int *) 0x80102FEC))
#define FLASH_PD (*((volatile unsigned int *) 0x80005030))
#define FLASH_INIT (*((volatile unsigned int *) 0x80005034))
/* DC-DC Converter */
#define DCDCADJUST1 (*((volatile unsigned int *) 0x80005004))
#define DCDCADJUST2 (*((volatile unsigned int *) 0x80005008))
#define DCDCCLKSEL (*((volatile unsigned int *) 0x8000500C))
/* ------- Clock Generation Unit ------- */
/* CGU Configuration */
#define PMODE (*((volatile unsigned int *) 0x80004C00))
#define WDBARK (*((volatile unsigned int *) 0x80004C04))
#define OSC32EN (*((volatile unsigned int *) 0x80004C08))
#define OSCEN (*((volatile unsigned int *) 0x80004C10))
/* Main PLL */
#define LPFIN (*((volatile unsigned int *) 0x80004CE4))
#define LPPDN (*((volatile unsigned int *) 0x80004CE8))
#define LPBYPASS (*((volatile unsigned int *) 0x80004CEC))
#define LPLOCK (*((volatile unsigned int *) 0x80004CF0))
#define LPDIRECT (*((volatile unsigned int *) 0x80004CF4))
#define LPMSEL (*((volatile unsigned int *) 0x80004CF8))
#define LPPSEL (*((volatile unsigned int *) 0x80004CFC))
/* High Speed PLL */
#define HPFIN (*((volatile unsigned int *) 0x80004CAC))
#define HPNDEC (*((volatile unsigned int *) 0x80004CB4))
#define HPMDEC (*((volatile unsigned int *) 0x80004CB0))
#define HPPDEC (*((volatile unsigned int *) 0x80004CB8))
#define HPMODE (*((volatile unsigned int *) 0x80004CBC))
#define HPSTAT (*((volatile unsigned int *) 0x80004CC0))
#define HPREQ (*((volatile unsigned int *) 0x80004CC8))
#define HPACK (*((volatile unsigned int *) 0x80004CC4))
#define HPSELR (*((volatile unsigned int *) 0x80004CD8))
#define HPSELI (*((volatile unsigned int *) 0x80004CDC))
#define HPSELP (*((volatile unsigned int *) 0x80004CE0))
/* Selection Stage */
#define SYSSCR (*((volatile unsigned int *) 0x80004000))
#define APB0SCR (*((volatile unsigned int *) 0x80004004))
#define APB1SCR (*((volatile unsigned int *) 0x80004008))
#define APB3SCR (*((volatile unsigned int *) 0x8000400C))
#define DCDCSCR (*((volatile unsigned int *) 0x80004010))
#define RTCSCR (*((volatile unsigned int *) 0x80004014))
#define MCISCR (*((volatile unsigned int *) 0x80004018))
#define UARTSCR (*((volatile unsigned int *) 0x8000401C))
#define DAIOSCR (*((volatile unsigned int *) 0x80004020))
#define DAISCR (*((volatile unsigned int *) 0x80004024))
#define SYSFSR1 (*((volatile unsigned int *) 0x8000402C))
#define APB0FSR1 (*((volatile unsigned int *) 0x80004030))
#define APB1FSR1 (*((volatile unsigned int *) 0x80004034))
#define APB3FSR1 (*((volatile unsigned int *) 0x80004038))
#define DCDCFSR1 (*((volatile unsigned int *) 0x8000403C))
#define RTCFSR1 (*((volatile unsigned int *) 0x80004040))
#define MCIFSR1 (*((volatile unsigned int *) 0x80004044))
#define UARTFSR1 (*((volatile unsigned int *) 0x80004048))
#define DAIOFSR1 (*((volatile unsigned int *) 0x8000404C))
#define DAIFSR1 (*((volatile unsigned int *) 0x80004050))
#define SYSFSR2 (*((volatile unsigned int *) 0x80004058))
#define APB0FSR2 (*((volatile unsigned int *) 0x8000405C))
#define APB1FSR2 (*((volatile unsigned int *) 0x80004060))
#define APB3FSR2 (*((volatile unsigned int *) 0x80004064))
#define DCDCFSR2 (*((volatile unsigned int *) 0x80004068))
#define RTCFSR2 (*((volatile unsigned int *) 0x8000406C))
#define MCIFSR2 (*((volatile unsigned int *) 0x80004070))
#define UARTFSR2 (*((volatile unsigned int *) 0x80004074))
#define DAIOFSR2 (*((volatile unsigned int *) 0x80004078))
#define DAIFSR2 (*((volatile unsigned int *) 0x8000407C))
#define SYSSSR (*((volatile unsigned int *) 0x80004084))
#define APB0SSR (*((volatile unsigned int *) 0x80004088))
#define APB1SSR (*((volatile unsigned int *) 0x8000408C))
#define APB3SSR (*((volatile unsigned int *) 0x80004090))
#define DCDCSSR (*((volatile unsigned int *) 0x80004094))
#define RTCSSR (*((volatile unsigned int *) 0x80004098))
#define MCISSR (*((volatile unsigned int *) 0x8000409C))
#define UARTSSR (*((volatile unsigned int *) 0x800040A0))
#define DAIOSSR (*((volatile unsigned int *) 0x800040A4))
#define DAISSR (*((volatile unsigned int *) 0x800040A8))
#define SYSBCR (*((volatile unsigned int *) 0x800043F0))
#define APB0BCR (*((volatile unsigned int *) 0x800043F4))
#define DAIOBCR (*((volatile unsigned int *) 0x800043F8))
/* Fractional Divider */
#define SYSFDCR0 (*((volatile unsigned int *) 0x800043FC))
#define SYSFDCR1 (*((volatile unsigned int *) 0x80004400))
#define SYSFDCR2 (*((volatile unsigned int *) 0x80004404))
#define SYSFDCR3 (*((volatile unsigned int *) 0x80004408))
#define SYSFDCR4 (*((volatile unsigned int *) 0x8000440C))
#define SYSFDCR5 (*((volatile unsigned int *) 0x80004410))
#define APB0FDCR0 (*((volatile unsigned int *) 0x80004414))
#define APB0FDCR1 (*((volatile unsigned int *) 0x80004418))
#define APB1FDCR (*((volatile unsigned int *) 0x8000441C))
#define APB3FDCR (*((volatile unsigned int *) 0x80004420))
#define UARTFDCR (*((volatile unsigned int *) 0x80004424))
#define DAIOFDCR0 (*((volatile unsigned int *) 0x80004428))
#define DAIOFDCR1 (*((volatile unsigned int *) 0x8000442C))
#define DAIOFDCR2 (*((volatile unsigned int *) 0x80004430))
#define DAIOFDCR3 (*((volatile unsigned int *) 0x80004434))
#define DAIOFDCR4 (*((volatile unsigned int *) 0x80004438))
#define DAIOFDCR5 (*((volatile unsigned int *) 0x8000443C))
/* Power Control */
#define APB0PCR0 (*((volatile unsigned int *) 0x800040B0))
#define APB1PCR0 (*((volatile unsigned int *) 0x800040B4))
#define APB2PCR0 (*((volatile unsigned int *) 0x800040B8))
#define APB3PCR0 (*((volatile unsigned int *) 0x800040BC))
#define MMIOPCR0 (*((volatile unsigned int *) 0x800040C0))
#define AHB0PCR (*((volatile unsigned int *) 0x800040C4))
#define MCIPCR0 (*((volatile unsigned int *) 0x800040C8))
#define MCIPCR1 (*((volatile unsigned int *) 0x800040CC))
#define UARTPCR0 (*((volatile unsigned int *) 0x800040D0))
#define DSSPCR0 (*((volatile unsigned int *) 0x800040D4))
#define X1 (*((volatile unsigned int *) 0x800040D8))
#define FLSHPCR0 (*((volatile unsigned int *) 0x800040DC))
#define FLSHPCR1 (*((volatile unsigned int *) 0x800040E0))
#define FLSHPCR2 (*((volatile unsigned int *) 0x800040E4))
#define LCDPCR0 (*((volatile unsigned int *) 0x800040E8))
#define LCDPCR1 (*((volatile unsigned int *) 0x800040EC))
#define DMAPCR0 (*((volatile unsigned int *) 0x800040F0))
#define DMAPCR1 (*((volatile unsigned int *) 0x800040F4))
#define USBPCR0 (*((volatile unsigned int *) 0x800040F8))
#define CPUPCR0 (*((volatile unsigned int *) 0x800040FC))
#define CPUPCR1 (*((volatile unsigned int *) 0x80004100))
#define CPUPCR2 (*((volatile unsigned int *) 0x80004104))
#define RAMPCR (*((volatile unsigned int *) 0x80004108))
#define ROMPCR (*((volatile unsigned int *) 0x8000410C))
#define EMCPCR0 (*((volatile unsigned int *) 0x80004110))
#define EMCPCR1 (*((volatile unsigned int *) 0x80004114))
#define MMIOPCR1 (*((volatile unsigned int *) 0x80004118))
#define APB0PCR1 (*((volatile unsigned int *) 0x8000411C))
#define EVRTPCR (*((volatile unsigned int *) 0x80004120))
#define RTCPCR0 (*((volatile unsigned int *) 0x80004124))
#define ADCPCR0 (*((volatile unsigned int *) 0x80004128))
#define ADCPCR1 (*((volatile unsigned int *) 0x8000412C))
#define WDTPCR (*((volatile unsigned int *) 0x80004130))
#define IOCPCR (*((volatile unsigned int *) 0x80004134))
#define CGUPCR (*((volatile unsigned int *) 0x80004138))
#define SYSCPCR (*((volatile unsigned int *) 0x8000413C))
#define APB1PCR1 (*((volatile unsigned int *) 0x80004140))
#define T0PCR (*((volatile unsigned int *) 0x80004144))
#define T1PCR (*((volatile unsigned int *) 0x80004148))
#define I2CPCR (*((volatile unsigned int *) 0x8000414C))
#define APB3PCR1 (*((volatile unsigned int *) 0x80004150))
#define SCONPCR (*((volatile unsigned int *) 0x80004154))
#define DAIPCR0 (*((volatile unsigned int *) 0x80004158))
#define X2 (*((volatile unsigned int *) 0x8000415C))
#define DAOPCR0 (*((volatile unsigned int *) 0x80004160))
#define DSSPCR1 (*((volatile unsigned int *) 0x80004164))
#define SAI1PCR (*((volatile unsigned int *) 0x80004168))
#define X3 (*((volatile unsigned int *) 0x8000416C))
#define X4 (*((volatile unsigned int *) 0x80004170))
#define SAI4PCR (*((volatile unsigned int *) 0x80004174))
#define SAO1PCR (*((volatile unsigned int *) 0x80004178))
#define SAO2PCR (*((volatile unsigned int *) 0x8000417C))
#define X5 (*((volatile unsigned int *) 0x80004180))
#define DDACPCR0 (*((volatile unsigned int *) 0x80004184))
#define EDGEPCR (*((volatile unsigned int *) 0x80004188))
#define DADCPCR0 (*((volatile unsigned int *) 0x8000418C))
#define DCDCPCR (*((volatile unsigned int *) 0x80004190))
#define RTCPCR1 (*((volatile unsigned int *) 0x80004194))
#define MCIPCR2 (*((volatile unsigned int *) 0x80004198))
#define UARTPCR1 (*((volatile unsigned int *) 0x8000419C))
#define DDACPCR1 (*((volatile unsigned int *) 0x800041A0))
#define DDACPCR2 (*((volatile unsigned int *) 0x800041A4))
#define DADCPCR1 (*((volatile unsigned int *) 0x800041A8))
#define DADCPCR2 (*((volatile unsigned int *) 0x800041AC))
#define DAIPCR1 (*((volatile unsigned int *) 0x800041B0))
#define DAIPCR2 (*((volatile unsigned int *) 0x800041B4))
#define DAOPCR1 (*((volatile unsigned int *) 0x800041B8))
#define DAOPCR2 (*((volatile unsigned int *) 0x800041BC))
#define DAOPCR3 (*((volatile unsigned int *) 0x800041C0))
#define DAIPCR3 (*((volatile unsigned int *) 0x800041C4))
#define X6 (*((volatile unsigned int *) 0x800041C8))
/* Power Status */
#define APB0PSR0 (*((volatile unsigned int *) 0x800041CC))
#define APB1PSR0 (*((volatile unsigned int *) 0x800041D0))
#define APB2PSR0 (*((volatile unsigned int *) 0x800041D4))
#define APB3PSR0 (*((volatile unsigned int *) 0x800041D8))
#define MMIOPSR0 (*((volatile unsigned int *) 0x800041DC))
#define AHB0PSR (*((volatile unsigned int *) 0x800041E0))
#define MCIPSR0 (*((volatile unsigned int *) 0x800041E4))
#define MCIPSR1 (*((volatile unsigned int *) 0x800041E8))
#define UARTPSR0 (*((volatile unsigned int *) 0x800041EC))
#define DSSPSR0 (*((volatile unsigned int *) 0x800041F0))
#define X7 (*((volatile unsigned int *) 0x800041F4))
#define FLSHPSR0 (*((volatile unsigned int *) 0x800041F8))
#define FLSHPSR1 (*((volatile unsigned int *) 0x800041FC))
#define FLSHPSR2 (*((volatile unsigned int *) 0x80004200))
#define LCDPSR0 (*((volatile unsigned int *) 0x80004204))
#define LCDPSR1 (*((volatile unsigned int *) 0x80004208))
#define DMAPSR0 (*((volatile unsigned int *) 0x8000420C))
#define DMAPSR1 (*((volatile unsigned int *) 0x80004210))
#define USBPSR0 (*((volatile unsigned int *) 0x80004214))
#define CPUPSR0 (*((volatile unsigned int *) 0x80004218))
#define CPUPSR1 (*((volatile unsigned int *) 0x8000421C))
#define CPUPSR2 (*((volatile unsigned int *) 0x80004220))
#define RAMPSR (*((volatile unsigned int *) 0x80004224))
#define ROMPSR (*((volatile unsigned int *) 0x80004228))
#define EMCPSR0 (*((volatile unsigned int *) 0x8000422C))
#define EMCPSR1 (*((volatile unsigned int *) 0x80004230))
#define MMIOPSR1 (*((volatile unsigned int *) 0x80004234))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -