原因一:
初始化串口的波特率与串口调试助手不一致。
原因二:
晶震不一致。
串口输出始终乱码,外部时钟频率配置错误导致的,库使用默认8MHz晶震,可以通过宏使用25MHz晶震。具体定义在 stm32f10x.h 文件中
开发板晶震使用的12MHz晶震,定义一个宏修改成12000000,编译,烧写。
#if !defined HSE_VALUE
#ifdef STM32F10X_CL
#define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */
#else
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
#endif /* STM32F10X_CL */
#endif /* HSE_VALUE */
1.
2.
3.
4.
5.
6.
7.
修改为:
#define HSE_VALUE ((uint32_t)12000000) /*!< Value of the External oscillator in Hz */
#if !defined HSE_VALUE
#ifdef STM32F10X_CL
#define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */
#else
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
#endif /* STM32F10X_CL */
#endif /* HSE_VALUE */
1.
2.
3.
4.
5.
6.
7.
8.
|