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

📄 lpc214x.h

📁 周立功 214x pack 配套光盘
💻 H
📖 第 1 页 / 共 2 页
字号:
/****************************************Copyright (c)**************************************************
**                               广州周立功单片机发展有限公司
**                                     研    究    所
**                                        产品一部 
**
**                                 http://www.zlgmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: LPC214x.h
**创   建   人: 陈锡炳
**最后修改日期: 2005-09-19
**描        述: 定义lpc23x/LPC214x的特殊寄存器及固件程序
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 陈锡炳
** 版  本: v1.0
** 日 期: 2005-09-19
** 描 述: 原始版本
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人: 
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

/* External Interrupts */
/* 外部中断控制寄存器 */
#define EXTINT          (*((volatile unsigned char *) 0xE01FC140))
#define INTWAKE         (*((volatile unsigned long *) 0xE01FC144))
#define EXTMODE         (*((volatile unsigned char *) 0xE01FC148))
#define EXTPOLAR        (*((volatile unsigned char *) 0xE01FC14C))

/* Memory mapping control */
/* 内存remap控制寄存器 */
#define MEMMAP          (*((volatile unsigned long *) 0xE01FC040))

/* Phase Locked Loop (PLL) */
/* PLL控制寄存器 */
#define PLLCON          (*((volatile unsigned char *) 0xE01FC080))
#define PLLCFG          (*((volatile unsigned char *) 0xE01FC084))
#define PLLSTAT         (*((volatile unsigned short*) 0xE01FC088))
#define PLLFEED         (*((volatile unsigned char *) 0xE01FC08C))

/* PLL0 (PLL) */
#define PLL0CON          (*((volatile unsigned char *) 0xE01FC080))
#define PLL0CFG          (*((volatile unsigned char *) 0xE01FC084))
#define PLL0STAT         (*((volatile unsigned short*) 0xE01FC088))
#define PLL0FEED         (*((volatile unsigned char *) 0xE01FC08C))

/* USB PLL1 Register */
#define PLL1CON        	(*((volatile unsigned char *) 0xE01FC0A0))
#define PLL1CFG         (*((volatile unsigned char *) 0xE01FC0A4))
#define PLL1STAT        (*((volatile unsigned short*) 0xE01FC0A8))
#define PLL1FEED        (*((volatile unsigned char *) 0xE01FC0AC))

/* Power Control */
/* 功率控制寄存器 */
#define PCON            (*((volatile unsigned char *) 0xE01FC0C0))
#define PCONP           (*((volatile unsigned long *) 0xE01FC0C4))

/* VPB Divider */
/* VLSI外设总线(VPB)分频寄存器 */
#define VPBDIV          (*((volatile unsigned char *) 0xE01FC100))

/* Reset Source Identification Register */ 
/* 复位源识别寄存器 */
#define RSIR            (*((volatile unsigned char *) 0xE01FC180))

/* Code Security Protection Register */
/* 代码安全寄存器 */
#define CSPR            (*((volatile unsigned char *) 0xE01FC184))

/* 其它系统控制寄存器 */
#define SCS 		    (*((volatile unsigned long *) 0xE01FC1A0))

/* Memory Accelerator Module (MAM) */
/* 存储器加速模块 */
#define MAMCR           (*((volatile unsigned char *) 0xE01FC000))
#define MAMTIM          (*((volatile unsigned char *) 0xE01FC004))

