STM32F105VC波特率不一致

写在前面:

欢迎所有人给我提出任何意见和建议
如果有帮助的可以在下方评论写几个字
谢谢!


简述一下问题:

我芯片STM32F105VC,串口UART5,设置波特率9600如图,但是在串口调试助手中,设置的波特率9600是乱码

经过测试,如果波特率设置为28800则可以正常显示,也就是说比调试多出3倍。

原因:

在stm32f10x.h中,设置了时钟频率如下图,因为我定义STM32F10X_CL也就是25MHz,但是实际电路中,接的晶振是8MHz,所以应该将25MHz改为8MHz

其他可能原因:

  1.  查一下system_stm32f10x.c文件是否包含进你的项目里,如果没有包含进去的话,编译器会调用编译器自己的。
  2. 如果有,检查一下是否调用systemInit()。
  3. 再三查看一下你的系统时钟频率对不对,stm32时钟相关的资料推荐看这里


猜你喜欢

转载自blog.csdn.net/lo_heng/article/details/78840770
今日推荐