📄 io_map.h
字号:
#define SBDFR_BDFR_MASK 0x01
/*** SOPT1 - System Options Register 1; 0x00001802 ***/
typedef union {
byte Byte;
struct {
byte RSTPE :1; /* RESET Pin Enable */
byte BKGDPE :1; /* Background Debug Mode Pin Enable */
byte :1;
byte :1;
byte :1;
byte STOPE :1; /* Stop Mode Enable */
byte COPT :1; /* COP Watchdog Timeout */
byte COPE :1; /* COP Watchdog Enable */
} Bits;
} SOPT1STR;
extern volatile SOPT1STR _SOPT1 @0x00001802;
#define SOPT1 _SOPT1.Byte
#define SOPT1_RSTPE _SOPT1.Bits.RSTPE
#define SOPT1_BKGDPE _SOPT1.Bits.BKGDPE
#define SOPT1_STOPE _SOPT1.Bits.STOPE
#define SOPT1_COPT _SOPT1.Bits.COPT
#define SOPT1_COPE _SOPT1.Bits.COPE
#define SOPT1_RSTPE_MASK 0x01
#define SOPT1_BKGDPE_MASK 0x02
#define SOPT1_STOPE_MASK 0x20
#define SOPT1_COPT_MASK 0x40
#define SOPT1_COPE_MASK 0x80
/*** SOPT2 - System Options Register 2; 0x00001803 ***/
typedef union {
byte Byte;
struct {
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
byte COPCLKS :1; /* COP Watchdog Clock Select */
} Bits;
} SOPT2STR;
extern volatile SOPT2STR _SOPT2 @0x00001803;
#define SOPT2 _SOPT2.Byte
#define SOPT2_COPCLKS _SOPT2.Bits.COPCLKS
#define SOPT2_COPCLKS_MASK 0x80
/*** SDID - System Device Identification Register; 0x00001806 ***/
typedef union {
word Word;
/* Overlapped registers: */
struct {
/*** SDIDH - System Device Identification Register High; 0x00001806 ***/
union {
byte Byte;
struct {
byte ID8 :1; /* Part Identification Number 8 */
byte ID9 :1; /* Part Identification Number 9 */
byte ID10 :1; /* Part Identification Number 10 */
byte ID11 :1; /* Part Identification Number 11 */
byte REV0 :1; /* Revision Number 0 */
byte REV1 :1; /* Revision Number 1 */
byte REV2 :1; /* Revision Number 2 */
byte REV3 :1; /* Revision Number 3 */
} Bits;
struct {
byte grpID_8 :4;
byte grpREV :4;
} MergedBits;
} SDIDHSTR;
#define SDIDH _SDID.Overlap_STR.SDIDHSTR.Byte
#define SDIDH_ID8 _SDID.Overlap_STR.SDIDHSTR.Bits.ID8
#define SDIDH_ID9 _SDID.Overlap_STR.SDIDHSTR.Bits.ID9
#define SDIDH_ID10 _SDID.Overlap_STR.SDIDHSTR.Bits.ID10
#define SDIDH_ID11 _SDID.Overlap_STR.SDIDHSTR.Bits.ID11
#define SDIDH_REV0 _SDID.Overlap_STR.SDIDHSTR.Bits.REV0
#define SDIDH_REV1 _SDID.Overlap_STR.SDIDHSTR.Bits.REV1
#define SDIDH_REV2 _SDID.Overlap_STR.SDIDHSTR.Bits.REV2
#define SDIDH_REV3 _SDID.Overlap_STR.SDIDHSTR.Bits.REV3
#define SDIDH_ID_8 _SDID.Overlap_STR.SDIDHSTR.MergedBits.grpID_8
#define SDIDH_REV _SDID.Overlap_STR.SDIDHSTR.MergedBits.grpREV
#define SDIDH_ID SDIDH_ID_8
#define SDIDH_ID8_MASK 0x01
#define SDIDH_ID9_MASK 0x02
#define SDIDH_ID10_MASK 0x04
#define SDIDH_ID11_MASK 0x08
#define SDIDH_REV0_MASK 0x10
#define SDIDH_REV1_MASK 0x20
#define SDIDH_REV2_MASK 0x40
#define SDIDH_REV3_MASK 0x80
#define SDIDH_ID_8_MASK 0x0F
#define SDIDH_ID_8_BITNUM 0x00
#define SDIDH_REV_MASK 0xF0
#define SDIDH_REV_BITNUM 0x04
/*** SDIDL - System Device Identification Register Low; 0x00001807 ***/
union {
byte Byte;
struct {
byte ID0 :1; /* Part Identification Number 0 */
byte ID1 :1; /* Part Identification Number 1 */
byte ID2 :1; /* Part Identification Number 2 */
byte ID3 :1; /* Part Identification Number 3 */
byte ID4 :1; /* Part Identification Number 4 */
byte ID5 :1; /* Part Identification Number 5 */
byte ID6 :1; /* Part Identification Number 6 */
byte ID7 :1; /* Part Identification Number 7 */
} Bits;
} SDIDLSTR;
#define SDIDL _SDID.Overlap_STR.SDIDLSTR.Byte
#define SDIDL_ID0 _SDID.Overlap_STR.SDIDLSTR.Bits.ID0
#define SDIDL_ID1 _SDID.Overlap_STR.SDIDLSTR.Bits.ID1
#define SDIDL_ID2 _SDID.Overlap_STR.SDIDLSTR.Bits.ID2
#define SDIDL_ID3 _SDID.Overlap_STR.SDIDLSTR.Bits.ID3
#define SDIDL_ID4 _SDID.Overlap_STR.SDIDLSTR.Bits.ID4
#define SDIDL_ID5 _SDID.Overlap_STR.SDIDLSTR.Bits.ID5
#define SDIDL_ID6 _SDID.Overlap_STR.SDIDLSTR.Bits.ID6
#define SDIDL_ID7 _SDID.Overlap_STR.SDIDLSTR.Bits.ID7
#define SDIDL_ID0_MASK 0x01
#define SDIDL_ID1_MASK 0x02
#define SDIDL_ID2_MASK 0x04
#define SDIDL_ID3_MASK 0x08
#define SDIDL_ID4_MASK 0x10
#define SDIDL_ID5_MASK 0x20
#define SDIDL_ID6_MASK 0x40
#define SDIDL_ID7_MASK 0x80
} Overlap_STR;
} SDIDSTR;
extern volatile SDIDSTR _SDID @0x00001806;
#define SDID _SDID.Word
/*** SRTISC - System RTI Status and Control Register; 0x00001808 ***/
typedef union {
byte Byte;
struct {
byte RTIS0 :1; /* Real-Time Interrupt Delay Select Bit 0 */
byte RTIS1 :1; /* Real-Time Interrupt Delay Select Bit 1 */
byte RTIS2 :1; /* Real-Time Interrupt Delay Select Bit 2 */
byte :1;
byte RTIE :1; /* Real-Time Interrupt Enable */
byte RTICLKS :1; /* Real-Time Interrupt Clock Select */
byte RTIACK :1; /* Real-Time Interrupt Acknowledge */
byte RTIF :1; /* Real-Time Interrupt Flag */
} Bits;
struct {
byte grpRTIS :3;
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
} MergedBits;
} SRTISCSTR;
extern volatile SRTISCSTR _SRTISC @0x00001808;
#define SRTISC _SRTISC.Byte
#define SRTISC_RTIS0 _SRTISC.Bits.RTIS0
#define SRTISC_RTIS1 _SRTISC.Bits.RTIS1
#define SRTISC_RTIS2 _SRTISC.Bits.RTIS2
#define SRTISC_RTIE _SRTISC.Bits.RTIE
#define SRTISC_RTICLKS _SRTISC.Bits.RTICLKS
#define SRTISC_RTIACK _SRTISC.Bits.RTIACK
#define SRTISC_RTIF _SRTISC.Bits.RTIF
#define SRTISC_RTIS _SRTISC.MergedBits.grpRTIS
#define SRTISC_RTIS0_MASK 0x01
#define SRTISC_RTIS1_MASK 0x02
#define SRTISC_RTIS2_MASK 0x04
#define SRTISC_RTIE_MASK 0x10
#define SRTISC_RTICLKS_MASK 0x20
#define SRTISC_RTIACK_MASK 0x40
#define SRTISC_RTIF_MASK 0x80
#define SRTISC_RTIS_MASK 0x07
#define SRTISC_RTIS_BITNUM 0x00
/*** SPMSC1 - System Power Management Status and Control 1 Register; 0x00001809 ***/
typedef union {
byte Byte;
struct {
byte BGBE :1; /* Bandgap Buffer Enable */
byte :1;
byte LVDE :1; /* Low-Voltage Detect Enable */
byte LVDSE :1; /* Low-Voltage Detect Stop Enable */
byte LVDRE :1; /* Low-Voltage Detect Reset Enable */
byte LVDIE :1; /* Low-Voltage Detect Interrrupt Enable */
byte LVDACK :1; /* Low-Voltage Detect Acknowledge */
byte LVDF :1; /* Low-Voltage Detect Flag */
} Bits;
} SPMSC1STR;
extern volatile SPMSC1STR _SPMSC1 @0x00001809;
#define SPMSC1 _SPMSC1.Byte
#define SPMSC1_BGBE _SPMSC1.Bits.BGBE
#define SPMSC1_LVDE _SPMSC1.Bits.LVDE
#define SPMSC1_LVDSE _SPMSC1.Bits.LVDSE
#define SPMSC1_LVDRE _SPMSC1.Bits.LVDRE
#define SPMSC1_LVDIE _SPMSC1.Bits.LVDIE
#define SPMSC1_LVDACK _SPMSC1.Bits.LVDACK
#define SPMSC1_LVDF _SPMSC1.Bits.LVDF
#define SPMSC1_BGBE_MASK 0x01
#define SPMSC1_LVDE_MASK 0x04
#define SPMSC1_LVDSE_MASK 0x08
#define SPMSC1_LVDRE_MASK 0x10
#define SPMSC1_LVDIE_MASK 0x20
#define SPMSC1_LVDACK_MASK 0x40
#define SPMSC1_LVDF_MASK 0x80
/*** SPMSC2 - System Power Management Status and Control 2 Register; 0x0000180A ***/
typedef union {
byte Byte;
struct {
byte PPDC :1; /* Partial Power Down Control */
byte :1;
byte PPDACK :1; /* Partial Power Down Acknowledge */
byte PPDF :1; /* Partial Power Down Flag */
byte LVWV :1; /* Low-Voltage Warning Voltage Select */
byte LVDV :1; /* Low-Voltage Detect Voltage Select */
byte LVWACK :1; /* Low-Voltage Warning Acknowledge */
byte LVWF :1; /* Low-Voltage Warning Flag */
} Bits;
} SPMSC2STR;
extern volatile SPMSC2STR _SPMSC2 @0x0000180A;
#define SPMSC2 _SPMSC2.Byte
#define SPMSC2_PPDC _SPMSC2.Bits.PPDC
#define SPMSC2_PPDACK _SPMSC2.Bits.PPDACK
#define SPMSC2_PPDF _SPMSC2.Bits.PPDF
#define SPMSC2_LVWV _SPMSC2.Bits.LVWV
#define SPMSC2_LVDV _SPMSC2.Bits.LVDV
#define SPMSC2_LVWACK _SPMSC2.Bits.LVWACK
#define SPMSC2_LVWF _SPMSC2.Bits.LVWF
#define SPMSC2_PPDC_MASK 0x01
#define SPMSC2_PPDACK_MASK 0x04
#define SPMSC2_PPDF_MASK 0x08
#define SPMSC2_LVWV_MASK 0x10
#define SPMSC2_LVDV_MASK 0x20
#define SPMSC2_LVWACK_MASK 0x40
#define SPMSC2_LVWF_MASK 0x80
/*** FCDIV - FLASH Clock Divider Register; 0x00001820 ***/
typedef union {
byte Byte;
struct {
byte DIV0 :1; /* Divisor for FLASH Clock Divider Bit 0 */
byte DIV1 :1; /* Divisor for FLASH Clock Divider Bit 1 */
byte DIV2 :1; /* Divisor for FLASH Clock Divider Bit 2 */
byte DIV3 :1; /* Divisor for FLASH Clock Divider Bit 3 */
byte DIV4 :1; /* Divisor for FLASH Clock Divider Bit 4 */
byte DIV5 :1; /* Divisor for FLASH Clock Divider Bit 5 */
byte PRDIV8 :1; /* Prescale (Divide) FLASH Clock by 8 */
byte DIVLD :1; /* Divisor Loaded Status Flag */
} Bits;
struct {
byte grpDIV :6;
byte grpPRDIV_8 :1;
byte :1;
} MergedBits;
} FCDIVSTR;
extern volatile FCDIVSTR _FCDIV @0x00001820;
#define FCDIV _FCDIV.Byte
#define FCDIV_DIV0 _FCDIV.Bits.DIV0
#define FCDIV_DIV1 _FCDIV.Bits.DIV1
#define FCDIV_DIV2 _FCDIV.Bits.DIV2
#define FCDIV_DIV3 _FCDIV.Bits.DIV3
#define FCDIV_DIV4 _FCDIV.Bits.DIV4
#define FCDIV_DIV5 _FCDIV.Bits.DIV5
#define FCDIV_PRDIV8 _FCDIV.Bits.PRDIV8
#define FCDIV_DIVLD _FCDIV.Bits.DIVLD
#define FCDIV_DIV _FCDIV.MergedBits.grpDIV
#define FCDIV_DIV0_MASK 0x01
#define FCDIV_DIV1_MASK 0x02
#define FCDIV_DIV2_MASK 0x04
#define FCDIV_DIV3_MASK 0x08
#define FCDIV_DIV4_MASK 0x10
#define FCDIV_DIV5_MASK 0x20
#define FCDIV_PRDIV8_MASK 0x40
#define FCDIV_DIVLD_MASK 0x80
#define FCDIV_DIV_MASK 0x3F
#define FCDIV_DIV_BITNUM 0x00
/*** FOPT - FLASH Options Register; 0x00001821 ***/
typedef union {
byte Byte;
struct {
byte SEC00 :1; /* Security State Code Bit 0 */
byte SEC01 :1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -