不过我也不用标准库提供的system_stm32f10x.c
一般都是自己写SystemInit函数
用GD32的库的话, 类似这样, 这是把GD32FFPRTGU6超频到280M的配置
void SystemInit(void)
{
nvic_vector_table_set(NVIC_VECTTAB_FLASH, 0x000);
rcu_deinit();
rcu_osci_on(RCU_HXTAL);
rcu_osci_stab_wait(RCU_HXTAL);
rcu_periph_clock_enable(RCU_PMU);
pmu_ldo_output_select(PMU_LDOVS_HIGH);
rcu_ahb_clock_config(RCU_AHB_CKSYS_DIV1);
rcu_apb2_clock_config(RCU_APB2_CKAHB_DIV2);
rcu_apb1_clock_config(RCU_APB1_CKAHB_DIV4);
rcu_pllpresel_config(RCU_PLLPRESRC_HXTAL);
rcu_predv0_config(RCU_PREDV0_DIV2);
rcu_pll_config(RCU_PLLSRC_HXTAL_IRC48M, RCU_PLL_MUL35); // 16M/2*35=280M
rcu_osci_on(RCU_PLL_CK);
rcu_osci_stab_wait(RCU_PLL_CK);
pmu_highdriver_mode_enable();
while(pmu_flag_get(PMU_FLAG_HDRF) == RESET);
pmu_highdriver_switch_select(PMU_HIGHDR_SWITCH_EN);
while(pmu_flag_get(PMU_FLAG_HDSRF) == RESET);
rcu_system_clock_source_config(RCU_CKSYSSRC_PLL);
while(rcu_system_clock_source_get() != RCU_SCSS_PLL);
__enable_irq();
}
【 在 tom6bj (tom) 的大作中提到: 】
: google随便一搜都有啊... 你自己搜一下试试
: 1. stm32f10x.h里的HSE_STARTUP_TIMEOUT, 默认是0x500, 改成0xffff, GD32的HSE稳定慢一点
: 2. system_stm32f10x.c, 模仿它的写法增加一个SYSCLK_FREQ_108MHz, 以及增加一个SetSysClockTo108函数. 如果还当72MHz的用, 这里不改也行.
: ...................
--
FROM 101.41.186.*