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

📄 mcf5407.h

📁 motorola 针对coldfire 5275 评估板的Dbug bootloader源程序
💻 H
📖 第 1 页 / 共 5 页
字号:
#define MCF5407_RD_UART1_MODCTL(IMMP)   Mcf5407_iord(IMMP,MCF5407_UART1_MODCTL,8)  
#define MCF5407_RD_UART1_TXLVL(IMMP)    Mcf5407_iord(IMMP,MCF5407_UART1_TXLVL,8)   
#define MCF5407_RD_UART1_USR(IMMP)      Mcf5407_iord(IMMP,MCF5407_UART1_USR,8)
#define MCF5407_RD_UART1_RSMP(IMMP)     Mcf5407_iord(IMMP,MCF5407_UART1_RSMP,8)    
#define MCF5407_RD_UART1_TSPC(IMMP)     Mcf5407_iord(IMMP,MCF5407_UART1_TSPC,8)    
#define MCF5407_RD_UART1_URB(IMMP)      Mcf5407_iord(IMMP,MCF5407_UART1_URB,8)
#define MCF5407_RD_UART1_UIPCR(IMMP)    Mcf5407_iord(IMMP,MCF5407_UART1_UIPCR,8)
#define MCF5407_RD_UART1_UISR(IMMP)     Mcf5407_iord(IMMP,MCF5407_UART1_UISR,8)
#define MCF5407_RD_UART1_UBG1(IMMP)     Mcf5407_iord(IMMP,MCF5407_UART1_UBG1,8)
#define MCF5407_RD_UART1_UBG2(IMMP)     Mcf5407_iord(IMMP,MCF5407_UART1_UBG2,8)
#define MCF5407_RD_UART1_UIVR(IMMP)     Mcf5407_iord(IMMP,MCF5407_UART1_UIVR,8)
#define MCF5407_RD_UART1_UIP(IMMP)      Mcf5407_iord(IMMP,MCF5407_UART1_UIP,8)

/* Write access macros for general use */
#define MCF5407_WR_UART0_UMR(IMMP,DATA) \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UMR,8,DATA)
#define MCF5407_WR_UART0_UCSR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UCSR,8,DATA)
#define MCF5407_WR_UART0_UCR(IMMP,DATA) \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UCR,8,DATA)
#define MCF5407_WR_UART0_UTB(IMMP,DATA) \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UTB,8,DATA)
#define MCF5407_WR_UART0_UACR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UACR,8,DATA)
#define MCF5407_WR_UART0_UIMR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UIMR,8,DATA)
#define MCF5407_WR_UART0_UBG1(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UBG1,8,DATA)
#define MCF5407_WR_UART0_UBG2(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UBG2,8,DATA)
#define MCF5407_WR_UART0_UIVR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UIVR,8,DATA)
#define MCF5407_WR_UART0_UOP1(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UOP1,8,DATA)
#define MCF5407_WR_UART0_UOP0(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART0_UOP0,8,DATA)

#define MCF5407_WR_UART1_UMR(IMMP,DATA) \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UMR,8,DATA)
#define MCF5407_WR_UART1_RXLVL(IMMP,DATA)   \
    Mcf5407_iowr(IMMP,MCF5407_UART1_RXLVL,8,DATA)
#define MCF5407_WR_UART1_MODCTL(IMMP,DATA)  \
    Mcf5407_iowr(IMMP,MCF5407_UART1_MODCTL,8,DATA)
#define MCF5407_WR_UART1_TXLVL(IMMP,DATA)   \
    Mcf5407_iowr(IMMP,MCF5407_UART1_TXLVL,8,DATA)  
#define MCF5407_WR_UART1_UCSR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UCSR,8,DATA)
#define MCF5407_WR_UART1_UCR(IMMP,DATA) \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UCR,8,DATA)
#define MCF5407_WR_UART1_UTB(IMMP,DATA) \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UTB,8,DATA)
#define MCF5407_WR_UART1_UACR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UACR,8,DATA)
#define MCF5407_WR_UART1_UIMR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UIMR,8,DATA)
#define MCF5407_WR_UART1_UBG1(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UBG1,8,DATA)
#define MCF5407_WR_UART1_UBG2(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UBG2,8,DATA)
#define MCF5407_WR_UART1_UIVR(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UIVR,8,DATA)
#define MCF5407_WR_UART1_UOP1(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UOP1,8,DATA)
#define MCF5407_WR_UART1_UOP0(IMMP,DATA)    \
    Mcf5407_iowr(IMMP,MCF5407_UART1_UOP0,8,DATA)

#define MCF5407_UART_UMR1_RXRTS             (0x80)
#define MCF5407_UART_UMR1_RXIRQ             (0x40)
#define MCF5407_UART_UMR1_ERR               (0x20)
#define MCF5407_UART_UMR1_PM1               (0x10)
#define MCF5407_UART_UMR1_PM0               (0x08)
#define MCF5407_UART_UMR1_PMT               (0x04)
#define MCF5407_UART_UMR1_BC1               (0x02)
#define MCF5407_UART_UMR1_BC0               (0x01)
#define MCF5407_UART_UMR1_PM_MULTI_ADDR     (0x1C)
#define MCF5407_UART_UMR1_PM_MULTI_DATA     (0x18)
#define MCF5407_UART_UMR1_PM_NONE           (0x10)
#define MCF5407_UART_UMR1_PM_FORCE_HI       (0x0C)
#define MCF5407_UART_UMR1_PM_FORCE_LO       (0x08)
#define MCF5407_UART_UMR1_PM_ODD            (0x04)
#define MCF5407_UART_UMR1_PM_EVEN           (0x00)
#define MCF5407_UART_UMR1_BC_5              (0x00)
#define MCF5407_UART_UMR1_BC_6              (0x01)
#define MCF5407_UART_UMR1_BC_7              (0x02)
#define MCF5407_UART_UMR1_BC_8              (0x03)

#define MCF5407_UART_UMR2_CM1               (0x80)
#define MCF5407_UART_UMR2_CM0               (0x40)
#define MCF5407_UART_UMR2_TXRTS             (0x20)
#define MCF5407_UART_UMR2_TXCTS             (0x10)
#define MCF5407_UART_UMR2_SB3               (0x08)
#define MCF5407_UART_UMR2_SB2               (0x04)
#define MCF5407_UART_UMR2_SB1               (0x02)
#define MCF5407_UART_UMR2_SB0               (0x01)
#define MCF5407_UART_UMR2_CM_NORMAL         (0x00)
#define MCF5407_UART_UMR2_CM_ECHO           (0x40)
#define MCF5407_UART_UMR2_CM_LOCAL_LOOP     (0x80)
#define MCF5407_UART_UMR2_CM_REMOTE_LOOP    (0xC0)
#define MCF5407_UART_UMR2_STOP_BITS_1       (0x07)
#define MCF5407_UART_UMR2_STOP_BITS_15      (0x08)
#define MCF5407_UART_UMR2_STOP_BITS_2       (0x0F)

#define MCF5407_UART_MODCTL_ACRB            (0x80)  
#define MCF5407_UART_MODCTL_AWR             (0x40)  
#define MCF5407_UART_MODCTL_DSL_00          (0x00)  
#define MCF5407_UART_MODCTL_DSL_01          (0x10)
#define MCF5407_UART_MODCTL_DSL_10          (0x20)
#define MCF5407_UART_MODCTL_DSL_11          (0x30)
#define MCF5407_UART_MODCTL_DTS1            (0x08)
#define MCF5407_UART_MODCTL_SHDIR           (0x04)
#define MCF5407_UART_MODCTL_MODE_00         (0x00)
#define MCF5407_UART_MODCTL_MODE_01         (0x01)
#define MCF5407_UART_MODCTL_MODE_10         (0x02)
#define MCF5407_UART_MODCTL_MODE_11         (0x03)

#define MCF5407_UART_USR_RB                 (0x80)
#define MCF5407_UART_USR_FE                 (0x40)
#define MCF5407_UART_USR_PE                 (0x20)
#define MCF5407_UART_USR_OE                 (0x10)
#define MCF5407_UART_USR_TXEMP              (0x08)
#define MCF5407_UART_USR_TXRDY              (0x04)
#define MCF5407_UART_USR_FFULL              (0x02)
#define MCF5407_UART_USR_RXRDY              (0x01)

#define MCF5407_UART_UCSR_RCS3              (0x80)
#define MCF5407_UART_UCSR_RCS2              (0x40)
#define MCF5407_UART_UCSR_RCS1              (0x20)
#define MCF5407_UART_UCSR_RCS0              (0x10)
#define MCF5407_UART_UCSR_TCS3              (0x08)
#define MCF5407_UART_UCSR_TCS2              (0x04)
#define MCF5407_UART_UCSR_TCS1              (0x02)
#define MCF5407_UART_UCSR_TCS0              (0x01)
#define MCF5407_UART_UCSR_RX_TIMER          (0xD0)
#define MCF5407_UART_UCSR_RX_16EXT          (0xE0)
#define MCF5407_UART_UCSR_RX_1EXT           (0xF0)
#define MCF5407_UART_UCSR_TX_TIMER          (0x0D)
#define MCF5407_UART_UCSR_TX_16EXT          (0x0E)
#define MCF5407_UART_UCSR_TX_1EXT           (0x0F)

#define MCF5407_UART_UCR_MISC2              (0x40)
#define MCF5407_UART_UCR_MISC1              (0x20)
#define MCF5407_UART_UCR_MISC0              (0x10)
#define MCF5407_UART_UCR_TC1                (0x08)
#define MCF5407_UART_UCR_TC0                (0x04)
#define MCF5407_UART_UCR_RC1                (0x02)
#define MCF5407_UART_UCR_RC0                (0x01)
#define MCF5407_UART_UCR_NONE               (0x00)
#define MCF5407_UART_UCR_STOP_BREAK         (0x70)
#define MCF5407_UART_UCR_START_BREAK        (0x60)
#define MCF5407_UART_UCR_RESET_BKCHGINT     (0x50)
#define MCF5407_UART_UCR_RESET_ERROR        (0x40)
#define MCF5407_UART_UCR_RESET_TX           (0x30)
#define MCF5407_UART_UCR_RESET_RX           (0x20)
#define MCF5407_UART_UCR_RESET_MR           (0x10)
#define MCF5407_UART_UCR_TX_DISABLED        (0x08)
#define MCF5407_UART_UCR_TX_ENABLED         (0x04)
#define MCF5407_UART_UCR_RX_DISABLED        (0x02)
#define MCF5407_UART_UCR_RX_ENABLED         (0x01)

