keil模拟单片机延时汇编程序执行,显示的运行时间为什么和理论不一样?

2024-11-16 01:22:16
推荐回答(4个)
回答(1):

仿真模拟 与 电脑速度有关,不可能达到和理论不一样,
只有 在 实际单片机上 运行,才会与 计算理论值一致。

回答(2):

一,晶振的设置是否和你预期的一样
二,你这是应该C语言的程序,不是汇编的,
三,要看实际的运行时间,那么要反汇编就可以看清楚了

回答(3):

“理论大概10.002毫秒,仿真是9.981毫秒”

那是你理论算错了。
应当是
(1+2×248+2)×20+1 = 9981 个指令周期

对于12MHz晶振,一个指令周期1μs,因此总共9.981ms

回答(4):

先看看keil的仿真设置里晶振的频率设置对了没有