/* based on LPC213x.h from Keil GmbH (keil.com/arm.com) */ #ifndef LPC2000_regs_h #define LPC2000_regs_h /* 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) */ #define IOPIN0 (*((volatile unsigned long *) 0xE0028000)) #define IOSET0 (*((volatile unsigned long *) 0xE0028004)) #define IODIR0 (*((volatile unsigned long *) 0xE0028008)) #define IOCLR0 (*((volatile unsigned long *) 0xE002800C)) #define IOPIN1 (*((volatile unsigned long *) 0xE0028010)) #define IOSET1 (*((volatile unsigned long *) 0xE0028014)) #define IODIR1 (*((volatile unsigned long *) 0xE0028018)) #define IOCLR1 (*((volatile unsigned long *) 0xE002801C)) /* SPI0 (Serial Peripheral Interface 0) */ #define S0SPCR (*((volatile unsigned char *) 0xE0020000)) #define S0SPSR (*((volatile unsigned char *) 0xE0020004)) #define S0SPDR (*((volatile unsigned char *) 0xE0020008)) #define S0SPCCR (*((volatile unsigned char *) 0xE002000C)) #define S0SPTCR (*((volatile unsigned char *) 0xE0020010)) #define S0SPTSR (*((volatile unsigned char *) 0xE0020014)) #define S0SPTOR (*((volatile unsigned char *) 0xE0020018)) #define S0SPINT (*((volatile unsigned char *) 0xE002001C)) /* SSP Controller */ #define SSPCR0 (*((volatile unsigned short* ) 0xE0068000)) #define SSPCR1 (*((volatile unsigned char * ) 0xE0068004)) #define SSPDR (*((volatile unsigned short* ) 0xE0068008)) #define SSPSR (*((volatile unsigned char * ) 0xE006800C)) #define SSPCPSR (*((volatile unsigned char * ) 0xE0068010)) #define SSPIMSC (*((volatile unsigned char * ) 0xE0068014)) #define SSPRIS (*((volatile unsigned char * ) 0xE0068018)) #define SSPMIS (*((volatile unsigned char * ) 0xE006801C)) #define SSPICR (*((volatile unsigned char * ) 0xE0068020)) #define SSPDMACR (*((volatile unsigned char * ) 0xE0068024)) /* Real Time Clock */ /* maybe useful for the efsl time-handling : */ #define ILR (*((volatile unsigned char *) 0xE0024000)) #define CTC (*((volatile unsigned short*) 0xE0024004)) #define CCR (*((volatile unsigned char *) 0xE0024008)) #define CIIR (*((volatile unsigned char *) 0xE002400C)) #define AMR (*((volatile unsigned char *) 0xE0024010)) #define CTIME0 (*((volatile unsigned long *) 0xE0024014)) #define CTIME1 (*((volatile unsigned long *) 0xE0024018)) #define CTIME2 (*((volatile unsigned long *) 0xE002401C)) #define SEC (*((volatile unsigned char *) 0xE0024020)) #define MIN (*((volatile unsigned char *) 0xE0024024)) #define HOUR (*((volatile unsigned char *) 0xE0024028)) #define DOM (*((volatile unsigned char *) 0xE002402C)) #define DOW (*((volatile unsigned char *) 0xE0024030)) #define DOY (*((volatile unsigned short*) 0xE0024034)) #define MONTH (*((volatile unsigned char *) 0xE0024038)) #define YEAR (*((volatile unsigned short*) 0xE002403C)) #define ALSEC (*((volatile unsigned char *) 0xE0024060)) #define ALMIN (*((volatile unsigned char *) 0xE0024064)) #define ALHOUR (*((volatile unsigned char *) 0xE0024068)) #define ALDOM (*((volatile unsigned char *) 0xE002406C)) #define ALDOW (*((volatile unsigned char *) 0xE0024070)) #define ALDOY (*((volatile unsigned short*) 0xE0024074)) #define ALMON (*((volatile unsigned char *) 0xE0024078)) #define ALYEAR (*((volatile unsigned short*) 0xE002407C)) #define PREINT (*((volatile unsigned short*) 0xE0024080)) #define PREFRAC (*((volatile unsigned short*) 0xE0024084)) #endif