/* Vectored Interrupt Controller (VIC) */
/* 向量中断控制器(VIC)的特殊寄存器 */
#define VICIRQStatus    (*((volatile unsigned long *) 0xFFFFF000))
#define VICFIQStatus    (*((volatile unsigned long *) 0xFFFFF004))
#define VICRawIntr      (*((volatile unsigned long *) 0xFFFFF008))
#define VICIntSelect    (*((volatile unsigned long *) 0xFFFFF00C))
#define VICIntEnable    (*((volatile unsigned long *) 0xFFFFF010))
#define VICIntEnClr     (*((volatile unsigned long *) 0xFFFFF014))
#define VICSoftInt      (*((volatile unsigned long *) 0xFFFFF018))
#define VICSoftIntClear (*((volatile unsigned long *) 0xFFFFF01C))
#define VICProtection   (*((volatile unsigned long *) 0xFFFFF020))
#define VICVectAddr     (*((volatile unsigned long *) 0xFFFFF030))
#define VICDefVectAddr  (*((volatile unsigned long *) 0xFFFFF034))
#define VICVectAddr0    (*((volatile unsigned long *) 0xFFFFF100))
#define VICVectAddr1    (*((volatile unsigned long *) 0xFFFFF104))
#define VICVectAddr2    (*((volatile unsigned long *) 0xFFFFF108))
#define VICVectAddr3    (*((volatile unsigned long *) 0xFFFFF10C))
#define VICVectAddr4    (*((volatile unsigned long *) 0xFFFFF110))
#define VICVectAddr5    (*((volatile unsigned long *) 0xFFFFF114))
#define VICVectAddr6    (*((volatile unsigned long *) 0xFFFFF118))
#define VICVectAddr7    (*((volatile unsigned long *) 0xFFFFF11C))
#define VICVectAddr8    (*((volatile unsigned long *) 0xFFFFF120))
#define VICVectAddr9    (*((volatile unsigned long *) 0xFFFFF124))
#define VICVectAddr10   (*((volatile unsigned long *) 0xFFFFF128))
#define VICVectAddr11   (*((volatile unsigned long *) 0xFFFFF12C))
#define VICVectAddr12   (*((volatile unsigned long *) 0xFFFFF130))
#define VICVectAddr13   (*((volatile unsigned long *) 0xFFFFF134))
#define VICVectAddr14   (*((volatile unsigned long *) 0xFFFFF138))
#define VICVectAddr15   (*((volatile unsigned long *) 0xFFFFF13C))
#define VICVectCntl0    (*((volatile unsigned long *) 0xFFFFF200))
#define VICVectCntl1    (*((volatile unsigned long *) 0xFFFFF204))
#define VICVectCntl2    (*((volatile unsigned long *) 0xFFFFF208))
#define VICVectCntl3    (*((volatile unsigned long *) 0xFFFFF20C))
#define VICVectCntl4    (*((volatile unsigned long *) 0xFFFFF210))
#define VICVectCntl5    (*((volatile unsigned long *) 0xFFFFF214))
#define VICVectCntl6    (*((volatile unsigned long *) 0xFFFFF218))
#define VICVectCntl7    (*((volatile unsigned long *) 0xFFFFF21C))
#define VICVectCntl8    (*((volatile unsigned long *) 0xFFFFF220))
#define VICVectCntl9    (*((volatile unsigned long *) 0xFFFFF224))
#define VICVectCntl10   (*((volatile unsigned long *) 0xFFFFF228))
#define VICVectCntl11   (*((volatile unsigned long *) 0xFFFFF22C))
#define VICVectCntl12   (*((volatile unsigned long *) 0xFFFFF230))
#define VICVectCntl13   (*((volatile unsigned long *) 0xFFFFF234))
#define VICVectCntl14   (*((volatile unsigned long *) 0xFFFFF238))
#define VICVectCntl15   (*((volatile unsigned long *) 0xFFFFF23C))

/* Pin Connect Block */
/* 管脚连接模块控制寄存器 */
#define PINSEL0         (*((volatile unsigned long *) 0xE002C000))
#define PINSEL1         (*((volatile unsigned long *) 0xE002C004))
#define PINSEL2         (*((volatile unsigned long *) 0xE002C014))

/* General Purpose Input/Output (GPIO) */
/* 通用并行IO口的特殊寄存器 */
#define IO0PIN          (*((volatile unsigned long *) 0xE0028000))
#define IO0SET          (*((volatile unsigned long *) 0xE0028004))
#define IO0DIR          (*((volatile unsigned long *) 0xE0028008))
#define IO0CLR          (*((volatile unsigned long *) 0xE002800C))

#define IO1PIN          (*((volatile unsigned long *) 0xE0028010))
#define IO1SET          (*((volatile unsigned long *) 0xE0028014))
#define IO1DIR          (*((volatile unsigned long *) 0xE0028018))
#define IO1CLR          (*((volatile unsigned long *) 0xE002801C))

/* FAST GPIO Registers */
/* 字寻址的寄存器 */
#define FIO0DIR			(*((volatile unsigned long *) 0x3FFFC000))
#define FIO0MASK		(*((volatile unsigned long *) 0x3FFFC010))
#define FIO0PIN			(*((volatile unsigned long *) 0x3FFFC014))
#define FIO0SET			(*((volatile unsigned long *) 0x3FFFC018))
#define FIO0CLR			(*((volatile unsigned long *) 0x3FFFC01C))

#define FIO1DIR			(*((volatile unsigned long *) 0x3FFFC020))
#define FIO1MASK		(*((volatile unsigned long *) 0x3FFFC030))
#define FIO1PIN			(*((volatile unsigned long *) 0x3FFFC034))
#define FIO1SET			(*((volatile unsigned long *) 0x3FFFC038))
#define FIO1CLR			(*((volatile unsigned long *) 0x3FFFC03C))

/* 半字寻址寄存器 */
#define FIO0DIRL		(*((volatile unsigned short*) 0x3FFFC000))
#define FIO0DIRU		(*((volatile unsigned short*) 0x3FFFC002))
#define FIO0MASKL		(*((volatile unsigned short*) 0x3FFFC010))
#define FIO0MASKU		(*((volatile unsigned short*) 0x3FFFC012))
#define FIO0PINL		(*((volatile unsigned short*) 0x3FFFC014))
#define FIO0PINU		(*((volatile unsigned short*) 0x3FFFC016))
#define FIO0SETL		(*((volatile unsigned short*) 0x3FFFC018))
#define FIO0SETU		(*((volatile unsigned short*) 0x3FFFC01A))
#define FIO0CLRL		(*((volatile unsigned short*) 0x3FFFC01C))
#define FIO0CLRU		(*((volatile unsigned short*) 0x3FFFC01E))

#define FIO1DIRL		(*((volatile unsigned short*) 0x3FFFC020))
#define FIO1DIRU		(*((volatile unsigned short*) 0x3FFFC022))
#define FIO1MASKL		(*((volatile unsigned short*) 0x3FFFC030))
#define FIO1MASKU		(*((volatile unsigned short*) 0x3FFFC032))
#define FIO1PINL		(*((volatile unsigned short*) 0x3FFFC034))
#define FIO1PINU		(*((volatile unsigned short*) 0x3FFFC036))
#define FIO1SETL		(*((volatile unsigned short*) 0x3FFFC038))
#define FIO1SETU		(*((volatile unsigned short*) 0x3FFFC03A))
#define FIO1CLRL		(*((volatile unsigned short*) 0x3FFFC03C))
#define FIO1CLRU		(*((volatile unsigned short*) 0x3FFFC03E))

/* 字节寻址的寄存器 */
#define FIO0DIR0		(*((volatile unsigned char *) 0x3FFFC000))
#define FIO0DIR1		(*((volatile unsigned char *) 0x3FFFC001))
#define FIO0DIR2		(*((volatile unsigned char *) 0x3FFFC002))
#define FIO0DIR3		(*((volatile unsigned char *) 0x3FFFC003))
#define FIO0MASK0		(*((volatile unsigned char *) 0x3FFFC010))
#define FIO0MASK1		(*((volatile unsigned char *) 0x3FFFC011))
#define FIO0MASK2		(*((volatile unsigned char *) 0x3FFFC012))
#define FIO0MASK3		(*((volatile unsigned char *) 0x3FFFC013))
#define FIO0PIN0		(*((volatile unsigned char *) 0x3FFFC014))
#define FIO0PIN1		(*((volatile unsigned char *) 0x3FFFC015))
#define FIO0PIN2		(*((volatile unsigned char *) 0x3FFFC016))
#define FIO0PIN3		(*((volatile unsigned char *) 0x3FFFC017))
#define FIO0SET0		(*((volatile unsigned char *) 0x3FFFC018))
#define FIO0SET1		(*((volatile unsigned char *) 0x3FFFC019))
#define FIO0SET2		(*((volatile unsigned char *) 0x3FFFC01A))
#define FIO0SET3		(*((volatile unsigned char *) 0x3FFFC01B))
#define FIO0CLR0		(*((volatile unsigned char *) 0x3FFFC01C))
#define FIO0CLR1		(*((volatile unsigned char *) 0x3FFFC01D))
#define FIO0CLR2		(*((volatile unsigned char *) 0x3FFFC01E))
#define FIO0CLR3		(*((volatile unsigned char *) 0x3FFFC01F))

