共2条
1/1 1 跳转至页
keil 在keil C中如何查看程序的仿真时间?

问
在keil C中如何查看程序的仿真时间?
多谢! 答 1: 就在左边的 工程窗口中,那个psw上面那个sec的值就是了。 答 2: 有疑问。。。比如想知道while(P1_0)仿真所用的机器周期数,我找到了如下程序
#include<at89x51.h>
main()
{ while(P1_0)
{P1_0=0;}
while(!P1_0)
{P1_0=1;}
}
好像每次全速执行随意点停止键时,sec里面的数值不是固定不变的。 答 3: sec显示的是从开始运行到你停止时,所花费的总时间。 答 4: 请看:网友的一个问题:
******问while(p1_0)的执行时间?*******
假设,P1_0为单片机P1口的第一脚,请问,
while(P1_0)
{
P1_0=0;
}
while(!P1_0)
{
P1_0=1;
}
以上代码,在KEIL C中,需要多长时间,执行完。能具体说明while(P1_0)的执行时间吗?
******有人这样回答的:“仿真运行看看就知道了,我仿真了试了一下,大约14个周期”***************
@@@@@我就是想知道这个回答的人是怎么知道这个“14个周期”的?
答 5: 使用单步运行。看states中的数值变化。 答 6: 您方便帮我运行一下吗?非常感谢您不厌其烦的指导,但我是个新手,还有些问题搞不懂。
如果您方便的话,可否帮我运行一下,为什么执行完该程序后,如果我继续单步运行,就开始执行STARTUP.A51中的程序了呢?那么通过运行,能从states中值的变化说明while(P1_0)的执行时间是14个周期么? 答 7: 我运行了一下,用了7个周期while(P1_0)
{
P1_0=0;
}
这一段用了7个周期,
while(!P1_0)
{
P1_0=1;
}
这一段也用了7个周期,
所以加起来是14个周期。 答 8: 多谢! 答 9: 但还有些事相求如果我运行完14周期以后,即执行完主程序,
倘若我继续单步运行,就开始执行STARTUP.A51中的程序了。
能帮我解释这是什么原因么?可否简单介绍下STARTUP.A51?我一点都不了解它!!
非常感谢啊!! 答 10: 你的程序没有主循环,跑飞了……#include<at89x51.h>
void main(void)
{
while(1)
{
while(P1_0)
{
P1_0=0;
}
while(!P1_0)
{
P1_0=1;
}
}
}
这样就不会跑到那里去了。 答 11: thank you very much! 答 12: 非常感谢!
多谢! 答 1: 就在左边的 工程窗口中,那个psw上面那个sec的值就是了。 答 2: 有疑问。。。比如想知道while(P1_0)仿真所用的机器周期数,我找到了如下程序
#include<at89x51.h>
main()
{ while(P1_0)
{P1_0=0;}
while(!P1_0)
{P1_0=1;}
}
好像每次全速执行随意点停止键时,sec里面的数值不是固定不变的。 答 3: sec显示的是从开始运行到你停止时,所花费的总时间。 答 4: 请看:网友的一个问题:
******问while(p1_0)的执行时间?*******
假设,P1_0为单片机P1口的第一脚,请问,
while(P1_0)
{
P1_0=0;
}
while(!P1_0)
{
P1_0=1;
}
以上代码,在KEIL C中,需要多长时间,执行完。能具体说明while(P1_0)的执行时间吗?
******有人这样回答的:“仿真运行看看就知道了,我仿真了试了一下,大约14个周期”***************
@@@@@我就是想知道这个回答的人是怎么知道这个“14个周期”的?
答 5: 使用单步运行。看states中的数值变化。 答 6: 您方便帮我运行一下吗?非常感谢您不厌其烦的指导,但我是个新手,还有些问题搞不懂。
如果您方便的话,可否帮我运行一下,为什么执行完该程序后,如果我继续单步运行,就开始执行STARTUP.A51中的程序了呢?那么通过运行,能从states中值的变化说明while(P1_0)的执行时间是14个周期么? 答 7: 我运行了一下,用了7个周期while(P1_0)
{
P1_0=0;
}
这一段用了7个周期,
while(!P1_0)
{
P1_0=1;
}
这一段也用了7个周期,
所以加起来是14个周期。 答 8: 多谢! 答 9: 但还有些事相求如果我运行完14周期以后,即执行完主程序,
倘若我继续单步运行,就开始执行STARTUP.A51中的程序了。
能帮我解释这是什么原因么?可否简单介绍下STARTUP.A51?我一点都不了解它!!
非常感谢啊!! 答 10: 你的程序没有主循环,跑飞了……#include<at89x51.h>
void main(void)
{
while(1)
{
while(P1_0)
{
P1_0=0;
}
while(!P1_0)
{
P1_0=1;
}
}
}
这样就不会跑到那里去了。 答 11: thank you very much! 答 12: 非常感谢!
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 | |
【换取手持数字示波器】分享一个KEIL无法识别CMSIS-DAP调试器的解决办法被打赏20分 | |
【换取手持数字示波器】分享一个自制的ArduinoNano扩展板底板被打赏23分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 |