void Init_Cpu(void) { __set_PSP((uint32_t)msp_top); __set_PRIMASK(1); __set_FAULTMASK(1); __set_CONTROL(0); #if (CN_CPU_OPTIONAL_FPU == 1) startup_scb_reg->CPACR = (3UL << 20)|(3UL << 22); //使能FPU startup_scb_reg->FPCCR = (1UL << 31); //关闭lazy stacking #endif switch(startup_scb_reg->CPUID) { } extern void SysClockInit(void); SysClockInit(); #ifdef USE_HAL_DRIVER HAL_TickInit(); #endif extern void SRAM_Init(void); SRAM_Init(); IAP_SelectLoadProgam(); }
void Init_Cpu(void) { __set_PSP((uint32_t)msp_top); __set_PRIMASK(1); __set_FAULTMASK(1); __set_CONTROL(0); #if (CN_CPU_OPTIONAL_FPU == 1) pg_scb_reg->CPACR = (3UL << 20)|(3UL << 22); //使能FPU pg_scb_reg->FPCCR = (1UL << 31); //关闭lazy stacking #endif switch(pg_scb_reg->CPUID) { // case cn_revision_r0p1://todo // break; //好像没什么要做的 } extern void WDT_Disable(void); WDT_Disable(); //关狗 extern void SysClockInit(void); SysClockInit(); extern void SDRAM_Init(void); SDRAM_Init(); extern void Cache_Init(void); Cache_Init(); Load_Preload(); }