📄 hw5120cfg.h
字号:
#if (HWPF_5120_SDRAM_tRFC < 0) || (HWPF_5120_SDRAM_tRFC > 31)#error HWPF_5120_SDRAM_tRFC is out of range!!!#endif#if (HWPF_5120_SDRAM_tXSR < 0) || (HWPF_5120_SDRAM_tXSR > 31)#error HWPF_5120_SDRAM_tXSR is out of range!!!#endif#if (HWPF_5120_SDRAM_tRRD < 0) || (HWPF_5120_SDRAM_tRRD > 15)#error HWPF_5120_SDRAM_tRRD is out of range!!!#endif#if (HWPF_5120_SDRAM_tMRD < 0) || (HWPF_5120_SDRAM_tMRD > 15)#error HWPF_5120_SDRAM_tMRD is out of range!!!#endif// +++++++++++++++++++++ SDRAM Timing end ++++++++++++++++++++++//===========================================================================//===========================================================================// ++++++++++++++++++++ Ext I/O bank0 start ++++++++++++++++++++// Ext I/O bank 0 configuration #if (HWPF_5120_EXTIO0_EN == OPTION_ENABLE)#if (HWPF_5120_EXTIO0_INT_POLARITY == 0)#define HWPF_5120_EXTIO0_INT_CFG IRQ_EXTIO0_ACT_LOW#elif (HWPF_5120_EXTIO0_INT_POLARITY == 1)#define HWPF_5120_EXTIO0_INT_CFG 0#else#error The value of HWPF_5120_EXTIO0_INT_POLARITY must be either 0 or 1!!!#endif#if (HWPF_5120_EXTIO0_WAIT_EN != OPTION_ENABLE) && (HWPF_5120_EXTIO0_WAIT_EN != OPTION_DISABLE)#error The value of HWPF_5120_EXTIO0_WAIT_EN must be either OPTION_ENABLE or OPTION_DISABLE!!!#endif#if (HWPF_5120_EXTIO0_BUS_WIDTH == 32)#define SMEM2_BUS_WIDTH SM_MEM_WIDTH_32BIT#elif (HWPF_5120_EXTIO0_BUS_WIDTH == 16)#define SMEM2_BUS_WIDTH SM_MEM_WIDTH_16BIT#elif (HWPF_5120_EXTIO0_BUS_WIDTH == 8)#define SMEM2_BUS_WIDTH SM_MEM_WIDTH_8BIT#else#error The value of HWPF_5120_EXTIO0_BUS_WIDTH must be either 8, 16, or 32!!!!#endif // (HWPF_5120_EXTIO0_BUS_WIDTH == 32)#if (HWPF_5120_EXTIO0_DEV_WIDTH == 32)#define SMEM2_PB SM_PB#elif (HWPF_5120_EXTIO0_DEV_WIDTH == 16)#define SMEM2_PB SM_PB#elif (HWPF_5120_EXTIO0_DEV_WIDTH == 8)//#define SMEM2_PB 0#define SMEM2_PB SM_PB#else#error The value of HWPF_5120_EXTIO0_DEV_WIDTH must be either 8, 16, or 32!!!!#endif // (HWPF_5120_EXTIO0_DEV_WIDTH == 32)#if (HWPF_5120_EXTIO0_BUS_WIDTH < HWPF_5120_EXTIO0_DEV_WIDTH)#warning The data bus width of Ext I/O bank 0 is smaller than the width of the device !!!#endif#if HWPF_5120_EXTIO0_CS_POLARITY == 1#define SMEM2_CS_POLARITY SM_CS_HIGH#elif HWPF_5120_EXTIO0_CS_POLARITY == 0#define SMEM2_CS_POLARITY 0#else#error The value of HWPF_5120_EXTIO0_CS_POLARITY must be either 1 or 0!!!#endif // (HWPF_5120_EXTIO0_CS_POLARITY == 1)#if HWPF_5120_EXTIO0_PAGE_MODE == OPTION_ENABLE#define SMEM2_PM_MODE SM_PAGE_MODE#elif HWPF_5120_EXTIO0_PAGE_MODE == OPTION_DISABLE#define SMEM2_PM_MODE 0#else#error The value of HWPF_5120_EXTIO0_PAGE_MODE must be either OPTION_ENABLE or OPTION_DISABLE!!!#endif // (HWPF_5120_EXTIO0_PAGE_MODE == OPTION_ENABLE)#if (HWPF_5120_EXTIO0_CS_TO_WE_WAIT < 0) || (HWPF_5120_EXTIO0_CS_TO_WE_WAIT > 15)#error HWPF_5120_EXTIO0_CS_TO_WE_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO0_CS_TO_OE_WAIT < 0) || (HWPF_5120_EXTIO0_CS_TO_OE_WAIT > 15)#error HWPF_5120_EXTIO0_CS_TO_OE_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO0_READ_WAIT < 0) || (HWPF_5120_EXTIO0_READ_WAIT > 31)#error HWPF_5120_EXTIO0_READ_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO0_WRITE_WAIT < 0) || (HWPF_5120_EXTIO0_WRITE_WAIT >31)#error HWPF_5120_EXTIO0_WRITE_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO0_TURN_WAIT < 0) || (HWPF_5120_EXTIO0_TURN_WAIT > 15)#error HWPF_5120_EXTIO0_TURN_WAIT is out of range!!!#endif#define SMEM2_CFG ( SMEM2_BUS_WIDTH \ | SMEM2_CS_POLARITY \ | SMEM2_PM_MODE \ | SMEM2_PB)#define SmemBank2_Config SMEM2_CFG#define SmemBank2_WaitWen HWPF_5120_EXTIO0_CS_TO_WE_WAIT#define SmemBank2_WaitOen HWPF_5120_EXTIO0_CS_TO_OE_WAIT#define SmemBank2_WaitRd HWPF_5120_EXTIO0_READ_WAIT#define SmemBank2_WaitPage 31#define SmemBank2_WaitWr HWPF_5120_EXTIO0_WRITE_WAIT#define SmemBank2_WaitTurn HWPF_5120_EXTIO0_TURN_WAIT#endif // HWPF_5120_EXTIO0_EN == OPTION_ENABLE// +++++++++++++++++++++ Ext I/O bank0 end +++++++++++++++++++++// ++++++++++++++++++++ Ext I/O bank1 start ++++++++++++++++++++// Ext I/O bank 1 configuration #if (HWPF_5120_EXTIO1_EN == OPTION_ENABLE)#if (HWPF_5120_EXTIO1_INT_POLARITY == 0)#define HWPF_5120_EXTIO1_INT_CFG IRQ_EXTIO1_ACT_LOW#elif (HWPF_5120_EXTIO1_INT_POLARITY == 1)#define HWPF_5120_EXTIO1_INT_CFG 0#else#error The value of HWPF_5120_EXTIO1_INT_POLARITY must be either 0 or 1!!!#endif#if (HWPF_5120_EXTIO1_WAIT_EN != OPTION_ENABLE) && (HWPF_5120_EXTIO1_WAIT_EN != OPTION_DISABLE)#error The value of HWPF_5120_EXTIO1_WAIT_EN must be either OPTION_ENABLE or OPTION_DISABLE!!!#endif#if (HWPF_5120_EXTIO1_BUS_WIDTH == 32)#define SMEM3_BUS_WIDTH SM_MEM_WIDTH_32BIT#elif (HWPF_5120_EXTIO1_BUS_WIDTH == 16)#define SMEM3_BUS_WIDTH SM_MEM_WIDTH_16BIT#elif (HWPF_5120_EXTIO1_BUS_WIDTH == 8)#define SMEM3_BUS_WIDTH SM_MEM_WIDTH_8BIT#else#error The value of HWPF_5120_EXTIO1_BUS_WIDTH must be either 8, 16, or 32!!!!#endif // (HWPF_5120_SMEM1_BUS_WIDTH == 32)#if (HWPF_5120_EXTIO1_DEV_WIDTH == 32)#define SMEM3_PB SM_PB#elif (HWPF_5120_EXTIO1_DEV_WIDTH == 16)#define SMEM3_PB SM_PB#elif (HWPF_5120_EXTIO1_DEV_WIDTH == 8)//#define SMEM3_PB 0#define SMEM3_PB SM_PB#else#error The value of HWPF_5120_EXTIO1_DEV_WIDTH must be either 8, 16, or 32!!!!#endif // (HWPF_5120_EXTIO1_DEV_WIDTH == 32)#if (HWPF_5120_EXTIO1_BUS_WIDTH < HWPF_5120_EXTIO1_DEV_WIDTH)#warning The data bus width of Ext I/O bank 1 is smaller than the width of the device !!!#endif#if HWPF_5120_EXTIO1_CS_POLARITY == 1#define SMEM3_CS_POLARITY SM_CS_HIGH#elif HWPF_5120_EXTIO1_CS_POLARITY == 0#define SMEM3_CS_POLARITY 0#else#error The value of HWPF_5120_EXTIO1_CS_POLARITY must be either 1 or 0!!!#endif // (HWPF_5120_EXTIO0_CS_POLARITY == 1)#if HWPF_5120_EXTIO1_PAGE_MODE == OPTION_ENABLE#define SMEM3_PM_MODE SM_PAGE_MODE#elif HWPF_5120_EXTIO1_PAGE_MODE == OPTION_DISABLE#define SMEM3_PM_MODE 0#else#error The value of HWPF_5120_EXTIO1_PAGE_MODE must be either OPTION_ENABLE or OPTION_DISABLE!!!#endif // (HWPF_5120_EXTIO0_PAGE_MODE == OPTION_ENABLE)#if (HWPF_5120_EXTIO1_CS_TO_WE_WAIT < 0) || (HWPF_5120_EXTIO1_CS_TO_WE_WAIT > 15)#error HWPF_5120_EXTIO1_CS_TO_WE_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO1_CS_TO_OE_WAIT < 0) || (HWPF_5120_EXTIO1_CS_TO_OE_WAIT > 15)#error HWPF_5120_EXTIO1_CS_TO_OE_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO1_READ_WAIT < 0) || (HWPF_5120_EXTIO1_READ_WAIT > 31)#error HWPF_5120_EXTIO1_READ_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO1_WRITE_WAIT < 0) || (HWPF_5120_EXTIO1_WRITE_WAIT >31)#error HWPF_5120_EXTIO1_WRITE_WAIT is out of range!!!#endif#if (HWPF_5120_EXTIO1_TURN_WAIT < 0) || (HWPF_5120_EXTIO1_TURN_WAIT > 15)#error HWPF_5120_EXTIO1_TURN_WAIT is out of range!!!#endif#define SMEM3_CFG ( SMEM3_BUS_WIDTH \ | SMEM3_CS_POLARITY \ | SMEM3_PM_MODE \ | SMEM3_PB)#define SmemBank3_Config SMEM3_CFG#define SmemBank3_WaitWen HWPF_5120_EXTIO1_CS_TO_WE_WAIT#define SmemBank3_WaitOen HWPF_5120_EXTIO1_CS_TO_OE_WAIT#define SmemBank3_WaitRd HWPF_5120_EXTIO1_READ_WAIT#define SmemBank3_WaitPage 31#define SmemBank3_WaitWr HWPF_5120_EXTIO1_WRITE_WAIT#define SmemBank3_WaitTurn HWPF_5120_EXTIO1_TURN_WAIT#endif // !(HWPF_5120_EXTIO1_EN == OPTION_ENABLE)// +++++++++++++++++++++ Ext I/O bank0 end +++++++++++++++++++++//===========================================================================//===========================================================================// ++++++++++++++++++++ GPIO start ++++++++++++++++++++// GPIO configuration #if (HWPF_5120_GPIO0_MODE == GPIO0_INPUT_MODE) #undef HWPF_5120_GPIO0_DEFOUT #define HWPF_5120_GPIO0_DEFOUT GPIO0_OUTPUT_LOW#elif (HWPF_5120_GPIO0_MODE == GPIO0_OUTPUT_MODE) #if ((HWPF_5120_GPIO0_DEFOUT != GPIO0_OUTPUT_LOW) && (HWPF_5120_GPIO0_DEFOUT != GPIO0_OUTPUT_HI)) #error HWPF_5120_GPIO0_DEFOUT must be either GPIO0_OUTPUT_LOW or GPIO0_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO0_MODE must be either GPIO0_INPUT_MODE or GPIO0_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO0_MODE != GPIO0_INPUT_MODE)#if (HWPF_5120_GPIO1_MODE == GPIO1_INPUT_MODE) #undef HWPF_5120_GPIO1_DEFOUT #define HWPF_5120_GPIO1_DEFOUT GPIO1_OUTPUT_LOW#elif (HWPF_5120_GPIO1_MODE == GPIO1_OUTPUT_MODE) #if ((HWPF_5120_GPIO1_DEFOUT != GPIO1_OUTPUT_LOW) && (HWPF_5120_GPIO1_DEFOUT != GPIO1_OUTPUT_HI)) #error HWPF_5120_GPIO1_DEFOUT must be either GPIO1_OUTPUT_LOW or GPIO1_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO1_MODE must be either GPIO1_INPUT_MODE or GPIO1_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO1_MODE != GPIO1_INPUT_MODE)#if (HWPF_5120_GPIO2_MODE == GPIO2_INPUT_MODE) #undef HWPF_5120_GPIO2_DEFOUT #define HWPF_5120_GPIO2_DEFOUT GPIO2_OUTPUT_LOW#elif (HWPF_5120_GPIO2_MODE == GPIO2_OUTPUT_MODE) #if ((HWPF_5120_GPIO2_DEFOUT != GPIO2_OUTPUT_LOW) && (HWPF_5120_GPIO2_DEFOUT != GPIO2_OUTPUT_HI)) #error HWPF_5120_GPIO2_DEFOUT must be either GPIO2_OUTPUT_LOW or GPIO2_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO2_MODE must be either GPIO2_INPUT_MODE or GPIO2_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO2_MODE != GPIO2_INPUT_MODE)#if (HWPF_5120_GPIO3_MODE == GPIO3_INPUT_MODE) #undef HWPF_5120_GPIO3_DEFOUT #define HWPF_5120_GPIO3_DEFOUT GPIO3_OUTPUT_LOW#elif (HWPF_5120_GPIO3_MODE == GPIO3_OUTPUT_MODE) #if ((HWPF_5120_GPIO3_DEFOUT != GPIO3_OUTPUT_LOW) && (HWPF_5120_GPIO3_DEFOUT != GPIO3_OUTPUT_HI)) #error HWPF_5120_GPIO3_DEFOUT must be either GPIO3_OUTPUT_LOW or GPIO3_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO3_MODE must be either GPIO3_INPUT_MODE or GPIO3_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO3_MODE != GPIO3_INPUT_MODE)#if (HWPF_5120_GPIO4_MODE == GPIO4_INPUT_MODE) #undef HWPF_5120_GPIO4_DEFOUT #define HWPF_5120_GPIO4_DEFOUT GPIO4_OUTPUT_LOW#elif (HWPF_5120_GPIO4_MODE == GPIO4_OUTPUT_MODE) #if ((HWPF_5120_GPIO4_DEFOUT != GPIO4_OUTPUT_LOW) && (HWPF_5120_GPIO4_DEFOUT != GPIO4_OUTPUT_HI)) #error HWPF_5120_GPIO4_DEFOUT must be either GPIO4_OUTPUT_LOW or GPIO4_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO4_MODE must be either GPIO4_INPUT_MODE or GPIO4_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO4_MODE != GPIO4_INPUT_MODE)#if (HWPF_5120_GPIO5_MODE == GPIO5_INPUT_MODE) #undef HWPF_5120_GPIO5_DEFOUT #define HWPF_5120_GPIO5_DEFOUT GPIO5_OUTPUT_LOW#elif (HWPF_5120_GPIO5_MODE == GPIO5_OUTPUT_MODE) #if ((HWPF_5120_GPIO5_DEFOUT != GPIO5_OUTPUT_LOW) && (HWPF_5120_GPIO5_DEFOUT != GPIO5_OUTPUT_HI)) #error HWPF_5120_GPIO5_DEFOUT must be either GPIO5_OUTPUT_LOW or GPIO5_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO5_MODE must be either GPIO5_INPUT_MODE or GPIO5_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO5_MODE != GPIO5_INPUT_MODE)#if (HWPF_5120_GPIO6_MODE == GPIO6_INPUT_MODE) #undef HWPF_5120_GPIO6_DEFOUT #define HWPF_5120_GPIO6_DEFOUT GPIO6_OUTPUT_LOW#elif (HWPF_5120_GPIO6_MODE == GPIO6_OUTPUT_MODE) #if ((HWPF_5120_GPIO6_DEFOUT != GPIO6_OUTPUT_LOW) && (HWPF_5120_GPIO6_DEFOUT != GPIO6_OUTPUT_HI)) #error HWPF_5120_GPIO6_DEFOUT must be either GPIO6_OUTPUT_LOW or GPIO6_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO6_MODE must be either GPIO6_INPUT_MODE or GPIO6_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO6_MODE != GPIO6_INPUT_MODE)#if (HWPF_5120_GPIO7_MODE == GPIO7_INPUT_MODE) #undef HWPF_5120_GPIO7_DEFOUT #define HWPF_5120_GPIO7_DEFOUT GPIO7_OUTPUT_LOW#elif (HWPF_5120_GPIO7_MODE == GPIO7_OUTPUT_MODE) #if ((HWPF_5120_GPIO7_DEFOUT != GPIO7_OUTPUT_LOW) && (HWPF_5120_GPIO7_DEFOUT != GPIO7_OUTPUT_HI)) #error HWPF_5120_GPIO7_DEFOUT must be either GPIO7_OUTPUT_LOW or GPIO7_OUTPUT_HI !! #endif#else #error HWPF_5120_GPIO7_MODE must be either GPIO7_INPUT_MODE or GPIO7_OUTPUT_MODE!!#endif // (HWPF_5120_GPIO7_MODE != GPIO7_INPUT_MODE)#define HWPF_5120_GPIO_CFG0_MODE ( HWPF_5120_GPIO0_MODE \ | HWPF_5120_GPIO1_MODE \ | HWPF_5120_GPIO2_MODE \ | HWPF_5120_GPIO3_MODE \ | HWPF_5120_GPIO4_MODE \ | HWPF_5120_GPIO5_MODE \ | HWPF_5120_GPIO6_MODE \ | HWPF_5120_GPIO7_MODE ) #define HWPF_5120_GPIO_CFG0_OUTEN ((~(HWPF_5120_GPIO_CFG0_MODE << 16)) & GPIO_CONF0_OUTEN_MASK)#define HWPF_5120_GPIO_CFG0_OUT ( HWPF_5120_GPIO0_DEFOUT \ | HWPF_5120_GPIO1_DEFOUT \ | HWPF_5120_GPIO2_DEFOUT \ | HWPF_5120_GPIO3_DEFOUT \ | HWPF_5120_GPIO4_DEFOUT \ | HWPF_5120_GPIO5_DEFOUT \ | HWPF_5120_GPIO6_DEFOUT \ | HWPF_5120_GPIO7_DEFOUT ) #define HWPF_5120_GPIO_CFG0 ( HWPF_5120_GPIO_CFG0_OUT \ | HWPF_5120_GPIO_CFG0_OUTEN \ | HWPF_5120_GPIO_CFG0_MODE )// +++++++++++++++++++++ GPIO end +++++++++++++++++++++//===========================================================================//===========================================================================// ++++++++++++++++++++ Port0 LED start ++++++++++++++++++++// Port0 LED configuration #if (HWPF_5120_P0_LED0_MODE < 0) || (HWPF_5120_P0_LED0_MODE > GPIOL_100MLINK_ACT_LED)#error The value of HWPF_5120_P0_LED0_MODE is invalid!!!#endif #if (HWPF_5120_P0_LED1_MODE < 0) || (HWPF_5120_P0_LED1_MODE > GPIOL_100MLINK_ACT_LED)#error The value of HWPF_5120_P0_LED1_MO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -