单片机程序执行时间测量

6 篇文章 0 订阅


在进行单片机程序开发时,有时我们需要测量一下某个函数的执行时间,如时间片轮询是否按照设想的情况每隔一段固定时间执行。那么如何测量函数执行时间呢?

方法一仿真调试

1、配置仿真器,根据实际芯片时钟配置

在这里插入图片描述
在这里插入图片描述

2、在需要测量的函数段打断点,执行函数

在这里插入图片描述
在这里插入图片描述

3、计算时间

两者相减即为函数执行时间
t = t2 - t1;约等于264ms

方法二定时器计数

1、配置定时器中断,在中断中全局变量累加,优先级设置为最高

这里使用的是滴答定时器,1ms中断。

2、在需要测量的函数段打断点,执行函数

在这里插入图片描述
在这里插入图片描述

3、全局变量的差值即为函数执行时间

那么这段函数执行时间大概为264ms,数值与第一种方法测量值一样。

方法三示波器,逻辑分析仪测量

这种方法适合在没有仿真器的条件下测量,和验证。

1、配置某个GPIO引脚为输出模式,默认输出低电平

2、在需要测量的函数段前面使GPIO引脚输出高电平,函数段后使GPIO引脚输出低电平

3、使用示波器或逻辑分析仪测量高电平时间,即可测量函数执行时间

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值