水木社区手机版
首页
|版面-电路设计与调试(Circuit)|
新版wap站已上线
返回
1/1
|
转到
主题:为啥这个直接操作uart没有比printf省时间啊?
楼主
|
nlgdczm
|
2026-01-16 11:02:14
|
只看此ID
rt,
注释掉的那一行printf,一秒钟能输出2K多行*8byte;下面替换的那一堆uart send,一秒钟也是2K多行*8byte。
这个跟AI说的效率高低大相径庭啊!这又是哪里出现了偏差?
--发自 ismth(丝滑版)
--
FROM 117.136.120.*
1楼
|
davicom
|
2026-01-16 13:13:56
|
只看此ID
说明瓶颈在串口速率,而不在printf函数的执行效率
【 在 nlgdczm 的大作中提到: 】
:
: rt,
: 注释掉的那一行printf,一秒钟能输出2K多行*8byte;下面替换的那一堆uart send,一秒钟也是2K多行*8byte。
: 这个跟AI说的效率高低大相径庭啊!这又是哪里出现了偏差?
--
FROM 111.164.186.*
2楼
|
sowater
|
2026-01-16 13:31:56
|
只看此ID
波特率设低了?
【 在 nlgdczm 的大作中提到: 】
: rt,
: 注释掉的那一行printf,一秒钟能输出2K多行*8byte;下面替换的那一堆uart send,一秒钟也是2K多行*8byte。
: 这个跟AI说的效率高低大相径庭啊!这又是哪里出现了偏差?
: ...................
--
FROM 39.144.130.*
3楼
|
pauljoe
|
2026-01-16 15:35:16
|
只看此ID
波特率115200,每秒是11K,每个字节是100us,printf的开销相比就很小
你提到1Mbps,每个字节是10us,printf的占比开始提升,但也不大
说实话,就你这种代码,就不要去考虑什么性能问题了
--
FROM 211.157.135.*
4楼
|
creek
|
2026-01-16 16:23:08
|
只看此ID
同意。有啥区别?此处AI未必有LZ懂。:-D
【 在 pauljoe 的大作中提到: 】
: 波特率115200,每秒是11K,每个字节是100us,printf的开销相比就很小
: 你提到1Mbps,每个字节是10us,printf的占比开始提升,但也不大
: 说实话,就你这种代码,就不要去考虑什么性能问题了
--
FROM 183.194.72.*
5楼
|
tom6bj
|
2026-01-25 16:55:29
|
只看此ID
想要效率高,波特率先提高, 500k, 1M,2M,现在都是常规操作。
然后是用DMA发送,函数调用完马上返回,DMA在后台继续慢慢发,不影响你前台。
9600或者115200还要阻塞调用等着发完的话也没啥效率好说了
【 在 nlgdczm 的大作中提到: 】
: rt,
: 注释掉的那一行printf,一秒钟能输出2K多行*8byte;下面替换的那一堆uart send,一秒钟也是2K多行*8byte。
: 这个跟AI说的效率高低大相径庭啊!这又是哪里出现了偏差?
: ...................
--
FROM 222.129.5.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版