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

📄 lpc213x.h

📁 lpc213x的IAP程序
💻 H
📖 第 1 页 / 共 5 页
字号:
#define VICIntSelect_UART0 _INTSL.Bits.UART0
#define VICIntSelect_UART1 _INTSL.Bits.UART1
#define VICIntSelect_PWM0  _INTSL.Bits.PWM0
#define VICIntSelect_I2C0  _INTSL.Bits.I2C0
#define VICIntSelect_SPI0  _INTSL.Bits.SPI0
#define VICIntSelect_SSP   _INTSL.Bits.SSP
#define VICIntSelect_PLL   _INTSL.Bits.PLL
#define VICIntSelect_RTC   _INTSL.Bits.RTC
#define VICIntSelect_EINT0 _INTSL.Bits.EINT0
#define VICIntSelect_EINT1 _INTSL.Bits.EINT1
#define VICIntSelect_EINT2 _INTSL.Bits.EINT2
#define VICIntSelect_EINT3 _INTSL.Bits.EINT3
#define VICIntSelect_AD0   _INTSL.Bits.AD0
#define VICIntSelect_I2C1  _INTSL.Bits.I2C1
#define VICIntSelect_BOD   _INTSL.Bits.BOD
#define VICIntSelect_AD1   _INTSL.Bits.AD1

/*extern volatile VICSTR _INTEN @0xFFFFF010;*/
#define _INTEN   (*((volatile VICSTR *) 0xFFFFF010)) 
#define VICIntEnable _INTEN.Reg32
#define VICIntEnable_WDT   _INTEN.Bits.WDT
#define VICIntEnable_ARMC0 _INTEN.Bits.ARMC0
#define VICIntEnable_ARMC1 _INTEN.Bits.ARMC1
#define VICIntEnable_TIME0 _INTEN.Bits.TIME0
#define VICIntEnable_TIME1 _INTEN.Bits.TIME1
#define VICIntEnable_UART0 _INTEN.Bits.UART0
#define VICIntEnable_UART1 _INTEN.Bits.UART1
#define VICIntEnable_PWM0  _INTEN.Bits.PWM0
#define VICIntEnable_I2C0  _INTEN.Bits.I2C0
#define VICIntEnable_SPI0  _INTEN.Bits.SPI0
#define VICIntEnable_SSP   _INTEN.Bits.SSP
#define VICIntEnable_PLL   _INTEN.Bits.PLL
#define VICIntEnable_RTC   _INTEN.Bits.RTC
#define VICIntEnable_EINT0 _INTEN.Bits.EINT0
#define VICIntEnable_EINT1 _INTEN.Bits.EINT1
#define VICIntEnable_EINT2 _INTEN.Bits.EINT2
#define VICIntEnable_EINT3 _INTEN.Bits.EINT3
#define VICIntEnable_AD0   _INTEN.Bits.AD0
#define VICIntEnable_I2C1  _INTEN.Bits.I2C1
#define VICIntEnable_BOD   _INTEN.Bits.BOD
#define VICIntEnable_AD1   _INTEN.Bits.AD1

/*extern volatile VICSTR _INTEC  @0xFFFFF014;*/
#define _INTEC   (*((volatile VICSTR *) 0xFFFFF014)) 
#define VICIntEnClr _INTEC.Reg32
#define VICIntEnClr_WDT   _INTEC.Bits.WDT
#define VICIntEnClr_ARMC0 _INTEC.Bits.ARMC0
#define VICIntEnClr_ARMC1 _INTEC.Bits.ARMC1
#define VICIntEnClr_TIME0 _INTEC.Bits.TIME0
#define VICIntEnClr_TIME1 _INTEC.Bits.TIME1
#define VICIntEnClr_UART0 _INTEC.Bits.UART0
#define VICIntEnClr_UART1 _INTEC.Bits.UART1
#define VICIntEnClr_PWM0  _INTEC.Bits.PWM0
#define VICIntEnClr_I2C0  _INTEC.Bits.I2C0
#define VICIntEnClr_SPI0  _INTEC.Bits.SPI0
#define VICIntEnClr_SSP   _INTEC.Bits.SSP
#define VICIntEnClr_PLL   _INTEC.Bits.PLL
#define VICIntEnClr_RTC   _INTEC.Bits.RTC
#define VICIntEnClr_EINT0 _INTEC.Bits.EINT0
#define VICIntEnClr_EINT1 _INTEC.Bits.EINT1
#define VICIntEnClr_EINT2 _INTEC.Bits.EINT2
#define VICIntEnClr_EINT3 _INTEC.Bits.EINT3
#define VICIntEnClr_AD0   _INTEC.Bits.AD0
#define VICIntEnClr_I2C1  _INTEC.Bits.I2C1
#define VICIntEnClr_BOD   _INTEC.Bits.BOD
#define VICIntEnClr_AD1   _INTEC.Bits.AD1

/*extern volatile VICSTR _SOFIN   @0xFFFFF018;*/
#define _SOFIN   (*((volatile VICSTR *) 0xFFFFF018)) 
#define VICSoftInt _SOFIN.Reg32
#define VICSoftInt_WDT _SOFIN.Bits.WDT
#define VICSoftInt_ARMC0 _SOFIN.Bits.ARMC0
#define VICSoftInt_ARMC1 _SOFIN.Bits.ARMC1
#define VICSoftInt_TIME0 _SOFIN.Bits.TIME0
#define VICSoftInt_TIME1 _SOFIN.Bits.TIME1
#define VICSoftInt_UART0 _SOFIN.Bits.UART0
#define VICSoftInt_UART1 _SOFIN.Bits.UART1
#define VICSoftInt_PWM0  _SOFIN.Bits.PWM0
#define VICSoftInt_I2C0  _SOFIN.Bits.I2C0
#define VICSoftInt_SPI0  _SOFIN.Bits.SPI0
#define VICSoftInt_SSP   _SOFIN.Bits.SSP
#define VICSoftInt_PLL   _SOFIN.Bits.PLL
#define VICSoftInt_RTC   _SOFIN.Bits.RTC
#define VICSoftInt_EINT0 _SOFIN.Bits.EINT0
#define VICSoftInt_EINT1 _SOFIN.Bits.EINT1
#define VICSoftInt_EINT2 _SOFIN.Bits.EINT2
#define VICSoftInt_EINT3 _SOFIN.Bits.EINT3
#define VICSoftInt_AD0   _SOFIN.Bits.AD0
#define VICSoftInt_I2C1  _SOFIN.Bits.I2C1
#define VICSoftInt_BOD   _SOFIN.Bits.BOD
#define VICSoftInt_AD1   _SOFIN.Bits.AD1

/*extern volatile VICSTR _SOFIC @0xFFFFF01C;*/
#define _SOFIC   (*((volatile VICSTR *) 0xFFFFF01C)) 
#define VICSoftIntClear _SOFIC.Reg32
#define VICSoftIntClear_WDT   _SOFIC.Bits.WDT
#define VICSoftIntClear_ARMC0 _SOFIC.Bits.ARMC0
#define VICSoftIntClear_ARMC1 _SOFIC.Bits.ARMC1
#define VICSoftIntClear_TIME0 _SOFIC.Bits.TIME0
#define VICSoftIntClear_TIME1 _SOFIC.Bits.TIME1
#define VICSoftIntClear_UART0 _SOFIC.Bits.UART0
#define VICSoftIntClear_UART1 _SOFIC.Bits.UART1
#define VICSoftIntClear_PWM0  _SOFIC.Bits.PWM0
#define VICSoftIntClear_I2C0  _SOFIC.Bits.I2C0
#define VICSoftIntClear_SPI0  _SOFIC.Bits.SPI0
#define VICSoftIntClear_SSP   _SOFIC.Bits.SSP
#define VICSoftIntClear_PLL   _SOFIC.Bits.PLL
#define VICSoftIntClear_RTC   _SOFIC.Bits.RTC
#define VICSoftIntClear_EINT0 _SOFIC.Bits.EINT0
#define VICSoftIntClear_EINT1 _SOFIC.Bits.EINT1
#define VICSoftIntClear_EINT2 _SOFIC.Bits.EINT2
#define VICSoftIntClear_EINT3 _SOFIC.Bits.EINT3
#define VICSoftIntClear_AD0   _SOFIC.Bits.AD0
#define VICSoftIntClear_I2C1  _SOFIC.Bits.I2C1
#define VICSoftIntClear_BOD   _SOFIC.Bits.BOD
#define VICSoftIntClear_AD1   _SOFIC.Bits.AD1

typedef union {
  uint32 Reg32;
  struct {
    uint32 ACC     :1;           
   	uint32         :31;    
  } Bits;
} VICProtectionSTR;
/*extern volatile VICProtectionSTR _PROTE  @0xFFFFF020;*/
#define _PROTE   (*((volatile VICProtectionSTR *) 0xFFFFF020)) 
#define VICProtection _PROTE.Reg32
#define VICProtection_ACC _PROTE.Bits.ACC

/*extern volatile uint32    VICVectAddr       @0xFFFFF030;
extern volatile uint32    VICDefVectAddr    @0xFFFFF034;
extern volatile uint32    VICVectAddr0      @0xFFFFF100;
extern volatile uint32    VICVectAddr1      @0xFFFFF104;
extern volatile uint32    VICVectAddr2      @0xFFFFF108;
extern volatile uint32    VICVectAddr3      @0xFFFFF10C;
extern volatile uint32    VICVectAddr4      @0xFFFFF110;
extern volatile uint32    VICVectAddr5      @0xFFFFF114;
extern volatile uint32    VICVectAddr6      @0xFFFFF118;
extern volatile uint32    VICVectAddr7      @0xFFFFF11C;
extern volatile uint32    VICVectAddr8      @0xFFFFF120;
extern volatile uint32    VICVectAddr9      @0xFFFFF124;
extern volatile uint32    VICVectAddr10     @0xFFFFF128;
extern volatile uint32    VICVectAddr11     @0xFFFFF12C;
extern volatile uint32    VICVectAddr12     @0xFFFFF130;
extern volatile uint32    VICVectAddr13     @0xFFFFF134;
extern volatile uint32    VICVectAddr14     @0xFFFFF138;
extern volatile uint32    VICVectAddr15     @0xFFFFF13C;
extern volatile uint32    VICVectCntl0      @0xFFFFF200;
extern volatile uint32    VICVectCntl1      @0xFFFFF204;
extern volatile uint32    VICVectCntl2      @0xFFFFF208;
extern volatile uint32    VICVectCntl3      @0xFFFFF20C;
extern volatile uint32    VICVectCntl4      @0xFFFFF210;
extern volatile uint32    VICVectCntl5      @0xFFFFF214;
extern volatile uint32    VICVectCntl6      @0xFFFFF218;
extern volatile uint32    VICVectCntl7      @0xFFFFF21C;
extern volatile uint32    VICVectCntl8      @0xFFFFF220;
extern volatile uint32    VICVectCntl9      @0xFFFFF224;
extern volatile uint32    VICVectCntl10     @0xFFFFF228;
extern volatile uint32    VICVectCntl11     @0xFFFFF22C;
extern volatile uint32    VICVectCntl12     @0xFFFFF230;
extern volatile uint32    VICVectCntl13     @0xFFFFF234;
extern volatile uint32    VICVectCntl14     @0xFFFFF238;
extern volatile uint32    VICVectCntl15     @0xFFFFF23C;*/

#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 */
/* 管脚连接模块控制寄存器 */
typedef union {
 uint32 Reg32;
  struct {
    uint32 P00     :2;           
    uint32 P01     :2;
    uint32 P02     :2; 
    uint32 P03     :2;
    uint32 P04     :2;
    uint32 P05     :2;
    uint32 P06     :2;
    uint32 P07     :2;
    uint32 P08     :2;
    uint32 P09     :2;           
    uint32 P010    :2;
    uint32 P011    :2; 
    uint32 P012    :2;
    uint32 P013    :2;
    uint32 P014    :2;
    uint32 P015    :2;
  } Bits;
} PINSEL0STR;
/*extern volatile PINSEL0STR _PSEL0 @0xE002C000;*/
#define _PSEL0   (*((volatile PINSEL0STR *) 0xE002C000)) 
#define PINSEL0 _PSEL0.Reg32
#define PINSEL0_P00  _PSEL0.Bits.P00
#define PINSEL0_P01  _PSEL0.Bits.P01
#define PINSEL0_P02  _PSEL0.Bits.P02
#define PINSEL0_P03  _PSEL0.Bits.P03
#define PINSEL0_P04  _PSEL0.Bits.P04
#define PINSEL0_P05  _PSEL0.Bits.P05
#define PINSEL0_P06  _PSEL0.Bits.P06
#define PINSEL0_P07  _PSEL0.Bits.P07
#define PINSEL0_P08  _PSEL0.Bits.P08
#define PINSEL0_P09  _PSEL0.Bits.P09
#define PINSEL0_P010 _PSEL0.Bits.P010
#define PINSEL0_P011 _PSEL0.Bits.P011
#define PINSEL0_P012 _PSEL0.Bits.P012
#define PINSEL0_P013 _PSEL0.Bits.P013
#define PINSEL0_P014 _PSEL0.Bits.P014
#define PINSEL0_P015 _PSEL0.Bits.P015

typedef union {
  uint32 Reg32;
  struct {
    uint32 P016     :2;           
    uint32 P017     :2;
    uint32 P018     :2; 
    uint32 P019     :2;
    uint32 P020     :2;
    uint32 P021     :2;
    uint32 P022     :2;
    uint32 P023     :2;
    uint32 P024     :2;
    uint32 P025     :2;           
    uint32 P026     :2;
    uint32 P027     :2; 
    uint32 P028     :2;
    uint32 P029     :2;
    uint32 P030     :2;
    uint32 P031     :2;
  } Bits;
} PINSEL1STR;
/*extern volatile PINSEL1STR _PSEL1 @0xE002C004;*/
#define _PSEL1   (*((volatile PINSEL1STR *) 0xE002C004)) 
#define PINSEL1 _PSEL1.Reg32
#define PINSEL1_P016  _PSEL1.Bits.P016
#define PINSEL1_P017  _PSEL1.Bits.P017
#define PINSEL1_P018  _PSEL1.Bits.P018
#define PINSEL1_P019  _PSEL1.Bits.P019
#define PINSEL1_P020  _PSEL1.Bits.P020
#define PINSEL1_P021  _PSEL1.Bits.P021
#define PINSEL1_P022  _PSEL1.Bits.P022
#define PINSEL1_P023  _PSEL1.Bits.P023
#define PINSEL1_P024  _PSEL1.Bits.P024
#define PINSEL1_P025  _PSEL1.Bits.P025
#define PINSEL1_P026  _PSEL1.Bits.P026
#define PINSEL1_P027  _PSEL1.Bits.P027
#define PINSEL1_P028  _PSEL1.Bits.P028
#define PINSEL1_P029  _PSEL1.Bits.P029
#define PINSEL1_P030  _PSEL1.Bits.P030
#define PINSEL1_P031  _PSEL1.Bits.P031

typedef union {
  uint32 Reg32;
  struct {
    uint32         :2;           
    uint32 DEBUG   :1;
    uint32 TRACE   :1; 
    uint32         :28;
  } Bits;
} PINSEL2STR;
/*extern volatile PINSEL2STR _PSEL2 @0xE002C014;*/
#define _PSEL2   (*((volatile PINSEL2STR *) 0xE002C014)) 
#define PINSEL2 _PSEL2.Reg32
#define PINSEL2_DEBUG  _PSEL1.Bits.DEBUG
#define PINSEL2_TRACE  _PSEL1.Bits.TRACE


