📄 sfr6n.h
字号:
/*------------------------------------------------------
Port P9 bit
------------------------------------------------------*/
union byte_def p9_addr;
#define p9 p9_addr.byte
#define p9_0 p9_addr.bit.b0 /* Port P9 bit0 */
#define p9_1 p9_addr.bit.b1 /* Port P9 bit1 */
#define p9_2 p9_addr.bit.b2 /* Port P9 bit2 */
#define p9_3 p9_addr.bit.b3 /* Port P9 bit3 */
#define p9_4 p9_addr.bit.b4 /* Port P9 bit4 */
#define p9_5 p9_addr.bit.b5 /* Port P9 bit5 */
#define p9_6 p9_addr.bit.b6 /* Port P9 bit6 */
#define p9_7 p9_addr.bit.b7 /* Port P9 bit7 */
/*------------------------------------------------------
Port P9 direction register
------------------------------------------------------*/
union byte_def pd9_addr;
#define pd9 pd9_addr.byte
#define pd9_0 pd9_addr.bit.b0 /* P俋 direction register bit0 */
#define pd9_1 pd9_addr.bit.b1 /* P俋 direction register bit1 */
#define pd9_2 pd9_addr.bit.b2 /* P俋 direction register bit2 */
#define pd9_3 pd9_addr.bit.b3 /* P俋 direction register bit3 */
#define pd9_4 pd9_addr.bit.b4 /* P俋 direction register bit4 */
#define pd9_5 pd9_addr.bit.b5 /* P俋 direction register bit5 */
#define pd9_6 pd9_addr.bit.b6 /* P俋 direction register bit6 */
#define pd9_7 pd9_addr.bit.b7 /* P俋 direction register bit7 */
/*------------------------------------------------------
Port P10
------------------------------------------------------*/
union byte_def p10_addr;
#define p10 p10_addr.byte
#define p10_0 p10_addr.bit.b0 /* Port P10 bit0 */
#define p10_1 p10_addr.bit.b1 /* Port P10 bit1 */
#define p10_2 p10_addr.bit.b2 /* Port P10 bit2 */
#define p10_3 p10_addr.bit.b3 /* Port P10 bit3 */
#define p10_4 p10_addr.bit.b4 /* Port P10 bit4 */
#define p10_5 p10_addr.bit.b5 /* Port P10 bit5 */
#define p10_6 p10_addr.bit.b6 /* Port P10 bit6 */
#define p10_7 p10_addr.bit.b7 /* Port P10 bit7 */
/*------------------------------------------------------
Port P10 direction register
------------------------------------------------------*/
union byte_def pd10_addr;
#define pd10 pd10_addr.byte
#define pd10_0 pd10_addr.bit.b0 /* P10 direction register bit0 */
#define pd10_1 pd10_addr.bit.b1 /* P10 direction register bit1 */
#define pd10_2 pd10_addr.bit.b2 /* P10 direction register bit2 */
#define pd10_3 pd10_addr.bit.b3 /* P10 direction register bit3 */
#define pd10_4 pd10_addr.bit.b4 /* P10 direction register bit4 */
#define pd10_5 pd10_addr.bit.b5 /* P10 direction register bit5 */
#define pd10_6 pd10_addr.bit.b6 /* P10 direction register bit6 */
#define pd10_7 pd10_addr.bit.b7 /* P10 direction register bit7 */
/*------------------------------------------------------
Pull-up control register 0
------------------------------------------------------*/
union byte_def pur0_addr;
#define pur0 pur0_addr.byte
#define pu00 pur0_addr.bit.b0 /* Pull-up P00 to P03 */
#define pu01 pur0_addr.bit.b1 /* Pull-up P04 to P07 */
#define pu02 pur0_addr.bit.b2 /* Pull-up P10 to P13 */
#define pu03 pur0_addr.bit.b3 /* Pull-up P14 to P17 */
#define pu04 pur0_addr.bit.b4 /* Pull-up P20 to P23 */
#define pu05 pur0_addr.bit.b5 /* Pull-up P24 to P27 */
#define pu06 pur0_addr.bit.b6 /* Pull-up P30 to P33 */
#define pu07 pur0_addr.bit.b7 /* Pull-up P34 to P37 */
/*------------------------------------------------------
Pull-up control register 1
------------------------------------------------------*/
union byte_def pur1_addr;
#define pur1 pur1_addr.byte
#define pu10 pur1_addr.bit.b0 /* Pull-up P40 to P43 */
#define pu11 pur1_addr.bit.b1 /* Pull-up P44 to P47 */
#define pu12 pur1_addr.bit.b2 /* Pull-up P50 to P53 */
#define pu13 pur1_addr.bit.b3 /* Pull-up P54 to P57 */
#define pu14 pur1_addr.bit.b4 /* Pull-up P60 to P63 */
#define pu15 pur1_addr.bit.b5 /* Pull-up P64 to P67 */
#define pu16 pur1_addr.bit.b6 /* Pull-up P70 to P73 */
#define pu17 pur1_addr.bit.b7 /* Pull-up P74 to P77 */
/*------------------------------------------------------
Pull-up control register2
------------------------------------------------------*/
union byte_def pur2_addr;
#define pur2 pur2_addr.byte
#define pu20 pur2_addr.bit.b0 /* Pull-up P80 to P83 */
#define pu21 pur2_addr.bit.b1 /* Pull-up P84 to P87 */
#define pu22 pur2_addr.bit.b2 /* Pull-up P90 to P93 */
#define pu23 pur2_addr.bit.b3 /* Pull-up P94 to P97 */
#define pu24 pur2_addr.bit.b4 /* Pull-up P100 to P103 */
#define pu25 pur2_addr.bit.b5 /* Pull-up P104 to P107 */
/*------------------------------------------------------
Port control register
------------------------------------------------------*/
union byte_def pcr_addr;
#define pcr pcr_addr.byte
#define pcr0 pcr_addr.bit.b0 /* Port P1 control register */
union byte_def u0brg_addr;
#define u0brg u0brg_addr.byte
union byte_def u1brg_addr;
#define u1brg u1brg_addr.byte
union byte_def u2brg_addr; /* (61) */
#define u2brg u2brg_addr.byte
union byte_def s3brg_addr; /* (62) */
#define s3brg s3brg_addr.byte
union byte_def s4brg_addr; /* (62) */
#define s4brg s4brg_addr.byte
union byte_def s3trr_addr; /* (62) */
#define s3trr s3trr_addr.byte
union byte_def s4trr_addr; /* (62) */
#define s4trr s4trr_addr.byte
/********************************************************
* declare SFR union *
********************************************************/
/*------------------------------------------------------
DMAi control register union
------------------------------------------------------*/
union{
struct{
char dmbit:1; /* Transfer unit bit select bit */
char dmasl:1; /* Repeat transfer mode select bit */
char dmas:1; /* DMA request bit */
char dmae:1; /* DMA enable bit */
char dsd:1; /* Source address direction select bit */
char dad:1; /* Destination addressdirection select bit */
char b6:1;
char b7:1;
}bit;
char byte;
}dm0con_addr,dm1con_addr;
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define dm0con dm0con_addr.byte
#define dmbit_dm0con dm0con_addr.bit.dmbit /* Transfer unit bit select bit */
#define dmasl_dm0con dm0con_addr.bit.dmasl /* Repeat transfer mode select bit */
#define dmas_dm0con dm0con_addr.bit.dmas /* DMA request bit */
#define dmae_dm0con dm0con_addr.bit.dmae /* DMA enable bit */
#define dsd_dm0con dm0con_addr.bit.dsd /* Source address direction select bit */
#define dad_dm0con dm0con_addr.bit.dad /* Destination addressdirection select bit */
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define dm1con dm1con_addr.byte
#define dmbit_dm1con dm1con_addr.bit.dmbit /* Transfer unit bit select bit */
#define dmasl_dm1con dm1con_addr.bit.dmasl /* Repeat transfer mode select bit */
#define dmas_dm1con dm1con_addr.bit.dmas /* DMA request bit */
#define dmae_dm1con dm1con_addr.bit.dmae /* DMA enable bit */
#define dsd_dm1con dm1con_addr.bit.dsd /* Source address direction select bit */
#define dad_dm1con dm1con_addr.bit.dad /* Destination addressdirection select bit */
/*------------------------------------------------------
interrupt control register (61)
------------------------------------------------------*/
union{
struct{
char ilvl0:1; /* Interrupt priority level select bit */
char ilvl1:1; /* Interrupt priority level select bit */
char ilvl2:1; /* Interrupt priority level select bit */
char ir:1; /* Interrupt request bit */
char pol:1; /* Polarity select bit */
char lvs:1;
char b6:1;
char b7:1;
}bit;
char byte;
}bcnic_addr,dm0ic_addr,dm1ic_addr,kupic_addr,adic_addr,
s2tic_addr,s2ric_addr,s0tic_addr,s0ric_addr,s1tic_addr,s1ric_addr,
s3ic_addr,s4ic_addr,
ta0ic_addr,ta1ic_addr,ta2ic_addr,ta3ic_addr,ta4ic_addr,
tb0ic_addr,tb1ic_addr,tb2ic_addr,tb3ic_addr,tb4ic_addr,tb5ic_addr,
int0ic_addr,int1ic_addr,int2ic_addr,int3ic_addr,int4ic_addr,int5ic_addr;
/*------------------------------------------------------
bit (61)
------------------------------------------------------*/
#define bcnic bcnic_addr.byte
#define ilvl0_bcnic bcnic_addr.bit.ilvl0
#define ilvl1_bcnic bcnic_addr.bit.ilvl1
#define ilvl2_bcnic bcnic_addr.bit.ilvl2
#define ir_bcnic bcnic_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define dm0ic dm0ic_addr.byte
#define ilvl0_dm0ic dm0ic_addr.bit.ilvl0
#define ilvl1_dm0ic dm0ic_addr.bit.ilvl1
#define ilvl2_dm0ic dm0ic_addr.bit.ilvl2
#define ir_dm0ic dm0ic_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define dm1ic dm1ic_addr.byte
#define ilvl0_dm1ic dm1ic_addr.bit.ilvl0
#define ilvl1_dm1ic dm1ic_addr.bit.ilvl1
#define ilvl2_dm1ic dm1ic_addr.bit.ilvl2
#define ir_dm1ic dm1ic_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define kupic kupic_addr.byte
#define ilvl0_kupic kupic_addr.bit.ilvl0
#define ilvl1_kupic kupic_addr.bit.ilvl1
#define ilvl2_kupic kupic_addr.bit.ilvl2
#define ir_kupic kupic_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define adic adic_addr.byte
#define ilvl0_adic adic_addr.bit.ilvl0
#define ilvl1_adic adic_addr.bit.ilvl1
#define ilvl2_adic adic_addr.bit.ilvl2
#define ir_adic adic_addr.bit.ir
/*------------------------------------------------------
bit (61)
------------------------------------------------------*/
#define s2tic s2tic_addr.byte
#define ilvl0_s2tic s2tic_addr.bit.ilvl0
#define ilvl1_s2tic s2tic_addr.bit.ilvl1
#define ilvl2_s2tic s2tic_addr.bit.ilvl2
#define ir_s2tic s2tic_addr.bit.ir
/*------------------------------------------------------
bit (61)
------------------------------------------------------*/
#define s2ric s2ric_addr.byte
#define ilvl0_s2ric s2ric_addr.bit.ilvl0
#define ilvl1_s2ric s2ric_addr.bit.ilvl1
#define ilvl2_s2ric s2ric_addr.bit.ilvl2
#define ir_s2ric s2ric_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define s0tic s0tic_addr.byte
#define ilvl0_s0tic s0tic_addr.bit.ilvl0
#define ilvl1_s0tic s0tic_addr.bit.ilvl1
#define ilvl2_s0tic s0tic_addr.bit.ilvl2
#define ir_s0tic s0tic_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define s0ric s0ric_addr.byte
#define ilvl0_s0ric s0ric_addr.bit.ilvl0
#define ilvl1_s0ric s0ric_addr.bit.ilvl1
#define ilvl2_s0ric s0ric_addr.bit.ilvl2
#define ir_s0ric s0ric_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define s1tic s1tic_addr.byte
#define ilvl0_s1tic s1tic_addr.bit.ilvl0
#define ilvl1_s1tic s1tic_addr.bit.ilvl1
#define ilvl2_s1tic s1tic_addr.bit.ilvl2
#define ir_s1tic s1tic_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define s1ric s1ric_addr.byte
#define ilvl0_s1ric s1ric_addr.bit.ilvl0
#define ilvl1_s1ric s1ric_addr.bit.ilvl1
#define ilvl2_s1ric s1ric_addr.bit.ilvl2
#define ir_s1ric s1ric_addr.bit.ir
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define s3ic s3ic_addr.byte
#define ilvl0_s3ic s3ic_addr.bit.ilvl0
#define ilvl1_s3ic s3ic_addr.bit.ilvl1
#define ilvl2_s3ic s3ic_addr.bit.ilvl2
#define ir_s3ic s3ic_addr.bit.ir
#define pol_s3ic s3ic_addr.bit.pol
#define lvs_s3ic s3ic_addr.bit.lvs
/*------------------------------------------------------
bit
------------------------------------------------------*/
#define s4ic s4ic_addr.byte
#define ilvl0_s4ic s4ic_addr.bit.ilvl0
#define ilvl1_s4ic s4ic_addr.bit.ilvl1
#define ilvl2_s4ic s4ic_addr.bit.ilvl2
#define ir_s4ic s4ic_addr.bit.ir
#define pol_s4ic s4ic_addr.bit.pol
#define lvs_s4ic s4ic_addr.bit.lvs
/*------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -