怎样查看一部分程序运行的时间

[复制链接]
 楼主| 不眠的硅谷 发表于 2009-2-20 10:12 | 显示全部楼层 |阅读模式
各位大侠,我用mplab icd 2 调试程序,用什么办法可以知道一部分程序运行了多长时间。谢谢
machunshui 发表于 2009-2-20 10:32 | 显示全部楼层

定时器

定时器
 楼主| 不眠的硅谷 发表于 2009-2-20 11:02 | 显示全部楼层

怎样查看一部分程序运行的时间

谢谢,,能不能用仿真软件直接观查看
xieyuanbin 发表于 2009-2-20 14:50 | 显示全部楼层

用ICD2仿真时是看不到的。

因为控制权在实际运行的芯片那边,如果要看时间,必须使用软件仿真(SIM)或全功能仿真器
NE5532 发表于 2009-2-23 20:18 | 显示全部楼层

拿端口做方波,示波器打,最实在的方法了。

  
lanyong 发表于 2009-2-24 10:15 | 显示全部楼层

right

法1:拿端口做方波,示波器打,最实在的方法了。<br /><br />我也经常这样弄.<br /><br />法2:定时器&nbsp;<br /><br />开头打开,运行后结束.通过串口把值送出来.<br /><br />法3:软仿<br /><br />其实,我还是比较喜欢直接烧进去跑.
lanyong 发表于 2009-2-24 10:18 | 显示全部楼层

法4

自己按指令条数,一个一个算周期.
yjypmypm 发表于 2009-2-26 22:09 | 显示全部楼层

软件仿真可以这样。ICD2没用过。

可以先打开stopwatch&nbsp;&nbsp;然后在被测程序前设一个断点再在结尾设一个断点。开全速运行,到第一个断点处清stopwatch.再全速运行,到第二个断点时即为运行时间。<br />如果程序需要硬件返回信号,可暂时用//屏蔽代码(没有仿真器只有这样了)。
hugo0chen 发表于 2013-8-12 20:21 | 显示全部楼层
lanyong 发表于 2009-2-24 10:15
法1:拿端口做方波,示波器打,最实在的方法了。我也经常这样弄.法2:定时器&nbsp;开头打开,运行后结束.通过 ...

用示波器观察的话,如果时间比较快,用比较上等的示波器才好,我现在用的着个50MHz的量测模拟的IO口高低电平脉冲宽度,误差还是挺大的 。
lanyong 发表于 2013-9-6 10:53 | 显示全部楼层
hugo0chen 发表于 2013-8-12 20:21
用示波器观察的话,如果时间比较快,用比较上等的示波器才好,我现在用的着个50MHz的量测模拟的IO口高低 ...

50M,足够了啊。pic主频不高的啊。

你可以搞100段这样的程序,去除100,不就知道了嘛。
yewuyi 发表于 2013-9-6 15:45 | 显示全部楼层
lanyong 发表于 2013-9-6 10:53
50M,足够了啊。pic主频不高的啊。

你可以搞100段这样的程序,去除100,不就知道了嘛。 ...

PIC16很多新型号都可以达到32M的主频了,呵呵,50M可真的有点慢了哦。
lanyong 发表于 2013-10-13 09:04 | 显示全部楼层
yewuyi 发表于 2013-9-6 15:45
PIC16很多新型号都可以达到32M的主频了,呵呵,50M可真的有点慢了哦。

各口出来的信号大多8M而已,50M的示波器看来够用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

39

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部