#define MCF5407_UART_UIPCR_COS              (0x10)
#define MCF5407_UART_UIPCR_CTS              (0x01)

#define MCF5407_UART_UACR_IEC               (0x01)

#define MCF5407_UART_UISR_COS               (0x80)
#define MCF5407_UART_UISR_DB                (0x04)
#define MCF5407_UART_UISR_RXRDY             (0x02)
#define MCF5407_UART_UISR_TXRDY             (0x01)

#define MCF5407_UART_UIMR_COS               (0x80)
#define MCF5407_UART_UIMR_DB                (0x04)
#define MCF5407_UART_UIMR_FFULL             (0x02)
#define MCF5407_UART_UIMR_TXRDY             (0x01)

#define MCF5407_UART_UIP_CTS                (0x01)

#define MCF5407_UART_UOP1_RTS               (0x01)

#define MCF5407_UART_UOP0_RTS               (0x01)

/***********************************************************************/
/*  M-BUS Registers                                                    */
/***********************************************************************/

#define MCF5407_I2C_IADR        (0x0280)
#define MCF5407_I2C_IFDR        (0x0284)
#define MCF5407_I2C_I2CR        (0x0288)
#define MCF5407_I2C_I2SR        (0x028C)
#define MCF5407_I2C_I2DR        (0x0290)

/* Read access macros for general use */
#define MCF5407_RD_I2C_IADR(IMMP)       Mcf5407_iord(IMMP,MCF5407_I2C_IADR,8)
#define MCF5407_RD_I2C_IFDR(IMMP)       Mcf5407_iord(IMMP,MCF5407_I2C_IFDR,8)
#define MCF5407_RD_I2C_I2CR(IMMP)       Mcf5407_iord(IMMP,MCF5407_I2C_I2CR,8)
#define MCF5407_RD_I2C_I2SR(IMMP)       Mcf5407_iord(IMMP,MCF5407_I2C_I2SR,8)
#define MCF5407_RD_I2C_I2DR(IMMP)       Mcf5407_iord(IMMP,MCF5407_I2C_I2DR,8)

/* Write access macros for general use */
#define MCF5407_WR_I2C_IADR(IMMP,DATA)  \
    Mcf5407_iowr(IMMP,MCF5407_I2C_IADR,8,DATA)
#define MCF5407_WR_I2C_IFDR(IMMP,DATA)  \
    Mcf5407_iowr(IMMP,MCF5407_I2C_IFDR,8,DATA)
#define MCF5407_WR_I2C_I2CR(IMMP,DATA)  \
    Mcf5407_iowr(IMMP,MCF5407_I2C_I2CR,8,DATA)
#define MCF5407_WR_I2C_I2SR(IMMP,DATA)  \
    Mcf5407_iowr(IMMP,MCF5407_I2C_I2SR,8,DATA)
#define MCF5407_WR_I2C_I2DR(IMMP,DATA)  \
    Mcf5407_iowr(IMMP,MCF5407_I2C_I2DR,8,DATA)

#define MCF5407_I2C_IADR_ADDR(x)    (((x)&0x7F)<<0x01)

#define MCF5407_I2C_IFDR_MBC(a) ((a)&0x3F)  /* M-Bus Clock Rate */  

#define MCF5407_I2C_I2CR_MEN        (0x80)  /* M-Bus Enable */          
#define MCF5407_I2C_I2CR_MIEN       (0x40)  /* M-Bus Interrupt Enable */    
#define MCF5407_I2C_I2CR_MSTA       (0x20)  /* Master/Slave Mode Select Bit */  
#define MCF5407_I2C_I2CR_MTX        (0x10)  /* Transmit/Rcv Mode Select Bit */  
#define MCF5407_I2C_I2CR_TXAK       (0x08)  /* Transmit Acknowledge Enable */   
#define MCF5407_I2C_I2CR_RSTA       (0x04)  /* Repeat Start */          

#define MCF5407_I2C_I2SR_MCF        (0x80)  /* Data Transfer Complete */    
#define MCF5407_I2C_I2SR_MAAS       (0x40)  /* Addressed as a Slave */      
#define MCF5407_I2C_I2SR_MBB        (0x20)  /* Bus Busy */          
#define MCF5407_I2C_I2SR_MAL        (0x10)  /* Arbitration Lost */      
#define MCF5407_I2C_I2SR_SRW        (0x04)  /* Slave Transmit */        
#define MCF5407_I2C_I2SR_MIF        (0x02)  /* M-Bus Interrupt */       

⌨️ 快捷键说明

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