stm32-串口实验遇到的问题

Posted lzd626

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32-串口实验遇到的问题相关的知识,希望对你有一定的参考价值。

1.Printf函数不能在调试助手里正常打印?

前提是已经重定向了printf到串口,而且已经在option里勾上了use microlib,一切配置都毫无问题,在main.c里简单printf(“balabala”);却不能在调试助手里打印出来,点发送也只能发送在调试界面输入的内容;

2.解决方案

(1)将连接电脑的串口线,拔一下,再插一下,点击发送,打印就OK了;

(2)上面这种方法比较笨重,还有一种简单的方法:直接reset,就会直接答印了;

3.分析

实质上两种方法有根本的区别,读者自行实验判断;由于我是用串口烧写程序的,在烧写时会关闭调试助手的串口,等烧写完再打开调试助手的串口,在这段时间内,一条printf打印信息已经被发送完了,但根本没被调试助手接收到,所以只要reset一下,就会马上打印你想输出的信息了;

4.总结

一开始以为是调试助手的问题,到处下载其他的调试助手,实则结果都一样;然后再排查程序的问题(重定向),也没问题;再着查看配置的问题,比如引脚的配置,波特率的配置,也都没问题;最后偶然插拔了一下usb线就可以了解决问题了;再最后发现reset更为有效。所以通过以上步骤可以发现,遇到问题,只要一一排查所有的可能性,最终是会发现答案的。

以上是关于stm32-串口实验遇到的问题的主要内容,如果未能解决你的问题,请参考以下文章

STM32串口遇到的一个问题

STM32 USB转串口驱动移植到SylixOS中遇到的问题总结

STM32F407: USART 遇到的问题

如何使用串口来给STM32下载程序

65 STM32F0系列 串口DMA循环接收实验记录

65 STM32F0系列 串口DMA循环接收实验记录