mcf5272.h
来自「umon bootloader source code, support mip」· C头文件 代码 · 共 1,559 行 · 第 1/5 页
H
1,559 行
#define MCF5272_GPIO_DDR0_OUTPUT ( 0x01)
#define MCF5272_GPIO_DAT15 ( 0x80)
#define MCF5272_GPIO_DAT14 ( 0x40)
#define MCF5272_GPIO_DAT13 ( 0x20)
#define MCF5272_GPIO_DAT12 ( 0x10)
#define MCF5272_GPIO_DAT11 ( 0x08)
#define MCF5272_GPIO_DAT10 ( 0x04)
#define MCF5272_GPIO_DAT9 ( 0x02)
#define MCF5272_GPIO_DAT8 ( 0x01)
#define MCF5272_GPIO_DAT7 ( 0x80)
#define MCF5272_GPIO_DAT6 ( 0x40)
#define MCF5272_GPIO_DAT5 ( 0x20)
#define MCF5272_GPIO_DAT4 ( 0x10)
#define MCF5272_GPIO_DAT3 ( 0x08)
#define MCF5272_GPIO_DAT2 ( 0x04)
#define MCF5272_GPIO_DAT1 ( 0x02)
#define MCF5272_GPIO_DAT0 ( 0x01)
/**********************************************************************
*
* QSPI Module Registers Description
*
***********************************************************************/
/* Offsets of the registers from the MBAR */
#define MCF5272_QSPI_QMR (0x00A0)
#define MCF5272_QSPI_QDLYR (0x00A4)
#define MCF5272_QSPI_QWR (0x00A8)
#define MCF5272_QSPI_QIR (0x00AC)
#define MCF5272_QSPI_QAR (0x00B0)
#define MCF5272_QSPI_QDR (0x00B4)
/* Read access macros for general use */
#define MCF5272_RD_QSPI_QMR(IMMP) \
Mcf5272_iord16(IMMP,MCF5272_QSPI_QMR)
#define MCF5272_RD_QSPI_QDLYR(IMMP) \
Mcf5272_iord16(IMMP,MCF5272_QSPI_QDLYR)
#define MCF5272_RD_QSPI_QWR(IMMP) \
Mcf5272_iord16(IMMP,MCF5272_QSPI_QWR)
#define MCF5272_RD_QSPI_QIR(IMMP) \
Mcf5272_iord16(IMMP,MCF5272_QSPI_QIR)
#define MCF5272_RD_QSPI_QAR(IMMP) \
Mcf5272_iord16(IMMP,MCF5272_QSPI_QAR)
#define MCF5272_RD_QSPI_QDR(IMMP) \
Mcf5272_iord16(IMMP,MCF5272_QSPI_QDR)
/* Write access macros for general use */
#define MCF5272_WR_QSPI_QMR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_QSPI_QMR,DATA)
#define MCF5272_WR_QSPI_QDLYR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_QSPI_QDLYR,DATA)
#define MCF5272_WR_QSPI_QWR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_QSPI_QWR,DATA)
#define MCF5272_WR_QSPI_QIR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_QSPI_QIR,DATA)
#define MCF5272_WR_QSPI_QAR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_QSPI_QAR,DATA)
#define MCF5272_WR_QSPI_QDR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_QSPI_QDR,DATA)
/**********************************************************************
*
* PWM Module Registers Description
*
***********************************************************************/
/* Offsets of the registers from the MBAR */
#define MCF5272_PWM_PWMCR1 (0x00C0)
#define MCF5272_PWM_PWMCR2 (0x00C4)
#define MCF5272_PWM_PWMCR3 (0x00C8)
#define MCF5272_PWM_PWMWD1 (0x00D0)
#define MCF5272_PWM_PWMWD2 (0x00D4)
#define MCF5272_PWM_PWMWD3 (0x00D8)
/* Read access macros for general use */
#define MCF5272_RD_PWM_PWMCR1(IMMP) Mcf5272_iord8(IMMP,MCF5272_PWM_PWMCR1)
#define MCF5272_RD_PWM_PWMCR2(IMMP) Mcf5272_iord8(IMMP,MCF5272_PWM_PWMCR2)
#define MCF5272_RD_PWM_PWMCR3(IMMP) Mcf5272_iord8(IMMP,MCF5272_PWM_PWMCR3)
#define MCF5272_RD_PWM_PWMWD1(IMMP) Mcf5272_iord8(IMMP,MCF5272_PWM_PWMWD1)
#define MCF5272_RD_PWM_PWMWD2(IMMP) Mcf5272_iord8(IMMP,MCF5272_PWM_PWMWD2)
#define MCF5272_RD_PWM_PWMWD3(IMMP) Mcf5272_iord8(IMMP,MCF5272_PWM_PWMWD3)
/* Write access macros for general use */
#define MCF5272_WR_PWM_PWMCR1(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_PWM_PWMCR1,DATA)
#define MCF5272_WR_PWM_PWMCR2(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_PWM_PWMCR2,DATA)
#define MCF5272_WR_PWM_PWMCR3(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_PWM_PWMCR3,DATA)
#define MCF5272_WR_PWM_PWMWD1(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_PWM_PWMWD1,DATA)
#define MCF5272_WR_PWM_PWMWD2(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_PWM_PWMWD2,DATA)
#define MCF5272_WR_PWM_PWMWD3(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_PWM_PWMWD3,DATA)
/**********************************************************************
*
* DMA Module Registers Description
*
***********************************************************************/
/* Offsets of the registers from the MBAR */
#define MCF5272_DMA_DCMR (0x00E0)
#define MCF5272_DMA_DCIR (0x00E6)
#define MCF5272_DMA_DBCR (0x00E8)
#define MCF5272_DMA_DSAR (0x00EC)
#define MCF5272_DMA_DDAR (0x00F0)
/* Read access macros for general use */
#define MCF5272_RD_DMA_DCMR(IMMP) Mcf5272_iord32(IMMP,MCF5272_DMA_DCMR)
#define MCF5272_RD_DMA_DCIR(IMMP) Mcf5272_iord16(IMMP,MCF5272_DMA_DCIR)
#define MCF5272_RD_DMA_DBCR(IMMP) Mcf5272_iord32(IMMP,MCF5272_DMA_DBCR)
#define MCF5272_RD_DMA_DSAR(IMMP) Mcf5272_iord32(IMMP,MCF5272_DMA_DSAR)
#define MCF5272_RD_DMA_DDAR(IMMP) Mcf5272_iord32(IMMP,MCF5272_DMA_DDAR)
/* Write access macros for general use */
#define MCF5272_WR_DMA_DCMR(IMMP,DATA) \
Mcf5272_iowr32(IMMP,MCF5272_DMA_DCMR,DATA)
#define MCF5272_WR_DMA_DCIR(IMMP,DATA) \
Mcf5272_iowr16(IMMP,MCF5272_DMA_DCIR,DATA)
#define MCF5272_WR_DMA_DBCR(IMMP,DATA) \
Mcf5272_iowr32(IMMP,MCF5272_DMA_DBCR,DATA)
#define MCF5272_WR_DMA_DSAR(IMMP,DATA) \
Mcf5272_iowr32(IMMP,MCF5272_DMA_DSAR,DATA)
#define MCF5272_WR_DMA_DDAR(IMMP,DATA) \
Mcf5272_iowr32(IMMP,MCF5272_DMA_DDAR,DATA)
/**********************************************************************
*
* USART Module Registers Description
*
***********************************************************************/
/* Offsets of the registers from the MBAR */
#define MCF5272_UART0_UMR (0x0100) /* RW */
#define MCF5272_UART0_USR (0x0104) /* USR RO, UCSR WO */
#define MCF5272_UART0_UCR (0x0108) /* WO */
#define MCF5272_UART0_UBUF (0x010C) /* URB RO, UTB WO */
#define MCF5272_UART0_UCCR (0x0110) /* UCCR RO, UACR WO */
#define MCF5272_UART0_UISR (0x0114) /* UISR RO, UIMR WO */
#define MCF5272_UART0_UBG1 (0x0118) /* WO */
#define MCF5272_UART0_UBG2 (0x011C) /* WO */
#define MCF5272_UART0_UABR1 (0x0120) /* RO */
#define MCF5272_UART0_UABR2 (0x0124) /* RO */
#define MCF5272_UART0_UTFCSR (0x0128) /* RW */
#define MCF5272_UART0_URFCSR (0x012C) /* RW */
#define MCF5272_UART0_UIP (0x0134) /* RO */
#define MCF5272_UART0_UOP1 (0x0138) /* WO */
#define MCF5272_UART0_UOP0 (0x013C) /* WO */
#define MCF5272_UART1_UMR (0x0140) /* RW */
#define MCF5272_UART1_USR (0x0144) /* USR RO, UCSR WO */
#define MCF5272_UART1_UCR (0x0148) /* WO */
#define MCF5272_UART1_UBUF (0x014C) /* URB RO, UTB WO */
#define MCF5272_UART1_UCCR (0x0150) /* UCCR RO, UACR WO */
#define MCF5272_UART1_UISR (0x0154) /* UISR RO, UIMR WO */
#define MCF5272_UART1_UBG1 (0x0158) /* WO */
#define MCF5272_UART1_UBG2 (0x015C) /* WO */
#define MCF5272_UART1_UABR1 (0x0160) /* RO */
#define MCF5272_UART1_UABR2 (0x0164) /* RO */
#define MCF5272_UART1_UTFCSR (0x0168) /* RW */
#define MCF5272_UART1_URFCSR (0x016C) /* RW */
#define MCF5272_UART1_UIP (0x0174) /* RO */
#define MCF5272_UART1_UOP1 (0x0178) /* WO */
#define MCF5272_UART1_UOP0 (0x017C) /* WO */
/* Read access macros for general use */
#define MCF5272_RD_UART0_UMR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UMR)
#define MCF5272_RD_UART0_USR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_USR)
#define MCF5272_RD_UART0_URB(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UBUF)
#define MCF5272_RD_UART0_UCCR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UCCR)
#define MCF5272_RD_UART0_UISR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UISR)
#define MCF5272_RD_UART0_UABR1(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UABR1)
#define MCF5272_RD_UART0_UABR2(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UABR2)
#define MCF5272_RD_UART0_UTFCSR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UTFCSR)
#define MCF5272_RD_UART0_URFCSR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_URFCSR)
#define MCF5272_RD_UART0_UIP(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART0_UIP)
#define MCF5272_RD_UART1_UMR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UMR)
#define MCF5272_RD_UART1_USR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_USR)
#define MCF5272_RD_UART1_URB(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UBUF)
#define MCF5272_RD_UART1_UCCR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UCCR)
#define MCF5272_RD_UART1_UISR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UISR)
#define MCF5272_RD_UART1_UABR1(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UABR1)
#define MCF5272_RD_UART1_UABR2(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UABR2)
#define MCF5272_RD_UART1_UTFCSR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UTFCSR)
#define MCF5272_RD_UART1_URFCSR(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_URFCSR)
#define MCF5272_RD_UART1_UIP(IMMP) \
Mcf5272_iord8(IMMP,MCF5272_UART1_UIP)
/* Write access macros for general use */
#define MCF5272_WR_UART0_UMR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UMR,DATA)
#define MCF5272_WR_UART0_UCSR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_USR,DATA)
#define MCF5272_WR_UART0_UCR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UCR,DATA)
#define MCF5272_WR_UART0_UTB(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UBUF,DATA)
#define MCF5272_WR_UART0_UACR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UCCR,DATA)
#define MCF5272_WR_UART0_UIMR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UISR,DATA)
#define MCF5272_WR_UART0_UBG1(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UBG1,DATA)
#define MCF5272_WR_UART0_UBG2(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UBG2,DATA)
#define MCF5272_WR_UART0_UTFCSR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UTFCSR,DATA)
#define MCF5272_WR_UART0_URFCSR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_URFCSR,DATA)
#define MCF5272_WR_UART0_UOP1(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UOP1,DATA)
#define MCF5272_WR_UART0_UOP0(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART0_UOP0,DATA)
#define MCF5272_WR_UART1_UMR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UMR,DATA)
#define MCF5272_WR_UART1_UCSR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_USR,DATA)
#define MCF5272_WR_UART1_UCR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UCR,DATA)
#define MCF5272_WR_UART1_UTB(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UBUF,DATA)
#define MCF5272_WR_UART1_UACR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UCCR,DATA)
#define MCF5272_WR_UART1_UIMR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UISR,DATA)
#define MCF5272_WR_UART1_UBG1(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UBG1,DATA)
#define MCF5272_WR_UART1_UBG2(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UBG2,DATA)
#define MCF5272_WR_UART1_UTFCSR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UTFCSR,DATA)
#define MCF5272_WR_UART1_URFCSR(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_URFCSR,DATA)
#define MCF5272_WR_UART1_UOP1(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UOP1,DATA)
#define MCF5272_WR_UART1_UOP0(IMMP,DATA) \
Mcf5272_iowr8(IMMP,MCF5272_UART1_UOP0,DATA)
/* Bit level definitions and macros */
#define MCF5272_UART_UMR1_RXRTS (0x80)
#define MCF5272_UART_UMR1_RXIRQ (0x40)
#define MCF5272_UART_UMR1_ERR (0x20)
#define MCF5272_UART_UMR1_PM_MULTI_ADDR (0x1C)
#define MCF5272_UART_UMR1_PM_MULTI_DATA (0x18)
#define MCF5272_UART_UMR1_PM_NONE (0x10)
#define MCF5272_UART_UMR1_PM_FORCE_HI (0x0C)
#define MCF5272_UART_UMR1_PM_FORCE_LO (0x08)
#define MCF5272_UART_UMR1_PM_ODD (0x04)
#define MCF5272_UART_UMR1_PM_EVEN (0x00)
#define MCF5272_UART_UMR1_BC_5 (0x00)
#define MCF5272_UART_UMR1_BC_6 (0x01)
#define MCF5272_UART_UMR1_BC_7 (0x02)
#define MCF5272_UART_UMR1_BC_8 (0x03)
#define MCF5272_UART_UMR2_CM_NORMAL (0x00)
#define MCF5272_UART_UMR2_CM_ECHO (0x40)
#define MCF5272_UART_UMR2_CM_LOCAL_LOOP (0x80)
#define MCF5272_UART_UMR2_CM_REMOTE_LOOP (0xC0)
#define MCF5272_UART_UMR2_TXRTS (0x20)
#define MCF5272_UART_UMR2_TXCTS (0x10)
#define MCF5272_UART_UMR2_STOP_BITS_1 (0x07)
#define MCF5272_UART_UMR2_STOP_BITS_15 (0x08)
#define MCF5272_UART_UMR2_STOP_BITS_2 (0x0F)
#define MCF5272_UART_UMR2_STOP_BITS(a) ((a)&0x0f) /* Stop Bit Length */
#define MCF5272_UART_USR_RB (0x80)
#define MCF5272_UART_USR_FE (0x40)
#define MCF5272_UART_USR_PE (0x20)
#define MCF5272_UART_USR_OE (0x10)
#define MCF5272_UART_USR_TXEMP (0x08)
#define MCF5272_UART_USR_TXRDY (0x04)
#define MCF5272_UART_USR_FFULL (0x02)
#define MCF5272_UART_USR_RXRDY (0x01)
#define MCF5272_UART_UCSR_RCS(a) (((a)&0x0f)<<4) /* Rx Clk Select */
#define MCF5272_UART_UCSR_TCS(a) ((a)&0x0f) /* Tx Clk Select */
#define MCF5272_UART_UCR_NONE (0x00)
#define MCF5272_UART_UCR_STOP_BREAK (0x70)
#define MCF5272_UART_UCR_START_BREAK (0x60)
#define MCF5272_UART_UCR_RESET_BKCHGINT (0x50)
#define MCF5272_UART_UCR_RESET_ERROR (0x40)
#define MCF5272_UART_UCR_RESET_TX (0x30)
#define MCF5272_UART_UCR_RESET_RX (0x20)
#define MCF5272_UART_UCR_RESET_MR (0x10)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?