📄 io_map.h
字号:
#define SCI1C2_TE _SCI1C2.Bits.TE
#define SCI1C2_ILIE _SCI1C2.Bits.ILIE
#define SCI1C2_RIE _SCI1C2.Bits.RIE
#define SCI1C2_TCIE _SCI1C2.Bits.TCIE
#define SCI1C2_TIE _SCI1C2.Bits.TIE
#define SCI1C2_SBK_MASK 0x01
#define SCI1C2_RWU_MASK 0x02
#define SCI1C2_RE_MASK 0x04
#define SCI1C2_TE_MASK 0x08
#define SCI1C2_ILIE_MASK 0x10
#define SCI1C2_RIE_MASK 0x20
#define SCI1C2_TCIE_MASK 0x40
#define SCI1C2_TIE_MASK 0x80
/*** SCI1S1 - SCI1 Status Register 1; 0x0000001C ***/
typedef union {
byte Byte;
struct {
byte PF :1; /* Parity Error Flag */
byte FE :1; /* Framing Error Flag */
byte NF :1; /* Noise Flag */
byte OR :1; /* Receiver Overrun Flag */
byte IDLE :1; /* Idle Line Flag */
byte RDRF :1; /* Receive Data Register Full Flag */
byte TC :1; /* Transmission Complete Flag */
byte TDRE :1; /* Transmit Data Register Empty Flag */
} Bits;
} SCI1S1STR;
extern volatile SCI1S1STR _SCI1S1 @0x0000001C;
#define SCI1S1 _SCI1S1.Byte
#define SCI1S1_PF _SCI1S1.Bits.PF
#define SCI1S1_FE _SCI1S1.Bits.FE
#define SCI1S1_NF _SCI1S1.Bits.NF
#define SCI1S1_OR _SCI1S1.Bits.OR
#define SCI1S1_IDLE _SCI1S1.Bits.IDLE
#define SCI1S1_RDRF _SCI1S1.Bits.RDRF
#define SCI1S1_TC _SCI1S1.Bits.TC
#define SCI1S1_TDRE _SCI1S1.Bits.TDRE
#define SCI1S1_PF_MASK 0x01
#define SCI1S1_FE_MASK 0x02
#define SCI1S1_NF_MASK 0x04
#define SCI1S1_OR_MASK 0x08
#define SCI1S1_IDLE_MASK 0x10
#define SCI1S1_RDRF_MASK 0x20
#define SCI1S1_TC_MASK 0x40
#define SCI1S1_TDRE_MASK 0x80
/*** SCI1S2 - SCI1 Status Register 2; 0x0000001D ***/
typedef union {
byte Byte;
struct {
byte RAF :1; /* Receiver Active Flag */
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
byte :1;
} Bits;
} SCI1S2STR;
extern volatile SCI1S2STR _SCI1S2 @0x0000001D;
#define SCI1S2 _SCI1S2.Byte
#define SCI1S2_RAF _SCI1S2.Bits.RAF
#define SCI1S2_RAF_MASK 0x01
/*** SCI1C3 - SCI1 Control Register 3; 0x0000001E ***/
typedef union {
byte Byte;
struct {
byte PEIE :1; /* Parity Error Interrupt Enable */
byte FEIE :1; /* Framing Error Interrupt Enable */
byte NEIE :1; /* Noise Error Interrupt Enable */
byte ORIE :1; /* Overrun Interrupt Enable */
byte :1;
byte TXDIR :1; /* TxD Pin Direction in Single-Wire Mode */
byte T8 :1; /* Ninth Data Bit for Transmitter */
byte R8 :1; /* Ninth Data Bit for Receiver */
} Bits;
} SCI1C3STR;
extern volatile SCI1C3STR _SCI1C3 @0x0000001E;
#define SCI1C3 _SCI1C3.Byte
#define SCI1C3_PEIE _SCI1C3.Bits.PEIE
#define SCI1C3_FEIE _SCI1C3.Bits.FEIE
#define SCI1C3_NEIE _SCI1C3.Bits.NEIE
#define SCI1C3_ORIE _SCI1C3.Bits.ORIE
#define SCI1C3_TXDIR _SCI1C3.Bits.TXDIR
#define SCI1C3_T8 _SCI1C3.Bits.T8
#define SCI1C3_R8 _SCI1C3.Bits.R8
#define SCI1C3_PEIE_MASK 0x01
#define SCI1C3_FEIE_MASK 0x02
#define SCI1C3_NEIE_MASK 0x04
#define SCI1C3_ORIE_MASK 0x08
#define SCI1C3_TXDIR_MASK 0x20
#define SCI1C3_T8_MASK 0x40
#define SCI1C3_R8_MASK 0x80
/*** SCI1D - SCI1 Data Register; 0x0000001F ***/
typedef union {
byte Byte;
struct {
byte R0_T0 :1; /* Receive/Transmit Data Bit 0 */
byte R1_T1 :1; /* Receive/Transmit Data Bit 1 */
byte R2_T2 :1; /* Receive/Transmit Data Bit 2 */
byte R3_T3 :1; /* Receive/Transmit Data Bit 3 */
byte R4_T4 :1; /* Receive/Transmit Data Bit 4 */
byte R5_T5 :1; /* Receive/Transmit Data Bit 5 */
byte R6_T6 :1; /* Receive/Transmit Data Bit 6 */
byte R7_T7 :1; /* Receive/Transmit Data Bit 7 */
} Bits;
} SCI1DSTR;
extern volatile SCI1DSTR _SCI1D @0x0000001F;
#define SCI1D _SCI1D.Byte
#define SCI1D_R0_T0 _SCI1D.Bits.R0_T0
#define SCI1D_R1_T1 _SCI1D.Bits.R1_T1
#define SCI1D_R2_T2 _SCI1D.Bits.R2_T2
#define SCI1D_R3_T3 _SCI1D.Bits.R3_T3
#define SCI1D_R4_T4 _SCI1D.Bits.R4_T4
#define SCI1D_R5_T5 _SCI1D.Bits.R5_T5
#define SCI1D_R6_T6 _SCI1D.Bits.R6_T6
#define SCI1D_R7_T7 _SCI1D.Bits.R7_T7
#define SCI1D_R0_T0_MASK 0x01
#define SCI1D_R1_T1_MASK 0x02
#define SCI1D_R2_T2_MASK 0x04
#define SCI1D_R3_T3_MASK 0x08
#define SCI1D_R4_T4_MASK 0x10
#define SCI1D_R5_T5_MASK 0x20
#define SCI1D_R6_T6_MASK 0x40
#define SCI1D_R7_T7_MASK 0x80
/*** SCI2BD - SCI2 Baud Rate Register; 0x00000020 ***/
typedef union {
word Word;
/* Overlapped registers: */
struct {
/*** SCI2BDH - SCI2 Baud Rate Register High; 0x00000020 ***/
union {
byte Byte;
struct {
byte SBR8 :1; /* Baud Rate Modulo Divisor Bit 8 */
byte SBR9 :1; /* Baud Rate Modulo Divisor Bit 9 */
byte SBR10 :1; /* Baud Rate Modulo Divisor Bit 10 */
byte SBR11 :1; /* Baud Rate Modulo Divisor Bit 11 */
byte SBR12 :1; /* Baud Rate Modulo Divisor Bit 12 */
byte :1;
byte :1;
byte :1;
} Bits;
struct {
byte grpSBR_8 :5;
byte :1;
byte :1;
byte :1;
} MergedBits;
} SCI2BDHSTR;
#define SCI2BDH _SCI2BD.Overlap_STR.SCI2BDHSTR.Byte
#define SCI2BDH_SBR8 _SCI2BD.Overlap_STR.SCI2BDHSTR.Bits.SBR8
#define SCI2BDH_SBR9 _SCI2BD.Overlap_STR.SCI2BDHSTR.Bits.SBR9
#define SCI2BDH_SBR10 _SCI2BD.Overlap_STR.SCI2BDHSTR.Bits.SBR10
#define SCI2BDH_SBR11 _SCI2BD.Overlap_STR.SCI2BDHSTR.Bits.SBR11
#define SCI2BDH_SBR12 _SCI2BD.Overlap_STR.SCI2BDHSTR.Bits.SBR12
#define SCI2BDH_SBR_8 _SCI2BD.Overlap_STR.SCI2BDHSTR.MergedBits.grpSBR_8
#define SCI2BDH_SBR SCI2BDH_SBR_8
#define SCI2BDH_SBR8_MASK 0x01
#define SCI2BDH_SBR9_MASK 0x02
#define SCI2BDH_SBR10_MASK 0x04
#define SCI2BDH_SBR11_MASK 0x08
#define SCI2BDH_SBR12_MASK 0x10
#define SCI2BDH_SBR_8_MASK 0x1F
#define SCI2BDH_SBR_8_BITNUM 0x00
/*** SCI2BDL - SCI2 Baud Rate Register Low; 0x00000021 ***/
union {
byte Byte;
struct {
byte SBR0 :1; /* Baud Rate Modulo Divisor Bit 0 */
byte SBR1 :1; /* Baud Rate Modulo Divisor Bit 1 */
byte SBR2 :1; /* Baud Rate Modulo Divisor Bit 2 */
byte SBR3 :1; /* Baud Rate Modulo Divisor Bit 3 */
byte SBR4 :1; /* Baud Rate Modulo Divisor Bit 4 */
byte SBR5 :1; /* Baud Rate Modulo Divisor Bit 5 */
byte SBR6 :1; /* Baud Rate Modulo Divisor Bit 6 */
byte SBR7 :1; /* Baud Rate Modulo Divisor Bit 7 */
} Bits;
} SCI2BDLSTR;
#define SCI2BDL _SCI2BD.Overlap_STR.SCI2BDLSTR.Byte
#define SCI2BDL_SBR0 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR0
#define SCI2BDL_SBR1 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR1
#define SCI2BDL_SBR2 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR2
#define SCI2BDL_SBR3 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR3
#define SCI2BDL_SBR4 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR4
#define SCI2BDL_SBR5 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR5
#define SCI2BDL_SBR6 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR6
#define SCI2BDL_SBR7 _SCI2BD.Overlap_STR.SCI2BDLSTR.Bits.SBR7
#define SCI2BDL_SBR0_MASK 0x01
#define SCI2BDL_SBR1_MASK 0x02
#define SCI2BDL_SBR2_MASK 0x04
#define SCI2BDL_SBR3_MASK 0x08
#define SCI2BDL_SBR4_MASK 0x10
#define SCI2BDL_SBR5_MASK 0x20
#define SCI2BDL_SBR6_MASK 0x40
#define SCI2BDL_SBR7_MASK 0x80
} Overlap_STR;
} SCI2BDSTR;
extern volatile SCI2BDSTR _SCI2BD @0x00000020;
#define SCI2BD _SCI2BD.Word
/*** SCI2C1 - SCI1 Control Register 1; 0x00000022 ***/
typedef union {
byte Byte;
struct {
byte PT :1; /* Parity Type */
byte PE :1; /* Parity Enable */
byte ILT :1; /* Idle Line Type Select */
byte WAKE :1; /* Receiver Wakeup Method Select */
byte M :1; /* 9-Bit or 8-Bit Mode Select */
byte RSRC :1; /* Receiver Source Select */
byte SCISWAI :1; /* SCI Stops in Wait Mode */
byte LOOPS :1; /* Loop Mode Select */
} Bits;
} SCI2C1STR;
extern volatile SCI2C1STR _SCI2C1 @0x00000022;
#define SCI2C1 _SCI2C1.Byte
#define SCI2C1_PT _SCI2C1.Bits.PT
#define SCI2C1_PE _SCI2C1.Bits.PE
#define SCI2C1_ILT _SCI2C1.Bits.ILT
#define SCI2C1_WAKE _SCI2C1.Bits.WAKE
#define SCI2C1_M _SCI2C1.Bits.M
#define SCI2C1_RSRC _SCI2C1.Bits.RSRC
#define SCI2C1_SCISWAI _SCI2C1.Bits.SCISWAI
#define SCI2C1_LOOPS _SCI2C1.Bits.LOOPS
#define SCI2C1_PT_MASK 0x01
#define SCI2C1_PE_MASK 0x02
#define SCI2C1_ILT_MASK 0x04
#define SCI2C1_WAKE_MASK 0x08
#define SCI2C1_M_MASK 0x10
#define SCI2C1_RSRC_MASK 0x20
#define SCI2C1_SCISWAI_MASK 0x40
#define SCI2C1_LOOPS_MASK 0x80
/*** SCI2C2 - SCI2 Control Register 2; 0x00000023 ***/
typedef union {
byte Byte;
struct {
byte SBK :1; /* Send Break */
byte RWU :1; /* Receiver Wakeup Control */
byte RE :1; /* Receiver Enable */
byte TE :1; /* Transmitter Enable */
byte ILIE :1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -