1
在Register子窗口,会显示CPU
cycles:
xxx,这是从复位开始到当前断点的CPU周期。
2
某些型号,在状态栏可以查看从复位开始到当前断点的总时间。这个时间有两种表示方式,时间值和CPU周期,取决于设置频率时的选择,CPU
Cycles或True
Time。
手上没有调试板,以上在Full
Chip
Simulation时肯定有,硬件调试时忘了。
在Keil运行时可以看时间。见图。但只有在软件仿真时可以。
在Options for Taget 'Taget 1'中,Debug插页里,点Use Similation见图一。
在进入Debug后,图二绿框中所示即运行的机器周期数(States)和时间(Sec),以μS为单位。
BOOL QueryPerformanceFrequency(LARGE_INTEGER lpFrequency);可以返回硬件支持的高精度计数器的频率。先调用QueryPerformanceFrequency()函数获得机器内部计时器的时钟频率。接着在需要严格计时的事件发生前和发生之后分别调用QueryPerformanceCounter(),利用两次获得的计数之差和时钟频率,就可以计算出事件经历的精确时间。
#include "stdafxh"#include <windowsh>
#include <timeh>
#include "processh"
#define random(x) (rand()%x)
int _tmain(int argc, _TCHAR argv[])
{
LARGE_INTEGER fre = { 0 }; //储存本机CPU时钟频率
LARGE_INTEGER startCount = { 0 };
LARGE_INTEGER endCount = { 0 };
QueryPerformanceFrequency(&fre);//获取本机cpu频率
//开始计时
QueryPerformanceCounter(&startCount);
//运算
for (int i = 0; i < 10000000; i++)
{
float fTem1 = random(100)random(1000)random(10000)random(100000);
}
//结束计时
QueryPerformanceCounter(&endCount);
//计算时间差
double dTimeTake = ((double)endCountQuadPart - (double)startCountQuadPart) / (double)freQuadPart;
printf("用时%f\n", dTimeTake);
system("pause");
return 0;
}
以上就是关于飞思卡尔软件CW调试时怎样查看某段程序运行的时间全部的内容,包括:飞思卡尔软件CW调试时怎样查看某段程序运行的时间、用keil编译时怎么看程序运行的时间、C语言中如何输出显示程序的运行时间 望赐教!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)