keil 中 1s的延时程序 在仿真中体现不出,该怎么解决
keil 中 1s的延时程序 在仿真中体现不出delay:mov r5,#50de1:mov r6,#100de2:mov r7,#100djnz r7,$djnz r6
keil 中 1s的延时程序 在仿真中体现不出
delay:mov r5,#50
de1 :mov r6,#100
de2 :mov r7,#100
djnz r7,$
djnz r6,de2
djnz r5,de1
ret
按计算是1s的延时,但是在keil仿真时 小灯闪烁得很快
希望解决
[解决办法]
[解决办法]keil软仿真需要设置单片机用的晶振频率的。你算1s时用的是什么频率?
另外,可以在仿真时看keil左边栏,有一个时间值,是从启动到当前pc所经历的时间。
你可以用单步调试,执行到这段延时的第一步,然后将光标定位到延时程序结束后的一条指令,然后用“运行到光标所在行”的方式,直接运行完这一段延时,再看那个时间值,算一下差值就知道实际用了多长时间。
[解决办法]ding
[解决办法]这个问题很简单啦。
在keil中,打开菜单project\Options for Target "Target 1"
然后在弹出的对话框的debug属性页左上方勾上"Limit Speed to Real-Time"前的单选框。
呵呵,虽然很简单,但是最开始我也被这个问题弄的头疼过。
对了,我的keil是v8.05,不知道不同的版本这里的设置是否有不同,你自己注意看看。