⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lpc288x.h

📁 nxp的LPC2888处理器的示例代码.
💻 H
📖 第 1 页 / 共 4 页
字号:
/*******************************************************************************
 *   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 + -