当时外部晶振时,特别是没有采用默认25MHz(官方参考默认25MHz晶振),需要修改以下两个
宏定义
#define __HXTAL (HXTAL_VALUE) /* high speed crystal oscillator frequency */
#define HXTAL_VALUE ((uint32_t)8000000) 默认是25MHz,需要改为实际使用的晶振频率
同时倍频宏定义也需要参考实际使用的MCU主频和晶振频率
#include "gd32f4xx.h"
/* system frequency define */
#define __IRC16M (IRC16M_VALUE) /* internal 16 MHz RC oscillator frequency */
#define __HXTAL (HXTAL_VALUE) /* high speed crystal oscillator frequency */
#define __SYS_OSC_CLK (__IRC16M) /* main oscillator frequency */
/* select a system clock by uncommenting the following line */
//#define __SYSTEM_CLOCK_IRC16M (uint32_t)(__IRC16M)
//#define __SYSTEM_CLOCK_HXTAL (uint32_t)(__HXTAL)
//#define __SYSTEM_CLOCK_120M_PLL_IRC16M (uint32_t)(120000000)
//#d