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

📄 lpc2294.h

📁 用lpc2294实现can节点的设计,文中提供节点的初始化和收发程序
💻 H
📖 第 1 页 / 共 2 页
字号:
/****************************************************************************
* FILENAME:      LPC2294.H                                                  *
*                                                                           *
* VERSION:       V1.0                                                       *
*                                                                           *
* DESCRIPTION:   Header File define lpc22xx\lpc212x\lpc211x\lpc210x SFR     *  
*                                                                          	*
* TOOLS:         KEIL uVision3                                          	*
*                ARM Development Suite ADS1.2                               *
*                                                                           *
*                                                                           *
* REVISION HISTORY:                                                         *
* Version  Author          Date          Remarks                            *
* 1.0      Anthony Xie     10/10/2005    - -                                *
*****************************************************************************/

#ifndef __LPC2294_H
#define __LPC2294_H


/* EXTERNAL MEMORY CONTROLLER (EMC) */

#define BCFG0           (*((volatile unsigned long *) 0xFFE00000))    /* lpc22xx only */
#define BCFG1           (*((volatile unsigned long *) 0xFFE00004))    /* lpc22xx only */
#define BCFG2           (*((volatile unsigned long *) 0xFFE00008))    /* lpc22xx only */
#define BCFG3           (*((volatile unsigned long *) 0xFFE0000C))    /* lpc22xx only */

/* External Interrupts */

#define EXTINT          (*((volatile unsigned char *) 0xE01FC140))
#define EXTWAKE         (*((volatile unsigned char *) 0xE01FC144))
#define EXTMODE         (*((volatile unsigned char *) 0xE01FC148))    /* no in lpc210x*/
#define EXTPOLAR        (*((volatile unsigned char *) 0xE01FC14C))    /* no in lpc210x*/

/* SMemory mapping control. */

#define MEMMAP          (*((volatile unsigned long *) 0xE01FC040))

/* Phase Locked Loop (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))

/* Power Control */

#define PCON            (*((volatile unsigned char *) 0xE01FC0C0))
#define PCONP           (*((volatile unsigned long *) 0xE01FC0C4))

/* VPB Divider */

#define VPBDIV          (*((volatile unsigned char *) 0xE01FC100))

/* Memory Accelerator Module (MAM) */

#define MAMCR           (*((volatile unsigned char *) 0xE01FC000))
#define MAMTIM          (*((volatile unsigned char *) 0xE01FC004))

/* Vectored Interrupt Controller (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))      /* no in lpc210x*/

/* General Purpose Input/Output (GPIO) */

#define IOPIN           (*((volatile unsigned long *) 0xE0028000))      /* lpc210x only */
#define IOSET           (*((volatile unsigned long *) 0xE0028004))      /* lpc210x only */
#define IODIR           (*((volatile unsigned long *) 0xE0028008))      /* lpc210x only */
#define IOCLR           (*((volatile unsigned long *) 0xE002800C))      /* lpc210x only */

#define IO0PIN          (*((volatile unsigned long *) 0xE0028000))      /* no in lpc210x*/
#define IO0SET          (*((volatile unsigned long *) 0xE0028004))      /* no in lpc210x*/
#define IO0DIR          (*((volatile unsigned long *) 0xE0028008))      /* no in lpc210x*/
#define IO0CLR          (*((volatile unsigned long *) 0xE002800C))      /* no in lpc210x*/

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

#define IO2PIN          (*((volatile unsigned long *) 0xE0028020))      /* lpc22xx only */
#define IO2SET          (*((volatile unsigned long *) 0xE0028024))      /* lpc22xx only */
#define IO2DIR          (*((volatile unsigned long *) 0xE0028028))      /* lpc22xx only */
#define IO2CLR          (*((volatile unsigned long *) 0xE002802C))      /* lpc22xx only */

#define IO3PIN          (*((volatile unsigned long *) 0xE0028030))      /* lpc22xx only */
#define IO3SET          (*((volatile unsigned long *) 0xE0028034))      /* lpc22xx only */
#define IO3DIR          (*((volatile unsigned long *) 0xE0028038))      /* lpc22xx only */
#define IO3CLR          (*((volatile unsigned long *) 0xE002803C))      /* lpc22xx only */

/* Universal Asynchronous Receiver Transmitter 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 U0DLL           (*((volatile unsigned char *) 0xE000C000))
#define U0DLM           (*((volatile unsigned char *) 0xE000C004))

/* Universal Asynchronous Receiver Transmitter 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))
#define U1LSR           (*((volatile unsigned char *) 0xE0010014))
#define U1MSR           (*((volatile unsigned char *) 0xE0010018))
#define U1SCR           (*((volatile unsigned char *) 0xE001001C))
#define U1DLL           (*((volatile unsigned char *) 0xE0010000))
#define U1DLM           (*((volatile unsigned char *) 0xE0010004))

/* I2C (8/16 bit data bus) */

#define I2CONSET        (*((volatile unsigned long *) 0xE001C000))
#define I2STAT          (*((volatile unsigned long *) 0xE001C004))
#define I2DAT           (*((volatile unsigned long *) 0xE001C008))
#define I2ADR           (*((volatile unsigned long *) 0xE001C00C))
#define I2SCLH          (*((volatile unsigned long *) 0xE001C010))
#define I2SCLL          (*((volatile unsigned long *) 0xE001C014))
#define I2CONCLR        (*((volatile unsigned long *) 0xE001C018))

/* SPI (Serial Peripheral Interface) */

        /* only for lpc210x*/
#define SPI_SPCR        (*((volatile unsigned char *) 0xE0020000))
#define SPI_SPSR        (*((volatile unsigned char *) 0xE0020004))
#define SPI_SPDR        (*((volatile unsigned char *) 0xE0020008))
#define SPI_SPCCR       (*((volatile unsigned char *) 0xE002000C))
#define SPI_SPINT       (*((volatile unsigned char *) 0xE002001C))

#define S0PCR           (*((volatile unsigned char *) 0xE0020000))      /* no in lpc210x*/
#define S0PSR           (*((volatile unsigned char *) 0xE0020004))      /* no in lpc210x*/
#define S0PDR           (*((volatile unsigned char *) 0xE0020008))      /* no in lpc210x*/
#define S0PCCR          (*((volatile unsigned char *) 0xE002000C))      /* no in lpc210x*/
#define S0PINT          (*((volatile unsigned char *) 0xE002001C))      /* no in lpc210x*/

#define S1PCR           (*((volatile unsigned char *) 0xE0030000))      /* no in lpc210x*/
#define S1PSR           (*((volatile unsigned char *) 0xE0030004))      /* no in lpc210x*/
#define S1PDR           (*((volatile unsigned char *) 0xE0030008))      /* no in lpc210x*/
#define S1PCCR          (*((volatile unsigned char *) 0xE003000C))      /* no in lpc210x*/
#define S1PINT          (*((volatile unsigned char *) 0xE003001C))      /* no in lpc210x*/

/* CAN CONTROLLERS AND ACCEPTANCE FILTER */

#define CAN1MOD         (*((volatile unsigned long *) 0xE0044000))      /* All CAN Parts */
#define CAN1CMR         (*((volatile unsigned long *) 0xE0044004))      /* All CAN Parts */
#define CAN1GSR         (*((volatile unsigned long *) 0xE0044008))      /* All CAN Parts */
#define CAN1ICR         (*((volatile unsigned long *) 0xE004400C))      /* All CAN Parts */
#define CAN1IER         (*((volatile unsigned long *) 0xE0044010))      /* All CAN Parts */
#define CAN1BTR         (*((volatile unsigned long *) 0xE0044014))      /* All CAN Parts */
#define CAN1EWL         (*((volatile unsigned long *) 0xE0044018))      /* All CAN Parts */
#define CAN1SR          (*((volatile unsigned long *) 0xE004401C))      /* All CAN Parts */
#define CAN1RFS         (*((volatile unsigned long *) 0xE0044020))      /* All CAN Parts */
#define CAN1RID         (*((volatile unsigned long *) 0xE0044024))      /* All CAN Parts */

⌨️ 快捷键说明

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