📄 sfr22.h
字号:
/*********************************************************************************
* *
* file name : definition of M16C/22's SFR *
* *
* Copyright : MITSUBISHI ELECTRIC CORPORATION *
* *
* Version : 1.00 ( 1999-01-08) based REV.B *
* : 1.01 ( 1999-01-19) based REV.C *
* int3ic_addr change *
* fmcr_addr change *
* rump -> pump *
* seg0-6 -> sego0-7 modify *
* ifsr05,ifsr06 add *
* cdc_addr change *
* u2smr2_addr add *
* : 1.02 ( 1999-01-19) based REV.C *
* s2tic,s2ric add *
* : 1.03 ( 2000-06-21) based REV.G (J) *
* ta3ic,ta4ic remove lvs *
* int5ic,int4ic,int3ic,int0ic,int1ic,int2ic remove lvs *
* fmcr0,1,3 -> fmcr0-3 modify *
* symbols and bit symbols described below remove *
* symbols :tail,taih(i=0 to 7) *
* :tbil,tbih(i=0 to 5) *
* bit symbols :ta5ud,ta6ud,ta7ud,ta7p *
* ( in udf1 at 0344h ) *
* :ta0ud,ta1ud,ta2ud,ta3ud,ta4ud,ta2p,ta3p,ta4p *
* ( in udf0 at 0384h ) *
* :pm02,pm10,pm17,cm11,cm12,cm13,rcsp *
* :ifsr05,ifsr06,wdc5,wdc6,abt_u0rb,abt_u1rb *
* :adcon21,adcon22,adcon23 *
* : 1.04 ( 2000-07-21) *
* mr2_tb1mr,mr2_tb2mr,mr2_tb4mr,mr2_tb5mr remove *
*********************************************************************************/
/*
note:
This data is a freeware that SFR for M16C/22 groups (M30220 groups) is described.
Mitsubishi Electric Corporation assumes no responsibility for any damage
that occurred by this data.
*/
/**********************************************************************
* declare SFR address *
**********************************************************************/
#pragma ADDRESS pm0_addr 0004H /* Processor mode register 0 */
#pragma ADDRESS pm1_addr 0005H /* Processor mode register 1 */
#pragma ADDRESS cm0_addr 0006H /* System clock control register 0 */
#pragma ADDRESS cm1_addr 0007H /* System clock control register 1 */
#pragma ADDRESS aier_addr 0009H /* Address match interrupt enable register */
#pragma ADDRESS prcr_addr 000aH /* Protect register */
#pragma ADDRESS wdts_addr 000eH /* Watchdog timer start register */
#pragma ADDRESS wdc_addr 000fH /* Watchdog timer control register */
#pragma ADDRESS rmad0_addr 0010H /* Address match interrupt register 0 */
#pragma ADDRESS rmad1_addr 0014H /* Address match interrupt register 1 */
#pragma ADDRESS sar0_addr 0020H /* DMA0 source pointer */
#pragma ADDRESS dar0_addr 0024H /* DMA0 destination pointer */
#pragma ADDRESS tcr0_addr 0028H /* DMA0 transfer counter */
#pragma ADDRESS dm0con_addr 002cH /* DMA0 control register */
#pragma ADDRESS sar1_addr 0030H /* DMA1 source pointer */
#pragma ADDRESS dar1_addr 0034H /* DMA1 destination pointer */
#pragma ADDRESS tcr1_addr 0038H /* DMA1 transfer counter */
#pragma ADDRESS dm1con_addr 003cH /* DMA1 control register */
#pragma ADDRESS int3ic_addr 0044H /* INT3~ interrupt control register */
#pragma ADDRESS tb5ic_addr 0045H /* Timer B5 interrupt control register */
#pragma ADDRESS tb4ic_addr 0046H /* Timer B4 interrupt control register */
#pragma ADDRESS tb3ic_addr 0047H /* Timer B3 interrupt control register */
#pragma ADDRESS ta7ic_addr 0048H /* Timer A7 interrupt control register */
#pragma ADDRESS ta6ic_addr 0049H /* Timer A6 interrupt control register */
#pragma ADDRESS ta5ic_addr 004aH /* Timer A5 interrupt control register */
#pragma ADDRESS bcnic_addr 004aH /* Bus collision detection interrupt control register */
#pragma ADDRESS dm0ic_addr 004bH /* DMA0 interrupt control register */
#pragma ADDRESS dm1ic_addr 004cH /* DMA1 interrupt control register */
#pragma ADDRESS kupic_addr 004dH /* Key input interrupt control register */
#pragma ADDRESS adic_addr 004eH /* A-D conversion interrupt control register */
#pragma ADDRESS s2tic_addr 004fH /* UART2 transmit interrupt control register */
#pragma ADDRESS s2ric_addr 0050H /* UART2 receive interrupt control register */
#pragma ADDRESS s0tic_addr 0051H /* UART0 transmit interrupt control register */
#pragma ADDRESS s0ric_addr 0052H /* UART0 receive interrupt control register */
#pragma ADDRESS s1tic_addr 0053H /* UART1 transmit interrupt control register */
#pragma ADDRESS s1ric_addr 0054H /* UART1 receive interrupt control register */
#pragma ADDRESS ta0ic_addr 0055H /* Timer A0 interrupt control register */
#pragma ADDRESS ta1ic_addr 0056H /* Timer A1 interrupt control register */
#pragma ADDRESS ta2ic_addr 0057H /* Timer A2 interrupt control register */
#pragma ADDRESS ta3ic_addr 0058H /* Timer A3 interrupt control register */
#pragma ADDRESS int4ic_addr 0058H /* INT4~ interrupt control register */
#pragma ADDRESS ta4ic_addr 0059H /* Timer A4 interrupt control register */
#pragma ADDRESS int5ic_addr 0059H /* INT5~ interrupt control register */
#pragma ADDRESS tb0ic_addr 005aH /* Timer B0 interrupt control register */
#pragma ADDRESS tb1ic_addr 005bH /* Timer B1 interrupt control register */
#pragma ADDRESS tb2ic_addr 005cH /* Timer B2 interrupt control register */
#pragma ADDRESS int0ic_addr 005dH /* INT0~ interrupt control register */
#pragma ADDRESS int1ic_addr 005eH /* INT1~ interrupt control register */
#pragma ADDRESS int2ic_addr 005fH /* INT2~ interrupt control register */
#pragma ADDRESS lram0_addr 0100H /* LCD RAM0 */
#pragma ADDRESS lram1_addr 0101H /* LCD RAM1 */
#pragma ADDRESS lram2_addr 0102H /* LCD RAM2 */
#pragma ADDRESS lram3_addr 0103H /* LCD RAM3 */
#pragma ADDRESS lram4_addr 0104H /* LCD RAM4 */
#pragma ADDRESS lram5_addr 0105H /* LCD RAM5 */
#pragma ADDRESS lram6_addr 0106H /* LCD RAM6 */
#pragma ADDRESS lram7_addr 0107H /* LCD RAM7 */
#pragma ADDRESS lram8_addr 0108H /* LCD RAM8 */
#pragma ADDRESS lram9_addr 0109H /* LCD RAM9 */
#pragma ADDRESS lram10_addr 010aH /* LCD RAM10 */
#pragma ADDRESS lram11_addr 010bH /* LCD RAM11 */
#pragma ADDRESS lram12_addr 010cH /* LCD RAM12 */
#pragma ADDRESS lram13_addr 010dH /* LCD RAM13 */
#pragma ADDRESS lram14_addr 010eH /* LCD RAM14 */
#pragma ADDRESS lram15_addr 010fH /* LCD RAM15 */
#pragma ADDRESS lram16_addr 0110H /* LCD RAM16 */
#pragma ADDRESS lram17_addr 0111H /* LCD RAM17 */
#pragma ADDRESS lram18_addr 0112H /* LCD RAM18 */
#pragma ADDRESS lram19_addr 0113H /* LCD RAM19 */
#pragma ADDRESS lram20_addr 0114H /* LCD RAM20 */
#pragma ADDRESS lram21_addr 0115H /* LCD RAM21 */
#pragma ADDRESS lram22_addr 0116H /* LCD RAM22 */
#pragma ADDRESS lram23_addr 0117H /* LCD RAM23 */
#pragma ADDRESS lcdm_addr 0120H /* LCD mode register */
#pragma ADDRESS seg_addr 0122H /* Segment output enable register */
#pragma ADDRESS lcdtim_addr 0124H /* LCD frame frequency counter */
#pragma ADDRESS kupm_addr 0126H /* Key input mode register */
#pragma ADDRESS tabsr1_addr 0340H /* Count start flag 1 */
#pragma ADDRESS onsf1_addr 0342H /* One-shot start flag 1 */
#pragma ADDRESS trgsr1_addr 0343H /* Trigger select register 1 */
#pragma ADDRESS udf1_addr 0344H /* Up/down flag 1 */
#pragma ADDRESS ta5_addr 0346H /* Timer A5 register */
#pragma ADDRESS ta6_addr 0348H /* Timer A6 register */
#pragma ADDRESS ta7_addr 034aH /* Timer A7 register */
#pragma ADDRESS tb3_addr 0350H /* Timer B3 register */
#pragma ADDRESS tb4_addr 0352H /* Timer B4 register */
#pragma ADDRESS tb5_addr 0354H /* Timer B5 register */
#pragma ADDRESS ta5mr_addr 0356H /* Timer A5 mode register */
#pragma ADDRESS ta6mr_addr 0357H /* Timer A6 mode register */
#pragma ADDRESS ta7mr_addr 0358H /* Timer A7 mode register */
#pragma ADDRESS tb3mr_addr 035bH /* Timer B3 mode register */
#pragma ADDRESS tb4mr_addr 035cH /* Timer B4 mode register */
#pragma ADDRESS tb5mr_addr 035dH /* Timer B5 mode register */
#pragma ADDRESS ifsr0_addr 035eH /* Interrupt request cause select register 0 */
#pragma ADDRESS ifsr1_addr 035fH /* Interrupt request cause select register 1 */
#pragma ADDRESS cdcc_addr 0360H /* Clock divided counter control register */
#pragma ADDRESS cdc_addr 036eH /* Clock divided counter */
#pragma ADDRESS u2smr2_addr 0376H /* UART2 special mode register 2 */
#pragma ADDRESS u2smr_addr 0377H /* UART2 special mode register */
#pragma ADDRESS u2mr_addr 0378H /* UART2 transmit/receive mode register */
#pragma ADDRESS u2brg_addr 0379H /* UART2 bit rate generator */
#pragma ADDRESS u2tb_addr 037aH /* UART2 transmit buffer register */
#pragma ADDRESS u2c0_addr 037cH /* UART2 transmit/receive control register 0 */
#pragma ADDRESS u2c1_addr 037dH /* UART2 transmit/receive control register 1 */
#pragma ADDRESS u2rb_addr 037eH /* UART2 receive buffer register */
#pragma ADDRESS tabsr0_addr 0380H /* Count start flag 0 */
#pragma ADDRESS cpsrf_addr 0381H /* Clock prescaler reset flag */
#pragma ADDRESS onsf0_addr 0382H /* One-shot start flag 0 */
#pragma ADDRESS trgsr0_addr 0383H /* Trigger select register 0 */
#pragma ADDRESS udf0_addr 0384H /* Up/down flag 0 */
#pragma ADDRESS ta0_addr 0386H /* Timer A0 register */
#pragma ADDRESS ta1_addr 0388H /* Timer A1 register */
#pragma ADDRESS ta2_addr 038aH /* Timer A2 register */
#pragma ADDRESS ta3_addr 038cH /* Timer A3 register */
#pragma ADDRESS ta4_addr 038eH /* Timer A4 register */
#pragma ADDRESS tb0_addr 0390H /* Timer B0 register */
#pragma ADDRESS tb1_addr 0392H /* Timer B1 register */
#pragma ADDRESS tb2_addr 0394H /* Timer B2 register */
#pragma ADDRESS ta0mr_addr 0396H /* Timer A0 mode register */
#pragma ADDRESS ta1mr_addr 0397H /* Timer A1 mode register */
#pragma ADDRESS ta2mr_addr 0398H /* Timer A2 mode register */
#pragma ADDRESS ta3mr_addr 0399H /* Timer A3 mode register */
#pragma ADDRESS ta4mr_addr 039aH /* Timer A4 mode register */
#pragma ADDRESS tb0mr_addr 039bH /* Timer B0 mode register */
#pragma ADDRESS tb1mr_addr 039cH /* Timer B1 mode register */
#pragma ADDRESS tb2mr_addr 039dH /* Timer B2 mode register */
#pragma ADDRESS u0mr_addr 03a0H /* UART0 transmit/receive mode register */
#pragma ADDRESS u0brg_addr 03a1H /* UART0 bit rate generator */
#pragma ADDRESS u0tb_addr 03a2H /* UART0 transmit buffer register */
#pragma ADDRESS u0c0_addr 03a4H /* UART0 transmit/receive control register 0 */
#pragma ADDRESS u0c1_addr 03a5H /* UART0 transmit/receive control register 1 */
#pragma ADDRESS u0rb_addr 03a6H /* UART0 receive buffer register */
#pragma ADDRESS u1mr_addr 03a8H /* UART1 transmit/receive mode register */
#pragma ADDRESS u1brg_addr 03a9H /* UART1 bit rate generator */
#pragma ADDRESS u1tb_addr 03aaH /* UART1 transmit buffer register */
#pragma ADDRESS u1c0_addr 03acH /* UART1 transmit/receive control register 0 */
#pragma ADDRESS u1c1_addr 03adH /* UART1 transmit/receive control register 1 */
#pragma ADDRESS u1rb_addr 03aeH /* UART1 receive buffer register */
#pragma ADDRESS ucon_addr 03b0H /* UART transmit/receive control register 2 */
#pragma ADDRESS fmcr_addr 03b4H /* Flash memory control register */
#pragma ADDRESS dm0sl_addr 03b8H /* DMA0 cause select register */
#pragma ADDRESS dm1sl_addr 03baH /* DMA1 cause select register */
#pragma ADDRESS ad0_addr 03c0H /* A-D register 0 */
#pragma ADDRESS ad1_addr 03c2H /* A-D register 1 */
#pragma ADDRESS ad2_addr 03c4H /* A-D register 2 */
#pragma ADDRESS ad3_addr 03c6H /* A-D register 3 */
#pragma ADDRESS ad4_addr 03c8H /* A-D register 4 */
#pragma ADDRESS ad5_addr 03caH /* A-D register 5 */
#pragma ADDRESS ad6_addr 03ccH /* A-D register 6 */
#pragma ADDRESS ad7_addr 03ceH /* A-D register 7 */
#pragma ADDRESS adcon2_addr 03d4H /* A-D control register 2 */
#pragma ADDRESS adcon0_addr 03d6H /* A-D control register 0 */
#pragma ADDRESS adcon1_addr 03d7H /* A-D control register 1 */
#pragma ADDRESS da0_addr 03d8H /* D-A register 0 */
#pragma ADDRESS da1_addr 03daH /* D-A register 1 */
#pragma ADDRESS dacon_addr 03dcH /* D-A control register */
#pragma ADDRESS da2_addr 03deH /* D-A register 2 */
#pragma ADDRESS p0_addr 03e0H /* Port P0 register */
#pragma ADDRESS p1_addr 03e1H /* Port P1 register */
#pragma ADDRESS pd0_addr 03e2H /* Port P0 direction register */
#pragma ADDRESS pd1_addr 03e3H /* Port P1 direction register */
#pragma ADDRESS p2_addr 03e4H /* Port P2 register */
#pragma ADDRESS p3_addr 03e5H /* Port P3 register */
#pragma ADDRESS pd2_addr 03e6H /* Port P2 direction register */
#pragma ADDRESS pd3_addr 03e7H /* Port P3 direction register */
#pragma ADDRESS p4_addr 03e8H /* Port P4 register */
#pragma ADDRESS p5_addr 03e9H /* Port P5 register */
#pragma ADDRESS pd4_addr 03eaH /* Port P4 direction register */
#pragma ADDRESS pd5_addr 03ebH /* Port P5 direction register */
#pragma ADDRESS p6_addr 03ecH /* Port P6 register */
#pragma ADDRESS p7_addr 03edH /* Port P7 register */
#pragma ADDRESS pd6_addr 03eeH /* Port P6 direction register */
#pragma ADDRESS pd7_addr 03efH /* Port P7 direction register */
#pragma ADDRESS p8_addr 03f0H /* Port P8 register */
#pragma ADDRESS p9_addr 03f1H /* Port P9 register */
#pragma ADDRESS pd8_addr 03f2H /* Port P8 direction register */
#pragma ADDRESS pd9_addr 03f3H /* Port P9 direction register */
#pragma ADDRESS p10_addr 03f4H /* Port P10 register */
#pragma ADDRESS p11_addr 03f5H /* Port P11 register */
#pragma ADDRESS pd10_addr 03f6H /* Port P10 direction register */
#pragma ADDRESS pd11_addr 03f7H /* Port P11 direction register */
#pragma ADDRESS p12_addr 03f8H /* Port P12 register */
#pragma ADDRESS p13_addr 03f9H /* Port P13 register */
#pragma ADDRESS pd12_addr 03faH /* Port P12 direction register */
#pragma ADDRESS pd13_addr 03fbH /* Port P13 direction register */
#pragma ADDRESS pur0_addr 03fcH /* Pull-up control register 0 */
#pragma ADDRESS pur1_addr 03fdH /* Pull-up control register 1 */
#pragma ADDRESS pur2_addr 03feH /* Pull-up control register 2 */
#pragma ADDRESS rtp_addr 03ffH /* Real time port control register */
/********************************************************
* declare SFR char *
********************************************************/
unsigned char da0_addr; /* D-A register 0 */
#define da0 da0_addr
unsigned char da1_addr; /* D-A register 1 */
#define da1 da1_addr
unsigned char da2_addr; /* D-A register 2 */
#define da2 da2_addr
unsigned char cdc_addr; /* Clock divided counter */
#define cdc cdc_addr
/*--------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -