测量代码运行时间

1.JLINK测量
在工程设置中“Debug”下,按照下图设置,选右边硬件仿真,点下拉框选“J-LINK/J-TRACE”,再点“Setting”
在这里插入图片描述
在弹出窗口中“Debug”下,选“JTAG”或“SW”,在后面选好下载速率。
在这里插入图片描述
点到Trace”标签下,如果是选择的“SW”

则勾选“Enable”选项,在“Core”框中输入MCU实际工作时钟频率(就是单片机以什么频率来执行指令的,MDK会用它来计算时间),再勾选“Autodetect max SW0 Clock”
若是JLINK仿真器选择“SW”模式,
在这里插入图片描述

如果是选择的“JTAG”,
先勾选“Enable”,在“Core”中设好时钟频率,最后去掉刚才勾选的“Enable”
在这里插入图片描述

因为“JTAG”模式不支持“Trace”功能,不把“Enable”去掉,仿真会报错。

接下来进入仿真,界面右下角就会有时间窗口

鼠标放在上面右键点击,就会有:
在这里插入图片描述
在这里插入图片描述上右键,会出现如下图。
其中,可知,t1,t2可复位,下面3个是选择在状态栏上显示哪个时间。
在这里插入图片描述
“t0”表示程序开始运行到现在的时间,是不能复位的。另外两个可以随便复位,就可以用来测具体某一个函数或某一行程序的运行时间。

具体操作为:在要测试的代码前加一个断点,当程序运行到目标行时会停下,然后复位“t1”或“t2”,并在下一行代码前加断点,然后继续运行程序,程序会停在下一行代码前,这个时候“t1”的值就是目标行程序的运行时间。
2. 示波器测量
在函数执行前,设置GPIO电平,函数执行后,将该GPIO翻转,用示波器测量该GPIO的电平转换时间。可精确测量函数实际工作时长。

注:在调试模式下,通过设置两个断点,计算运行时长,不能代表函数运行时长,只代表该工程运行时间。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值