/* General Purpose Input/Output (GPIO) */
/* 通用并行IO口的特殊寄存器 */
typedef union {
 uint32 Reg32;
  struct {
    uint32 P00     :1;           
    uint32 P01     :1;
    uint32 P02     :1; 
    uint32 P03     :1;
    uint32 P04     :1;
    uint32 P05     :1;
    uint32 P06     :1;
    uint32 P07     :1;
    uint32 P08     :1;
    uint32 P09     :1;           
    uint32 P010    :1;
    uint32 P011    :1; 
    uint32 P012    :1;
    uint32 P013    :1;
    uint32 P014    :1;
    uint32 P015    :1;
    uint32 P016    :1;           
    uint32 P017    :1;
    uint32 P018    :1; 
    uint32 P019    :1;
    uint32 P020    :1;
    uint32 P021    :1;
    uint32 P022    :1;
    uint32 P023    :1;
    uint32 P024    :1;
    uint32 P025    :1;           
    uint32 P026    :1;
    uint32 P027    :1; 
    uint32 P028    :1;
    uint32 P029    :1;
    uint32 P030    :1;
    uint32 P031    :1;
  } Bits;
} PIN0STR;

/*extern volatile PIN0STR   _IO0P    @0xE0028000;*/
#define _IO0P   (*((volatile PIN0STR *) 0xE0028000)) 
#define IO0PIN _IO0P.Reg32
#define IO0PIP_P00  _IO0P.Bits.P00
#define IO0PIP_P01  _IO0P.Bits.P01
#define IO0PIP_P02  _IO0P.Bits.P02
#define IO0PIP_P03  _IO0P.Bits.P03
#define IO0PIP_P04  _IO0P.Bits.P04
#define IO0PIP_P05  _IO0P.Bits.P05
#define IO0PIP_P06  _IO0P.Bits.P06
#define IO0PIP_P07  _IO0P.Bits.P07
#define IO0PIP_P08  _IO0P.Bits.P08
#define IO0PIP_P09  _IO0P.Bits.P09
#define IO0PIP_P010 _IO0P.Bits.P010
#define IO0PIP_P011 _IO0P.Bits.P011
#define IO0PIP_P012 _IO0P.Bits.P012
#define IO0PIP_P013 _IO0P.Bits.P013
#define IO0PIP_P014 _IO0P.Bits.P014
#define IO0PIP_P015 _IO0P.Bits.P015
#define IO0PIP_P016 _IO0P.Bits.P016
#define IO0PIP_P017 _IO0P.Bits.P017
#define IO0PIP_P018 _IO0P.Bits.P018
#define IO0PIP_P019 _IO0P.Bits.P019
#define IO0PIP_P020 _IO0P.Bits.P020
#define IO0PIP_P021 _IO0P.Bits.P021
#define IO0PIP_P022 _IO0P.Bits.P022
#define IO0PIP_P023 _IO0P.Bits.P023
#define IO0PIP_P024 _IO0P.Bits.P024
#define IO0PIP_P025 _IO0P.Bits.P025
#define IO0PIP_P026 _IO0P.Bits.P026
#define IO0PIP_P027 _IO0P.Bits.P027
#define IO0PIP_P028 _IO0P.Bits.P028
#define IO0PIP_P029 _IO0P.Bits.P029
#define IO0PIP_P030 _IO0P.Bits.P030
#define IO0PIP_P031 _IO0P.Bits.P031


/*extern volatile PIN0STR  _IO0S    @0xE0028004;*/
#define _IO0S   (*((volatile PIN0STR *) 0xE0028004)) 
#define IO0SET _IO0S.Reg32
#define IO0SET_P00  _IO0S.Bits.P00
#define IO0SET_P01  _IO0S.Bits.P01
#define IO0SET_P02  _IO0S.Bits.P02
#define IO0SET_P03  _IO0S.Bits.P03
#define IO0SET_P04  _IO0S.Bits.P04
#define IO0SET_P05  _IO0S.Bits.P05
#define IO0SET_P06  _IO0S.Bits.P06
#define IO0SET_P07  _IO0S.Bits.P07
#define IO0SET_P08  _IO0S.Bits.P08
#define IO0SET_P09  _IO0S.Bits.P09
#define IO0SET_P010 _IO0S.Bits.P010
#define IO0SET_P011 _IO0S.Bits.P011
#define IO0SET_P012 _IO0S.Bits.P012
#define IO0SET_P013 _IO0S.Bits.P013
#define IO0SET_P014 _IO0S.Bits.P014
#define IO0SET_P015 _IO0S.Bits.P015
#define IO0SET_P016 _IO0S.Bits.P016
#define IO0SET_P017 _IO0S.Bits.P017

⌨️ 快捷键说明

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