📄 mcf5206e.h
字号:
{
uint8 reserved0;
uint8 reserved1;
uint8 reserved2;
uint8 SIMR;
uint32 reserved3;
uint32 reserved4;
uint32 reserved5;
uint32 reserved6;
uint8 ICR1;
uint8 ICR2;
uint8 ICR3;
uint8 ICR4;
uint8 ICR5;
uint8 ICR6;
uint8 ICR7;
uint8 ICR8;
uint8 ICR9;
uint8 ICR10;
uint8 ICR11;
uint8 ICR12;
uint8 ICR13;
uint8 reserved7;
uint8 reserved8;
uint8 reserved9;
uint32 reserved10[4];
uint8 reserved11;
uint8 reserved12;
uint16 IMR;
uint16 reserved13;
uint16 IPR;
uint32 reserved14;
uint8 RSR;
uint8 SYPCR;
uint8 SWIVR;
uint8 SWSR;
uint8 reserved31[134];
uint8 PAR;
} mcf5206e_SIM;
#endif
#define mcf5206e_SIM_SIMR_FRZ1 (0x80)
#define mcf5206e_SIM_SIMR_FRZ0 (0x40)
#define mcf5206e_SIM_SIMR_BL (0x01)
#define mcf5206e_SIM_ICR_AVEC (0x80)
#define mcf5206e_SIM_ICR_IL(a) (((a)&0x07)<<2)
#define mcf5206e_SIM_ICR_IP(a) (((a)&0x03))
#define mcf5206e_SIM_IMR_DMA1 (0x8000)
#define mcf5206e_SIM_IMR_DMA0 (0x4000)
#define mcf5206e_SIM_IMR_UART2 (0x2000)
#define mcf5206e_SIM_IMR_UART1 (0x1000)
#define mcf5206e_SIM_IMR_MBUS (0x0800)
#define mcf5206e_SIM_IMR_T2 (0x0400)
#define mcf5206e_SIM_IMR_T1 (0x0200)
#define mcf5206e_SIM_IMR_SWT (0x0100)
#define mcf5206e_SIM_IMR_EINT7 (0x0080)
#define mcf5206e_SIM_IMR_EINT6 (0x0040)
#define mcf5206e_SIM_IMR_EINT5 (0x0020)
#define mcf5206e_SIM_IMR_EINT4 (0x0010)
#define mcf5206e_SIM_IMR_EINT3 (0x0008)
#define mcf5206e_SIM_IMR_EINT2 (0x0004)
#define mcf5206e_SIM_IMR_EINT1 (0x0002)
#define mcf5206e_SIM_IPR_UART2 (0x2000)
#define mcf5206e_SIM_IPR_UART1 (0x1000)
#define mcf5206e_SIM_IPR_MBUS (0x0800)
#define mcf5206e_SIM_IPR_T2 (0x0400)
#define mcf5206e_SIM_IPR_T1 (0x0200)
#define mcf5206e_SIM_IPR_SWT (0x0100)
#define mcf5206e_SIM_IPR_EINT7 (0x0080)
#define mcf5206e_SIM_IPR_EINT6 (0x0040)
#define mcf5206e_SIM_IPR_EINT5 (0x0020)
#define mcf5206e_SIM_IPR_EINT4 (0x0010)
#define mcf5206e_SIM_IPR_EINT3 (0x0008)
#define mcf5206e_SIM_IPR_EINT2 (0x0004)
#define mcf5206e_SIM_IPR_EINT1 (0x0002)
#define mcf5206e_SIM_RSR_HRST (0x80)
#define mcf5206e_SIM_RSR_SWTR (0x20)
#define mcf5206e_SIM_SYPCR_SWE (0x80)
#define mcf5206e_SIM_SYPCR_SWRI (0x40)
#define mcf5206e_SIM_SYPCR_SWT_2_9 (0x00)
#define mcf5206e_SIM_SYPCR_SWT_2_11 (0x08)
#define mcf5206e_SIM_SYPCR_SWT_2_13 (0x10)
#define mcf5206e_SIM_SYPCR_SWT_2_15 (0x18)
#define mcf5206e_SIM_SYPCR_SWT_2_18 (0x20)
#define mcf5206e_SIM_SYPCR_SWT_2_20 (0x28)
#define mcf5206e_SIM_SYPCR_SWT_2_22 (0x30)
#define mcf5206e_SIM_SYPCR_SWT_2_24 (0x38)
#define mcf5206e_SIM_SYPCR_BME (0x04)
#define mcf5206e_SIM_SYPCR_BM_1024 (0x00)
#define mcf5206e_SIM_SYPCR_BM_512 (0x01)
#define mcf5206e_SIM_SYPCR_BM_256 (0x02)
#define mcf5206e_SIM_SYPCR_BM_128 (0x03)
#define mcf5206e_SIM_SWIVR_SWIV(a) ((a)&0x00FF)
#define mcf5206e_SIM_PAR_PAR9 (0x0200)
#define mcf5206e_SIM_PAR_PAR8_DMA1 (0x0200)
#define mcf5206e_SIM_PAR_PAR8_TIN1 (0x0000)
#define mcf5206e_SIM_PAR_PAR8_DMA0 (0x0100)
#define mcf5206e_SIM_PAR_PAR8_TIN0 (0x0000)
#define mcf5206e_SIM_PAR_PAR8 (0x0100)
#define mcf5206e_SIM_PAR_PAR7 (0x0080)
#define mcf5206e_SIM_PAR_PAR7_RSTO (0x0000)
#define mcf5206e_SIM_PAR_PAR7_RTS2 (0x0080)
#define mcf5206e_SIM_PAR_PAR6 (0x0040)
#define mcf5206e_SIM_PAR_PAR6_IRQ (0x0000)
#define mcf5206e_SIM_PAR_PAR6_IPL (0x0040)
#define mcf5206e_SIM_PAR_PAR5 (0x0020)
#define mcf5206e_SIM_PAR_PAR5_PP74 (0x0000)
#define mcf5206e_SIM_PAR_PAR5_PST (0x0020)
#define mcf5206e_SIM_PAR_PAR4 (0x0010)
#define mcf5206e_SIM_PAR_PAR4_PP30 (0x0000)
#define mcf5206e_SIM_PAR_PAR4_DDATA (0x0010)
#define mcf5206e_SIM_PAR_PAR3 (0x0008)
#define mcf5206e_SIM_PAR_PAR2 (0x0004)
#define mcf5206e_SIM_PAR_PAR1 (0x0002)
#define mcf5206e_SIM_PAR_PAR0 (0x0001)
/***********************************************************************/
/*
* Chip-Select Module, CS
*/
/* Offsets of the registers from the MBAR */
#define mcf5206e_CS_CSAR0 (0x0064)
#define mcf5206e_CS_CSMR0 (0x0068)
#define mcf5206e_CS_CSCR0 (0x006E)
#define mcf5206e_CS_CSAR1 (0x0070)
#define mcf5206e_CS_CSMR1 (0x0074)
#define mcf5206e_CS_CSCR1 (0x007A)
#define mcf5206e_CS_CSAR2 (0x007C)
#define mcf5206e_CS_CSMR2 (0x0080)
#define mcf5206e_CS_CSCR2 (0x0086)
#define mcf5206e_CS_CSAR3 (0x0088)
#define mcf5206e_CS_CSMR3 (0x008C)
#define mcf5206e_CS_CSCR3 (0x0092)
#define mcf5206e_CS_CSAR4 (0x0094)
#define mcf5206e_CS_CSMR4 (0x0098)
#define mcf5206e_CS_CSCR4 (0x009E)
#define mcf5206e_CS_CSAR5 (0x00A0)
#define mcf5206e_CS_CSMR5 (0x00A4)
#define mcf5206e_CS_CSCR5 (0x00AA)
#define mcf5206e_CS_CSAR6 (0x00AC)
#define mcf5206e_CS_CSMR6 (0x00B0)
#define mcf5206e_CS_CSCR6 (0x00B6)
#define mcf5206e_CS_CSAR7 (0x00B8)
#define mcf5206e_CS_CSMR7 (0x00BC)
#define mcf5206e_CS_CSCR7 (0x00C2)
#define mcf5206e_CS_DMCR (0x00C6)
/* Read access macros for general use */
#define mcf5206e_RD_CS_CSAR0(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR0,16)
#define mcf5206e_RD_CS_CSMR0(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR0,32)
#define mcf5206e_RD_CS_CSCR0(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR0,16)
#define mcf5206e_RD_CS_CSAR1(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR1,16)
#define mcf5206e_RD_CS_CSMR1(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR1,32)
#define mcf5206e_RD_CS_CSCR1(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR1,16)
#define mcf5206e_RD_CS_CSAR2(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR2,16)
#define mcf5206e_RD_CS_CSMR2(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR2,32)
#define mcf5206e_RD_CS_CSCR2(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR2,16)
#define mcf5206e_RD_CS_CSAR3(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR3,16)
#define mcf5206e_RD_CS_CSMR3(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR3,32)
#define mcf5206e_RD_CS_CSCR3(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR3,16)
#define mcf5206e_RD_CS_CSAR4(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR4,16)
#define mcf5206e_RD_CS_CSMR4(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR4,32)
#define mcf5206e_RD_CS_CSCR4(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR4,16)
#define mcf5206e_RD_CS_CSAR5(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR5,16)
#define mcf5206e_RD_CS_CSMR5(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR5,32)
#define mcf5206e_RD_CS_CSCR5(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR5,16)
#define mcf5206e_RD_CS_CSAR6(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR6,16)
#define mcf5206e_RD_CS_CSMR6(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR6,32)
#define mcf5206e_RD_CS_CSCR6(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR6,16)
#define mcf5206e_RD_CS_CSAR7(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSAR7,16)
#define mcf5206e_RD_CS_CSMR7(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSMR7,32)
#define mcf5206e_RD_CS_CSCR7(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_CSCR7,16)
#define mcf5206e_RD_CS_DMCR(IMMP) mcf5206e_iord(IMMP,mcf5206e_CS_DMCR,16)
/* Write access macros for general use */
#define mcf5206e_WR_CS_CSAR0(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR0,16,DATA)
#define mcf5206e_WR_CS_CSMR0(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR0,32,DATA)
#define mcf5206e_WR_CS_CSCR0(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR0,16,DATA)
#define mcf5206e_WR_CS_CSAR1(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR1,16,DATA)
#define mcf5206e_WR_CS_CSMR1(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR1,32,DATA)
#define mcf5206e_WR_CS_CSCR1(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR1,16,DATA)
#define mcf5206e_WR_CS_CSAR2(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR2,16,DATA)
#define mcf5206e_WR_CS_CSMR2(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR2,32,DATA)
#define mcf5206e_WR_CS_CSCR2(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR2,16,DATA)
#define mcf5206e_WR_CS_CSAR3(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR3,16,DATA)
#define mcf5206e_WR_CS_CSMR3(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR3,32,DATA)
#define mcf5206e_WR_CS_CSCR3(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR3,16,DATA)
#define mcf5206e_WR_CS_CSAR4(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR4,16,DATA)
#define mcf5206e_WR_CS_CSMR4(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR4,32,DATA)
#define mcf5206e_WR_CS_CSCR4(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR4,16,DATA)
#define mcf5206e_WR_CS_CSAR5(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR5,16,DATA)
#define mcf5206e_WR_CS_CSMR5(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR5,32,DATA)
#define mcf5206e_WR_CS_CSCR5(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR5,16,DATA)
#define mcf5206e_WR_CS_CSAR6(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR6,16,DATA)
#define mcf5206e_WR_CS_CSMR6(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR6,32,DATA)
#define mcf5206e_WR_CS_CSCR6(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR6,16,DATA)
#define mcf5206e_WR_CS_CSAR7(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSAR7,16,DATA)
#define mcf5206e_WR_CS_CSMR7(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSMR7,32,DATA)
#define mcf5206e_WR_CS_CSCR7(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_CSCR7,16,DATA)
#define mcf5206e_WR_CS_DMCR(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_CS_DMCR,16,DATA)
#if 1
typedef volatile struct
{
uint32 reserved1[0x19];
uint16 CSAR0;
uint16 fillerA;
uint32 CSMR0;
uint16 reserved2;
uint16 CSCR0;
uint16 CSAR1;
uint16 fillerB;
uint32 CSMR1;
uint16 reserved4;
uint16 CSCR1;
uint16 CSAR2;
uint16 fillerC;
uint32 CSMR2;
uint16 reserved6;
uint16 CSCR2;
uint16 CSAR3;
uint16 fillerD;
uint32 CSMR3;
uint16 reserved8;
uint16 CSCR3;
uint16 CSAR4;
uint16 fillerE;
uint32 CSMR4;
uint16 reserved10;
uint16 CSCR4;
uint16 CSAR5;
uint16 fillerF;
uint32 CSMR5;
uint16 reserved12;
uint16 CSCR5;
uint16 CSAR6;
uint16 fillerG;
uint32 CSMR6;
uint16 reserved14;
uint16 CSCR6;
uint16 CSAR7;
uint16 fillerH;
uint32 CSMR7;
uint16 reserved16;
uint16 CSCR7;
uint16 reserved17;
uint16 DMCR;
} mcf5206e_CS;
#endif
#define mcf5206e_CS_CSAR_BASE(a) (((a)&0xFFFF0000)>>16)
#define mcf5206e_CS_CSMR_MASK_32M (0x01FF0000)
#define mcf5206e_CS_CSMR_MASK_16M (0x00FF0000)
#define mcf5206e_CS_CSMR_MASK_8M (0x007F0000)
#define mcf5206e_CS_CSMR_MASK_4M (0x003F0000)
#define mcf5206e_CS_CSMR_MASK_2M (0x001F0000)
#define mcf5206e_CS_CSMR_MASK_1M (0x000F0000)
#define mcf5206e_CS_CSMR_MASK_1024K (0x000F0000)
#define mcf5206e_CS_CSMR_MASK_512K (0x00070000)
#define mcf5206e_CS_CSMR_MASK_256K (0x00030000)
#define mcf5206e_CS_CSMR_MASK_128K (0x00010000)
#define mcf5206e_CS_CSMR_MASK_64K (0x00000000)
#define mcf5206e_CS_CSMR_SC (0x00000010)
#define mcf5206e_CS_CSMR_SD (0x00000008)
#define mcf5206e_CS_CSMR_UC (0x00000004)
#define mcf5206e_CS_CSMR_UD (0x00000002)
#define mcf5206e_CS_CSMR1_CPU (0x00000020)
#define mcf5206e_CS_CSCR_WS_MASK (0x3C00)
#define mcf5206e_CS_CSCR_WS(a) (((a)&0x0F)<<10)
#define mcf5206e_CS_CSCR_BRST (0x0200)
#define mcf5206e_CS_CSCR_AA (0x0100)
#define mcf5206e_CS_CSCR_PS_8 (0x0040)
#define mcf5206e_CS_CSCR_PS_16 (0x0080)
#define mcf5206e_CS_CSCR_PS_32 (0x0000)
#define mcf5206e_CS_CSCR_EMAA (0x0020)
#define mcf5206e_CS_CSCR_ASET (0x0010)
#define mcf5206e_CS_CSCR_WRAH (0x0008)
#define mcf5206e_CS_CSCR_RDAH (0x0004)
#define mcf5206e_CS_CSCR_WR (0x0002)
#define mcf5206e_CS_CSCR_RD (0x0001)
#define mcf5206e_CS_DMCR_WS_MASK (0x3C00)
#define mcf5206e_CS_DMCR_WS(a) (((a)&0x0F)<<10)
#define mcf5206e_CS_DMCR_BRST (0x0200)
#define mcf5206e_CS_DMCR_AA (0x0100)
#define mcf5206e_CS_DMCR_PS_8 (0x0040)
#define mcf5206e_CS_DMCR_PS_16 (0x0080)
#define mcf5206e_CS_DMCR_PS_32 (0x0000)
#define mcf5206e_CS_DMCR_EMAA (0x0020)
#define mcf5206e_CS_DMCR_WRAH (0x0008)
#define mcf5206e_CS_DMCR_RDAH (0x0004)
#define mcf5206e_IACK_ADDRESS (mcf5206e_CS_CSAR_BASE(0xFFFFFFE0))
#define mcf5206e_IACK_MASK (mcf5206e_CS_CSMR_MASK_64K)
/***********************************************************************/
/*
* Parallel Port (General Purpose I/O) Module, PP
*/
/* Offsets of the registers from the MBAR */
#define mcf5206e_PP_PPDDR (0x01C5)
#define mcf5206e_PP_PPDAT (0x01C9)
/* Read access macros for general use */
#define mcf5206e_RD_PP_PPDDR(IMMP) mcf5206e_iord(IMMP,mcf5206e_PP_PPDDR,8)
#define mcf5206e_RD_PP_PPDAT(IMMP) mcf5206e_iord(IMMP,mcf5206e_PP_PPDAT,8)
/* Write access macros for general use */
#define mcf5206e_WR_PP_PPDDR(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_PP_PPDDR,8,DATA)
#define mcf5206e_WR_PP_PPDAT(IMMP,DATA) \
mcf5206e_iowr(IMMP,mcf5206e_PP_PPDAT,8,DATA)
#if 1
typedef volatile struct
{
uint8 reserved0[0x1C5];
uint8 PPDDR;
uint8 reserved34;
uint8 reserved35;
uint8 reserved36;
uint8 PPDAT;
} mcf5206e_PP;
#endif
#define mcf5206e_PP_PPDDR_DDR7 (0x80)
#define mcf5206e_PP_PPDDR_DDR6 (0x40)
#define mcf5206e_PP_PPDDR_DDR5 (0x20)
#define mcf5206e_PP_PPDDR_DDR4 (0x10)
#define mcf5206e_PP_PPDDR_DDR3 (0x08)
#define mcf5206e_PP_PPDDR_DDR2 (0x04)
#define mcf5206e_PP_PPDDR_DDR1 (0x02)
#define mcf5206e_PP_PPDDR_DDR0 (0x01)
#define mcf5206e_PP_PPDDR_DDR7_INPUT (~0x80)
#define mcf5206e_PP_PPDDR_DDR7_OUTPUT ( 0x80)
#define mcf5206e_PP_PPDDR_DDR6_INPUT (~0x40)
#define mcf5206e_PP_PPDDR_DDR6_OUTPUT ( 0x40)
#define mcf5206e_PP_PPDDR_DDR5_INPUT (~0x20)
#define mcf5206e_PP_PPDDR_DDR5_OUTPUT ( 0x20)
#define mcf5206e_PP_PPDDR_DDR4_INPUT (~0x10)
#define mcf5206e_PP_PPDDR_DDR4_OUTPUT ( 0x10)
#define mcf5206e_PP_PPDDR_DDR3_INPUT (~0x08)
#define mcf5206e_PP_PPDDR_DDR3_OUTPUT ( 0x08)
#define mcf5206e_PP_PPDDR_DDR2_INPUT (~0x04)
#define mcf5206e_PP_PPDDR_DDR2_OUTPUT ( 0x04)
#define mcf5206e_PP_PPDDR_DDR1_INPUT (~0x02)
#define mcf5206e_PP_PPDDR_DDR1_OUTPUT ( 0x02)
#define mcf5206e_PP_PPDDR_DDR0_INPUT (~0x01)
#define mcf5206e_PP_PPDDR_DDR0_OUTPUT ( 0x01)
#define mcf5206e_PP_PPDAT_DAT7 (0x80)
#define mcf5206e_PP_PPDAT_DAT6 (0x40)
#define mcf5206e_PP_PPDAT_DAT5 (0x20)
#define mcf5206e_PP_PPDAT_DAT4 (0x10)
#define mcf5206e_PP_PPDAT_DAT3 (0x08)
#define mcf5206e_PP_PPDAT_DAT2 (0x04)
#define mcf5206e_PP_PPDAT_DAT1 (0x02)
#define mcf5206e_PP_PPDAT_DAT0 (0x01)
/***********************************************************************/
/*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -