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

📄 lpc213x.h

📁 lpc213x的IAP程序
💻 H
📖 第 1 页 / 共 5 页
字号:
/*extern volatile I2CONSETSTR _I20CS @0xE001C000;*/
#define _I20CS          (*((volatile I2CONSETSTR *) 0xE001C000))
#define I2C0CONSET _I20CS.Reg8
#define I2C0CONSET_AA    _I20CS.Bits.AA
#define I2C0CONSET_SI    _I20CS.Bits.SI
#define I2C0CONSET_STO   _I20CS.Bits.STO
#define I2C0CONSET_STA   _I20CS.Bits.STA
#define I2C0CONSET_I2CEN _I20CS.Bits.I2CEN

typedef union {
  uint8 Reg8;
  struct {
    uint8        :2;
	uint8 AAC    :1;
    uint8 SIC    :1;
    uint8 NOP    :1;
	uint8 STAC   :1;
	uint8 I2CENC :1;
	uint8        :1;
 } Bits;
} I2CCONCLRSTR;
/*extern volatile I2CCONCLRSTR _I20CC @0xE001C018; */
#define _I20CC          (*((volatile I2CCONCLRSTR *) 0xE001C018))
#define I2C0CONCLR _I20CC.Reg8
#define I2C0CONCLR_AAC    _I20CC.Bits.AAC
#define I2C0CONCLR_SIC    _I20CC.Bits.SIC
#define I2C0CONCLR_STAC   _I20CC.Bits.STAC
#define I2C0CONCLR_I2CENC _I20CC.Bits.I2CENC

typedef union {
  uint8 Reg8;
  struct {
    uint8        :3;
	uint8 STA    :5;
 } Bits;
} I2CSTATSTR;
/*extern volatile I2CSTATSTR _I20ST @0xE001C004;*/
#define _I20ST          (*((volatile I2CSTATSTR *) 0xE001C004))
#define I2C0STAT _I20ST.Reg8
#define I2C0STAT_STA   _I20ST.Bits.STA

/*extern volatile uint8  I2C0DAT  @0xE001C008;*/
#define I2C0DAT           (*((volatile unsigned char *) 0xE001C008))

typedef union {
  uint8 Reg8;
  struct {
    uint8 GC     :1;
	uint8 ADD    :7;
 } Bits;
} I2CADR;
/*extern volatile I2CADRSTR _I20AD @0xE001C00C;	*/
#define _I20AD          (*((volatile I2CADRSTR *) 0xE001C00C))
#define I2C0ADR _I20AD.Reg8
#define I2C0ADR_GC   _I20AD.Bits.GC
#define I2C0ADR_ADD  _I20AD.Bits.ADD

/*extern volatile uint16  I2C0SCLH  @0xE001C010;
extern volatile uint16  I2C0SCLL  @0xE001C014;
*/
#define I2C0SCLH          (*((volatile unsigned short *) 0xE001C010))
#define I2C0SCLL          (*((volatile unsigned short *) 0xE001C014))

/*extern volatile I2CONSETSTR _I21CS @0xE005C000;*/
#define _I21CS          (*((volatile I2CONSETSTR *) 0xE005C000))
#define I2C1CONSET _I21CS.Reg8			 
#define I2C1CONSET_AA    _I21CS.Bits.AA
#define I2C1CONSET_SI    _I21CS.Bits.SI
#define I2C1CONSET_STO   _I21CS.Bits.STO
#define I2C1CONSET_STA   _I21CS.Bits.STA
#define I2C1CONSET_I2CEN _I21CS.Bits.I2CEN

/*extern volatile I2CCONCLRSTR _I21CC @0xE005C018;*/
#define _I21CC          (*((volatile I2CCONCLRSTR *) 0xE005C018))
#define I2C1CONCLR _I21CC.Reg8
#define I2C1CONCLR_AAC    _I21CC.Bits.AAC
#define I2C1CONCLR_SIC    _I21CC.Bits.SIC
#define I2C1CONCLR_STAC   _I21CC.Bits.STAC
#define I2C1CONCLR_I2CENC _I21CC.Bits.I2CENC

/*extern volatile I2CSTATSTR _I21ST @0xE005C004;*/
#define _I21ST          (*((volatile I2CSTATSTR *) 0xE005C004))
#define I2C1STAT _I21ST.Reg8
#define I2C1STAT_STA   _I21ST.Bits.STA

/*extern volatile uint8  I2C1DAT  @0xE005C008;*/
#define I2C1DAT           (*((volatile unsigned char *) 0xE005C008))

/*extern volatile I2CADRSTR _I21AD @0xE005C00C;	*/
#define _I21AD          (*((volatile I2CADRSTR *) 0xE005C00C))
#define I2C1ADR _I21AD.Reg8
#define I2C1ADR_GC   _I21AD.Bits.GC
#define I2C1ADR_ADD  _I21AD.Bits.ADD

/*extern volatile uint8  I2C1SCLH  @0xE005C010;
extern volatile uint8  I2C1SCLL  @0xE005C014;
*/
#define I2C1SCLH          (*((volatile unsigned short *) 0xE005C010))
#define I2C1SCLL          (*((volatile unsigned short *) 0xE005C014))

/* SPI (Serial Peripheral Interface) */
/* SPI总线接口的特殊寄存器 */
typedef union {
  uint8 Reg8;
  struct {
    uint8        :3;
	uint8 CPHA   :1;
    uint8 CPOL   :1;
    uint8 MSTR   :1;
	uint8 LSBF   :1;
	uint8 SPIE   :1;
 } Bits;
} SPCRSTR;
/*extern volatile SPCRSTR _S0CR @0xE0020000;*/
#define _S0CR          (*((volatile SPCRSTR *) 0xE0020000))
#define S0SPCR _S0CR.Reg8
#define S0SPCR_CPHA   _S0CR.Bits.CPHA
#define S0SPCR_CPOL   _S0CR.Bits.CPOL
#define S0SPCR_MSTR   _S0CR.Bits.MSTR
#define S0SPCR_LSBF   _S0CR.Bits.LSBF
#define S0SPCR_SPIE   _S0CR.Bits.SPIE

typedef union {
  uint8 Reg8;
  struct {
    uint8        :3;
	uint8 ABRT   :1;
    uint8 MODE   :1;
    uint8 ROVR   :1;
	uint8 WCOL   :1;
	uint8 SPIF   :1;
 } Bits;
} SPSRSTR;
/*extern volatile SPSRSTR _S0SR @0xE0020004;*/
#define _S0SR          (*((volatile SPSRSTR *) 0xE0020004))
#define S0SPSR _S0SR.Reg8
#define S0SPSR_ABRT   _S0SR.Bits.ABRT
#define S0SPSR_MODE   _S0SR.Bits.MODE
#define S0SPSR_ROVR   _S0SR.Bits.ROVR
#define S0SPSR_WCOL   _S0SR.Bits.WCOL
#define S0SPSR_SPIF   _S0SR.Bits.SPIF

/*extern volatile uint8 S0SPDR @0xE0020008;
extern volatile uint8 S0SCCR @0xE002000C;*/
#define S0PDR           (*((volatile unsigned char *) 0xE0020008))      
#define S0PCCR          (*((volatile unsigned char *) 0xE002000C))      

typedef union {
  uint8 Reg8;
  struct {
    uint8 SPIF   :1;
	uint8        :7;
 } Bits;
} SPINTSTR;
/*extern volatile SPINTSTR _S0IN @0xE002001C;*/
#define _S0IN          (*((volatile SPINTSTR *) 0xE002001C))
#define S0SPINT _S0IN.Reg8
#define S0SPINT_SPIF   _S0IN.Bits.SPIF

typedef union {
  uint16 Reg16;
  struct {
    uint16 DSS    :4;
	uint16 FRF    :2;
    uint16 CPOL   :1;
 	uint16 CPHA   :1;
	uint16 SCR    :8;
 } Bits;
} SSPCR0STR;
/*extern volatile SSPCR0STR _SSCR0 @0xE0068000;*/
#define _SSCR0          (*((volatile SSPCR0STR *) 0xE0068000))
#define SSPCR0 _SSCR0.Reg16
#define SSPCR0_DSS  _SSCR0.Bits.DSS
#define SSPCR0_FRF  _SSCR0.Bits.FRF
#define SSPCR0_CPOL _SSCR0.Bits.CPOL
#define SSPCR0_CPHA _SSCR0.Bits.CPHA
#define SSPCR0_SCR  _SSCR0.Bits.SCR

typedef union {
  uint8 Reg8;
  struct {
    uint8 LBM    :1;
	uint8 SSE    :1;
    uint8 MS     :1;
 	uint8 SOD    :1;
	uint8        :4;
 } Bits;
} SSPCR1STR;
/*extern volatile SSPCR1STR _SSCR1 @0xE0068004;*/
#define _SSCR1          (*((volatile SSPCR1STR *) 0xE0068004))
#define SSPCR1 _SSCR1.Reg8
#define SSPCR1_LBM  _SSCR1.Bits.LBM
#define SSPCR1_SSE  _SSCR1.Bits.SSE
#define SSPCR1_MS   _SSCR1.Bits.MS
#define SSPCR1_SOD  _SSCR1.Bits.SOD

/*extern volatile uint16 SSPDR @0xE0068008;*/
#define SSPDR          (*((volatile uint16 *) 0xE0068008))

typedef union {
  uint8 Reg8;
  struct {
    uint8 TFE    :1;
	uint8 TNF    :1;
    uint8 RNE    :1;
 	uint8 RFF    :1;
 	uint8 BSY    :1;
	uint8        :3;

 } Bits;
} SSPSRSTR;
/*extern volatile SSPSRSTR _SSSR @0xE006800C;*/
#define _SSSR          (*((volatile SSPSRSTR *) 0xE006800C))
#define SSPSR _SSSR.Reg8
#define SSPSR_TFE  _SSSR.Bits.TFE
#define SSPSR_TNF  _SSSR.Bits.TNF
#define SSPSR_RNE  _SSSR.Bits.RNE
#define SSPSR_RFF  _SSSR.Bits.RFF
#define SSPSR_BSY  _SSSR.Bits.BSY

/*extern volatile uint16 SSPCPSR @0xE0068010;*/
#define SSPCPSR          (*((volatile uint16 *) 0xE0068010))

typedef union {
  uint8 Reg8;
  struct {
    uint8 RORIM  :1;
	uint8 RTM    :1;
    uint8 RXIM   :1;
 	uint8 TXIM   :1;
	uint8 		 :4;
 } Bits;
} SSPIMSCSTR;
/*extern volatile SSPIMSCSTR _SSIM @0xE0068014;*/
#define _SSIM          (*((volatile SSPIMSCSTR *) 0xE0068014))
#define SSPIMSC _SSIM.Reg8
#define SSPIMSC_RORM  _SSIM.Bits.RORM
#define SSPIMSC_RTM   _SSIM.Bits.RTM
#define SSPIMSC_RXIM  _SSIM.Bits.RXIM
#define SSPIMSC_TXIM  _SSIM.Bits.TXIM

typedef union {
  uint8 Reg8;
  struct {
    uint8 RORRIS :1;
	uint8 RTRIS  :1;
    uint8 RXRIS  :1;
 	uint8 TXRIS  :1;
	uint8        :4;
  } Bits;
} SSPRISSTR;
/*extern volatile SSPRISSTR _SSRI @0xE0068018;*/
#define _SSRI          (*((volatile SSPRISSTR *) 0xE0068018))
#define SSPRIS _SSRI.Reg8
#define SSPRIS_RORRIS  _SSRI.Bits.RORRIS
#define SSPRIS_RTRIS   _SSRI.Bits.RTRIS
#define SSPRIS_RXRIS   _SSRI.Bits.RXRIS
#define SSPRIS_TXRIS   _SSRI.Bits.TXRIS

typedef union {
  uint8 Reg8;
  struct {
    uint8 RORMIS :1;
	uint8 RTMIS  :1;
    uint8 RXMIS  :1;
 	uint8 TXMIS  :1;
	uint8        :4;
 } Bits;
} SSPMISSTR;
/*extern volatile SSPMISSTR _SSMI @0xE006801C;*/
#define _SSMI          (*((volatile SSPMISSTR *) 0xE006801C))
#define SSPMIS _SSMI.Reg8
#define SSPMIS_RORMIS  _SSMI.Bits.RORMIS
#define SSPMIS_RTMIS   _SSMI.Bits.RTMIS
#define SSPMIS_RXMIS   _SSMI.Bits.RXMIS
#define SSPMIS_TXMIS   _SSMI.Bits.TXMIS

typedef union {
  uint8 Reg8;
  struct {
    uint8 RORIC  :1;
	uint8 RTIC   :1;
	uint8        :6;
 } Bits;
} SSPICRSTR;
/*extern volatile SSPICRSTR _SSIC @0xE0068020;*/
#define _SSIC          (*((volatile SSPICRSTR *) 0xE0068020))
#define SSPICR _SSIC.Reg8
#define SSPICR_RORIC  _SSIC.Bits.RORIC
#define SSPICR_RTIC   _SSIC.Bits.RTIC

/* Timer 0 */
/* 定时器0的特殊寄存器 */
typedef union {
  uint8 Reg8;
  struct {
    uint8 MRO    :1;
	uint8 MR1    :1;
	uint8 MR2    :1;
	uint8 MR3    :1;
    uint8 CRO    :1;
	uint8 CR1    :1;
    uint8 CR2    :1;
	uint8 CR3    :1;
 } Bits;
} TIRSTR;
/*extern volatile TIRSTR _T0I @0xE0004000;*/
#define _T0I          (*((volatile TIRSTR *) 0xE0004000))
#define T0IR _T0I.Reg8
#define T0IR_MR0  _T0I.Bits.MR0
#define T0IR_MR1  _T0I.Bits.MR1
#define T0IR_MR2  _T0I.Bits.MR2
#define T0IR_MR3  _T0I.Bits.MR3
#define T0IR_CR0  _T0I.Bits.CR0
#define T0IR_CR1  _T0I.Bits.CR1
#define T0IR_CR2  _T0I.Bits.CR2
#define T0IR_CR3  _T0I.Bits.CR3

typedef union {
  uint8 Reg8;
  struct {
    uint8 CE   :1;
	uint8 CR   :1;
	uint8      :6;
 } Bits;
} TTCRSTR;
/*extern volatile TTCRSTR _T0TC @0xE0004004;*/
#define _T0TC          (*((volatile TTCRSTR *) 0xE0004004))
#define T0TCR _T0TC.Reg8
#define T0TCR_CE  _T0TC.Bits.CE
#define T0TCR_CR  _T0TC.Bits.CR

typedef union {
  uint8 Reg8;
  struct {
    uint8 CTM  :1;
	uint8 CIS  :1;
	uint8      :6;
 } Bits;
} TCTCRSTR;
/*extern volatile TCTCRSTR _T0CTC @0xE0004070;*/
#define _TOCTC          (*((volatile TCTCRSTR *) 0xE0004070))
#define T0CTCR _T0CTC.Reg8
#define T0CTCR_CTM  _T0CTC.Bits.CTM
#define T0CTCR_CIS  _T0CTC.Bits.CIS

/*extern volatile uint32 T0TC @0xE0004008;
extern volatile uint32 T0PR @0xE000400C;
extern volatile uint32 T0PC @0xE0004010;
*/
#define T0TC            (*((volatile unsigned long *) 0xE0004008))
#define T0PR            (*((volatile unsigned long *) 0xE000400C))
#define T0PC            (*((volatile unsigned long *) 0xE0004010))

typedef union {
  uint16 Reg16;
  struct {
    uint16 MR0I   :1;
	uint16 MR0R   :1;
    uint16 MR0S   :1;
    uint16 MR1I   :1;
	uint16 MR1R   :1;
    uint16 MR1S   :1;
	uint16 MR2I   :1;
	uint16 MR2R   :1;
    uint16 MR2S   :1;
	uint16 MR3I   :1;
	uint16 MR3R   :1;
    uint16 MR3S   :1;
	uint16        :4;
 } Bits;
} TMCRSTR;
/*extern volatile TMCRSTR _T0MC @0xE0004014;*/
#define _T0MC          (*((volatile TMCRSTR *) 0xE0004014))
#define T0MCR _T0MC.Reg16
#define T0MCR_MR0I  _T0MC.Bits.MR0I
#define T0MCR_MR0R  _T0MC.Bits.MR0R
#define T0MCR_MR0S  _T0MC.Bits.MR0S
#define T0MCR_MR1I  _T0MC.Bits.MR1I
#define T0MCR_MR1R  _T0MC.Bits.MR1R
#define T0MCR_MR1S  _T0MC.Bits.MR1S
#define T0MCR_MR2I  _T0MC.Bits.MR2I
#define T0MCR_MR2R  _T0MC.Bits.MR2R
#define T0MCR_MR2S  _T0MC.Bits.MR2S
#define T0MCR_MR3I  _T0MC.Bits.MR3I
#define T0MCR_MR3R  _T0MC.Bits.MR3R
#define T0MCR_MR3S  _T0MC.Bits.MR3S

/*extern volatile uint32 T0MR0 @0xE0004018;
extern volatile uint32 T0MR1 @0xE000401C;
extern volatile uint32 T0MR2 @0xE0004020;
extern volatile uint32 T0MR3 @0xE0004024;
*/
#define T0MR0           (*((volatile unsigned long *) 0xE0004018))
#define T0MR1           (*((volatile unsigned long *) 0xE000401C))
#define T0MR2           (*((volatile unsigned long *) 0xE0004020))
#define T0MR3           (*((volatile unsigned long *) 0xE0004024))

⌨️ 快捷键说明

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