STM32F407 printf函数打印输出数据到串口调试助手出问题

2019-03-23 17:49发布

如题,楼主是STM32F407的板子,用DMA接收数据,DMA接收的数据存放在缓存数组中,然后用printf打印输出缓存数组存放的数据,程序刚加载运行的时候正常,DMA接收到什么数据,printf就打印输出什么数据在串口调试助手显示。但是程序运行一段时间后,就没有数据输出显示了,开始我还以为是因为DMA没有接收到新的数据,所以没有显示。
但是单步debug之后,发现DMA一直有接收到的新数据,因为存放数据的缓存数组里的数据在变化,但是printf不工作了,就是串口调试助手不显示输出了,想请教一下大神,这个是怎么回事,怎么解决,楼主刚做STM32开发没多久,小白一个,希望大神们给一些指点
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
11条回答
散飞雪
2019-03-24 10:35
sysjtlwx 发表于 2017-2-10 09:28
是使用MDK编程的吗 ?不知道是不是设置里没有打开微库导致的printf不好用的问题,可以进MDK魔术棒Target里 ...

是使用的MDK编程,刚刚看了下魔术棒里的Target,USE MicroLIB已经勾选上了。
上午我又重新调试了一下,这次我把所有的程序都注释掉了,就写了在while(1)里执行printf(“hello”);情况也是一样,一开始串口调试助手正常输出显示hello,输出一段时间后就不输出了。

一周热门 更多>