请教坛友,KEIL中PRINTF发送时间长如何修改?

2020-01-12 17:28发布

一直用这个命令没问题,后来 用串口屏,有大量的数据,才发现这个命令发送数据时间长,请问有没有办法改一下?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
32条回答
makesoft
1楼-- · 2020-01-12 22:48
这本身就耗时长,没有办法的事情,除非你自己重写这函数。

这原装的函数考虑的场景太多所以过于臃肿,虽然我们使用的很少部分。
tomzbj
2楼-- · 2020-01-13 04:40
怎么发现时间长的?多半不是printf的问题吧,把串口波特率调高些?
再不行就先用sprintf输出到字符串,然后dma发送,不过程序得优化优化了。
ZHAOBAO511
3楼-- · 2020-01-13 07:15
 精彩回答 2  元偷偷看……
ZHAOBAO511
4楼-- · 2020-01-13 08:26
tomzbj 发表于 2019-6-14 15:57
怎么发现时间长的?多半不是printf的问题吧,把串口波特率调高些?
再不行就先用sprintf输出到字符串,然后 ...

我的是51单片机,没有DMA。
tomzbj
5楼-- · 2020-01-13 13:04
ZHAOBAO511 发表于 2019-6-14 16:09
我的是51单片机,没有DMA。

那得用发送完成中断,加上状态判断,在中断里启动发送下一个字符,稍微有点折腾,不过比卡着等发送完成的效率高多了。
ZHAOBAO511
6楼-- · 2020-01-13 14:36
PRINTF 是固定的函数,KEIL自带的。

一周热门 更多>