在用keil调试时,sec数值很大是正常的吗?

比如我程序实际也就运行了两三秒,sec应该是显示的程序运行的总时间啊,但是sec显示却是十几,这样正常吗?如果不正常是为什么?

看看你项目使用的晶振是否与你实际使用的晶振一致。
KEIL中的时钟都是12T的,你看看实际使用的单片机是这样的吗,如果不是,就要根据实际情况把项目晶振进行调整。追问

现在就是为了计算一下时间,用的软件调试,比如写一个for的延时,看看延时时间
延时时间到是差不多,但是让程序随便跑的话,sec显示的时间明显比实际时间快好多,不是sec应该对应实际程序运算的总时间的吗?

追答

不是的,sec是根据你设定的晶振频率,从上电到你当前断点所消耗的时间。你如果一定要跟实际中的时间一致,那晶振频率一定要正确。

温馨提示:内容为网友见解,仅供参考
无其他回答

keil上的sec是什么意思?
second的缩写,也就是“秒”。这里的数值是按照你项目配置中输入的时钟频率估算出来的。

[图]keil uvision2 中调试时候出现的时间“sec”单位是秒吗?
嗯,是秒的意思。注意要现在调试里面选择正确的晶振哦。可以设置断点来测试两点的程序运行时间。也可以来测试精确的延时时间等等。

keil 调试时 Register窗口的 States代表什么?不应该是状态周期么,怎么...
其次,你所说的现象本来就是废话。states就是指令周期数。频率提高了,执行相同指令周期数所需的时间当然会降低。

keil2软件 为什么sec的值的差跟我全速运行后真正用的时间不一样?
首先,你项目设置的晶振频率要跟实际的一致,其次,晶振与CPU频率的关系也要一致,例如,12T,6T,1T等等。这些都直接与运行速度相关。

keil uvision 调试的时候sec是指什么?
从程序开始运行到执行本行所花的时间,基于不同的晶振。

Keil uVision里的调试程序时,在sec中显示的那个是毫秒和微妙_百度知 ...
从程序开始运行到执行本行所花的时间,基于不同的晶振。

在使用KEIL软件调试程序的时候要知道运行时间,但是运行的时候"sec"一...
是不是那个窗口太小看不全sec?那是微秒级变化的。另外,你可看KEIL工程的窗口底部,那也有运行时间的。

keil中register里面都是什么意思
与其听我在这里瞎嘞嘞,你还不如找本51的书,好好看看它的基本结构,这些内部寄存器的意义和用法。了解一下什么是累加器、栈指针、外部访问指针,什么是寄存器组,

keil 运行时,左侧的sec不会跟着时间变化了,只有暂停的时候直接改变一下...
在调试模式下,依次点击主菜单的View,然后勾选最下方的Periodic Windows Update(定时更新各窗口内容)。

STM32 怎么在IAR得到一条指令的执行时间
如果是用keil的话,可以按菜单上的debug进入调试模式,然后可以看到左边多了一个窗口,里面会显示当前各个寄存器、堆栈、PC指针的值,其中有一个项是sec,就是表示程序运行时间的。想知道一条指令的执行时间,可以把PC指针指向这条指令,然后在下一条指令处设置断点,先按“reset”清零一下sec的值,再按...

相似回答