看了网上相关文章,对乱码问题进行总结,也方便自己以后搞忘。
1.确定硬件连接没有问题,建议使用万用表打一下。
2.串口波特率,软件设计与串口调试助手一致。如下图:
3.硬件中外部晶振频率是否和程序中(stm32xxxx.h-->stm32f0xx.h)一致。对照数据手册设备树、硬件原理图以及程序。
在上图中OSC_OUT和OSC_IN对应HSE(外部高速时钟),在原理图上接的8MHz,因此程序中HSE_VALUE的值为8000000。
4.在MDK keil 5 中 使用printf是需要勾选Use MicroLIB选项,点击魔术棒-->Target选项下,如下:
如果以上不能解决就尝试着点击魔术棒-->C/C++选项下的Optimization:修改为<default>
每个人情况不同,我是把上述所有尝试完才解决的。所以浅浅的记录一下啦(打工人,上班时间不敢记录,所以没贴结果图) !
因为文章太多,我就不贴链接,如有作者看到觉得冒犯到您,敬请见谅!