找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

基于KEIL 软件的C语言编程,如何计算一段程序的执行时间?

  [复制链接]
跳转到指定楼层
楼主
fan168968 发表于 2014-4-16 10:15:18 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
如题,一段程序执行时间怎样确定,假如是把每条语句的执行时间累加,那么每条语句的时间如何确定???有别的方法可以确定执行时间吗
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具 举报

8#
Angus 发表于 2014-11-12 12:52:35 | 只看该作者
可以在这段代码执行前读一下定时器,执行后再读一下定时器,二者一减,就是执行时间。
回复 支持 反对

使用道具 举报

7#
lic647 发表于 2014-11-12 01:01:30 | 只看该作者
執行前先紀錄timer值,執行後再將timer值減去前紀錄值即可。
回复 支持 反对

使用道具 举报

6#
yejin1221 发表于 2014-8-26 14:20:26 | 只看该作者
一般我们都是写好了一个基本延时。用逻辑分析仪分析。最好调试为10US的为基准
回复 支持 反对

使用道具 举报

5#
 楼主| fan168968 发表于 2014-4-29 09:24:33 | 只看该作者
qiqiqiqiqi 发表于 2014-4-28 16:53
在汇编中,每条语句会有固定的时间,但是C中就不一定了,C指令对应的汇编指令不一定是什么,有可能会相当复 ...

对啊,就是基于这一个原因,我才不好确定程序的执行时间
回复 支持 反对

使用道具 举报

地板
a_ziliu 发表于 2014-4-28 17:45:56 | 只看该作者
軟體作法:
在一段程序执行之前,清除計數器,啟動計數器。
在一段程序执行之後,停計數器,取得計數器的值。

硬體作法:
一開始上電gpio為high
在一段程序执行之前,將io設low。
在一段程序执行之後,將io設high。
用示波器或la看這一段low的時間。
回复 支持 反对

使用道具 举报

板凳
qiqiqiqiqi 发表于 2014-4-28 16:53:00 | 只看该作者
在汇编中,每条语句会有固定的时间,但是C中就不一定了,C指令对应的汇编指令不一定是什么,有可能会相当复杂
回复 支持 反对

使用道具 举报

沙发
qiqiqiqiqi 发表于 2014-4-28 16:52:20 | 只看该作者
在汇编中,每条语句会有固定的时间,但是C中就不一定了,C指令对应的汇编指令不一定是什么,有可能会相当复杂
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU