1、单片机内部定时器 使用单片机内部定时器,在待测程序段的开始启动定时器,在待测程序段的结尾关闭定时器。如下所示:
为了测量的准确性,要进行多次测量,并进行平均取值。另外,如果待测程序耗时较长,要考虑定时器的溢出。 2、借助外部工具 如果你的程序没有多余的定时器可用,那么可以借助外部工具来测量。在待测程序开始时将一个GPIO置高,在待测程序结束时将GPIO置低。用示波器或者其他设备测量高电平的持续时间即可。 3、使用编译器 在线仿真时,编译器也可以帮你计算程序运行时间。在Keil中,工程设置中“Debug”下。点击Setting:
选择Trace,输入单片机系统时钟,以STM32F103为例,输入72MHz,勾选Trace Enable。
点击确定。点击 进入Debug模式,右下角会出现程序运行的时间。
在待测代码前后各加入一个断点,记录两个断点的t1时间,两个时间差即为待测代码运行所需的时间。
|