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

📄 sfr28.h

📁 基于瑞萨 M16C 的最新版本 IIC 通信
💻 H
📖 第 1 页 / 共 5 页
字号:
#pragma ADDRESS     ictb2_addr  034dH       /* Timer B2 interrupt occurrences frequency set counter */

#pragma ADDRESS     pdrf_addr   034eH       /* Position-data-retain function register */

#pragma ADDRESS     ifsr2a_addr 035eH       /* Interrupt cause select register 2 */

#pragma ADDRESS     ifsr_addr   035fH       /* Interrupt cause select register */

#pragma ADDRESS     s3trr_addr  0360H       /* SI/O3 transmit/receive register */

#pragma ADDRESS     s3c_addr    0362H       /* SI/O3 control register */

#pragma ADDRESS     s3brg_addr  0363H       /* SI/O3 bit rate generator */

#pragma ADDRESS     s4trr_addr  0364H       /* SI/O4 transmit/receive register */

#pragma ADDRESS     s4c_addr    0366H       /* SI/O4 control register */

#pragma ADDRESS     s4brg_addr  0367H       /* SI/O4 bit rate generator */

#pragma ADDRESS     u2smr4_addr 0374H       /* UART2 special mode register 4 */

#pragma ADDRESS     u2smr3_addr 0375H       /* UART2 special mode register 3 */

#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     tabsr_addr  0380H       /* Count start flag */

#pragma ADDRESS     cpsrf_addr  0381H       /* Clock prescaler reset flag */

#pragma ADDRESS     onsf_addr   0382H       /* One-shot start flag */

#pragma ADDRESS     trgsr_addr  0383H       /* Trigger select register */

#pragma ADDRESS     udf_addr    0384H       /* Up/down flag */

#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     tb2sc_addr  039eH		/* Timer B2 special 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     dm0sl_addr  03b8H       /* DMA0 request cause select register */

#pragma ADDRESS     dm1sl_addr  03baH       /* DMA1 request 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     adtrgcon_addr 03d2H     /* A/D trigger control register */

#pragma ADDRESS     adstat0_addr 03d3H      /* A/D convert status register 0 */

#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     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     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     pd10_addr   03f6H       /* Port P10 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     pcr_addr    03ffH       /* Port control register */

/********************************************************
*   declare SFR bit                                     *
********************************************************/
struct bit_def {
        char    b0:1;
        char    b1:1;
        char    b2:1;
        char    b3:1;
        char    b4:1;
        char    b5:1;
        char    b6:1;
        char    b7:1;
};
union byte_def{
    struct bit_def bit;
    char    byte;
};

/*------------------------------------------------------
    Processor mode register 0
------------------------------------------------------*/
union byte_def pm0_addr;
#define     pm0     pm0_addr.byte

#define     pm03        pm0_addr.bit.b3     /* Software reset bit */

/*------------------------------------------------------
    Processor mode register 1
------------------------------------------------------*/
union byte_def pm1_addr;
#define     pm1     pm1_addr.byte

#define     pm10        pm1_addr.bit.b0     /* Flash data block access bit */
#define     pm12        pm1_addr.bit.b2     /* Watchdog timer function select bit */
#define     pm17        pm1_addr.bit.b7     /* Wait bit */

/*------------------------------------------------------
    System clock control register 0
------------------------------------------------------*/
union byte_def cm0_addr;
#define     cm0     cm0_addr.byte

#define     cm02        cm0_addr.bit.b2     /* WAIT Mode peripheral function clock stop bit */
#define     cm03        cm0_addr.bit.b3     /* Xcin-Xcout drive capacity select bit */
#define     cm04        cm0_addr.bit.b4     /* Port Xc select bit */
#define     cm05        cm0_addr.bit.b5     /* Main clock stop bit */
#define     cm06        cm0_addr.bit.b6     /* Main clock division select bit 0 */
#define     cm07        cm0_addr.bit.b7     /* System clock select bit */

/*------------------------------------------------------
    System clock control register 1
------------------------------------------------------*/
union byte_def cm1_addr;
#define     cm1     cm1_addr.byte

#define     cm10        cm1_addr.bit.b0     /* All clock stop control bit */
#define     cm11        cm1_addr.bit.b1     /* System clock select bit 1 */
#define     cm15        cm1_addr.bit.b5     /* Xin-Xout drive capacity select bit */
#define     cm16        cm1_addr.bit.b6     /* Main clock division select bit 1 */
#define     cm17        cm1_addr.bit.b7     /* Main clock division select bit 1 */

/*------------------------------------------------------
    Address match interrupt enable register
------------------------------------------------------*/
union byte_def aier_addr;
#define     aier        aier_addr.byte

#define     aier0       aier_addr.bit.b0    /* Address match interrupt 0 enable bit */
#define     aier1       aier_addr.bit.b1    /* Address match interrupt 1 enable bit */

/*------------------------------------------------------
    Protect register
------------------------------------------------------*/
union byte_def prcr_addr;
#define     prcr        prcr_addr.byte

#define     prc0        prcr_addr.bit.b0    /* Enable write to CM0,CM1,CM2,ROCR,PLC0 and PCLKR registers */
#define     prc1        prcr_addr.bit.b1    /* Enable write to PM0,PM1,PM2,TB2SC,INVC0 and INVC1 registers */
#define     prc2        prcr_addr.bit.b2    /* Enable write to PD9,PACR and S4C registers */
#define     prc3        prcr_addr.bit.b3    /* Enable write to VCR2 and D4INT registers */

/*------------------------------------------------------
    Oscillation steop detection register
------------------------------------------------------*/
union byte_def cm2_addr;
#define     cm2         cm2_addr.byte

⌨️ 快捷键说明

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