智能车制作
标题:
代码执行时间如何知道?
[打印本页]
作者:
Cang
时间:
2009-5-10 10:32
标题:
代码执行时间如何知道?
请问如何能够知道你的代码的处理时间是否超过20ms?
作者:
peilet
时间:
2009-5-10 10:32
本帖最后由 peilet 于 2009-5-17 10:04 编辑
可以在需要测量执行时间的程序前启动一个定时器,程序最后停止计数,然后就可以求到执行时间。
e.g.:
void timing(void)
{
computational_time = timervalue_end - timervalue_start / timer_clockcycle;
}
startTimer();
funct();
stopTimer();
timing();
作者:
HCS12
时间:
2009-5-10 12:34
可以看看
http://blog.eccn.com/u/146002/archives/2009/12438.htm
,whut_wj写的挺详细的
作者:
sehszf
时间:
2009-5-11 19:04
谢谢
作者:
Cang
时间:
2009-5-13 22:57
非常感谢,最近电信发神经,不能上网,刚好,感谢迟了,见谅!
作者:
winkingh
时间:
2009-5-14 20:26
示波器,看执行周期!
作者:
Cang
时间:
2009-5-16 22:15
我觉得楼上的方法好啊!!!
作者:
peilet
时间:
2009-5-17 10:02
timervalue_end - timervalue_start 是S12单片机计数器在代码执行时间内的计数次数,
再除以计数器工作频率timer clock cycle,得到的computational time就是代码的精确执行时间了。
如果timer clock cycle的单位是MHz,如unsigned char timer clock cycle = 32 (MHz),则computational time变量的单位是1/MHz, 即us。
20ms的话,如果得到的computational time变量大于20000,则代码执行时间超过20ms。
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2