#define FIO1DIR0		(*((volatile unsigned char *) 0x3FFFC020))
#define FIO1DIR1		(*((volatile unsigned char *) 0x3FFFC021))
#define FIO1DIR2		(*((volatile unsigned char *) 0x3FFFC022))
#define FIO1DIR3		(*((volatile unsigned char *) 0x3FFFC023))
#define FIO1MASK0		(*((volatile unsigned char *) 0x3FFFC030))
#define FIO1MASK1		(*((volatile unsigned char *) 0x3FFFC031))
#define FIO1MASK2		(*((volatile unsigned char *) 0x3FFFC032))
#define FIO1MASK3		(*((volatile unsigned char *) 0x3FFFC033))
#define FIO1PIN0		(*((volatile unsigned char *) 0x3FFFC034))
#define FIO1PIN1		(*((volatile unsigned char *) 0x3FFFC035))
#define FIO1PIN2		(*((volatile unsigned char *) 0x3FFFC036))
#define FIO1PIN3		(*((volatile unsigned char *) 0x3FFFC037))
#define FIO1SET0		(*((volatile unsigned char *) 0x3FFFC038))
#define FIO1SET1		(*((volatile unsigned char *) 0x3FFFC039))
#define FIO1SET2		(*((volatile unsigned char *) 0x3FFFC03A))
#define FIO1SET3		(*((volatile unsigned char *) 0x3FFFC03B))
#define FIO1CLR0		(*((volatile unsigned char *) 0x3FFFC03C))
#define FIO1CLR1		(*((volatile unsigned char *) 0x3FFFC03D))
#define FIO1CLR2		(*((volatile unsigned char *) 0x3FFFC03E))
#define FIO1CLR3		(*((volatile unsigned char *) 0x3FFFC03F))

/* Universal Asynchronous Receiver Transmitter 0 (UART0) */
/* 通用异步串行口0(UART0)的特殊寄存器 */
#define U0RBR           (*((volatile unsigned char *) 0xE000C000))
#define U0THR           (*((volatile unsigned char *) 0xE000C000))
#define U0IER           (*((volatile unsigned char *) 0xE000C004))
#define U0IIR           (*((volatile unsigned char *) 0xE000C008))
#define U0FCR           (*((volatile unsigned char *) 0xE000C008))
#define U0LCR           (*((volatile unsigned char *) 0xE000C00C))
#define U0LSR           (*((volatile unsigned char *) 0xE000C014))
#define U0SCR           (*((volatile unsigned char *) 0xE000C01C))
#define U0ACR           (*((volatile unsigned long *) 0xE000C020))
#define U0FDR           (*((volatile unsigned long *) 0xE000C028))
#define U0TER           (*((volatile unsigned char *) 0xE000C030))
#define U0DLL           (*((volatile unsigned char *) 0xE000C000))
#define U0DLM           (*((volatile unsigned char *) 0xE000C004))

/* Universal Asynchronous Receiver Transmitter 1 (UART1) */
/* 通用异步串行口1(UART1)的特殊寄存器 */
#define U1RBR           (*((volatile unsigned char *) 0xE0010000))
#define U1THR           (*((volatile unsigned char *) 0xE0010000))
#define U1IER           (*((volatile unsigned char *) 0xE0010004))
#define U1IIR           (*((volatile unsigned char *) 0xE0010008))
#define U1FCR           (*((volatile unsigned char *) 0xE0010008))
#define U1LCR           (*((volatile unsigned char *) 0xE001000C))
#define U1MCR           (*((volatile unsigned char *) 0xE0010010))	/* LPC2144/6/8 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -