[求助] STM32F407 printf输出到串口调试助手,一开始正常,后来就不显示了

散飞雪   2017-2-10 12:10 楼主
如题,求教大神,楼主用的USART1串口通过DMA接收数据,然后printf到USART3串口输出显示在串口调试助手,串口的初始化如下
QQ图片20170210114000.png

串口1及其DMA的初始化配置如下

QQ图片20170210113811.png

串口3的初始化配置如下

QQ图片20170210113844.png

主程序就是在while死循环里循环输出printf("hello"),如下所示

QQ图片20170210114032.png

程序加载运行后,一开始串口调试助手有输出显示的hello,一会就停止了,就没有输出显示了,把程序里的while注释掉后,就恢复正常了,更改存放DMA接收数据的buff数组,数组越大,输出显示hello的时间就越长,但是还是会输出一会就停掉。想请教一下这个是怎么回事,怎么解决,谢谢各位了




回复评论 (1)

你用printf语句 还需要用到DMA么?    你用了DMA你起码得查找下DMA是否发送完成,再发下一串数据。那样比较好。
点赞  2017-2-10 14:46
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复