TI中文支持网
TI专业的中文技术问题搜集分享网站

关于CCS5.5.0中调试测试SFO()执行时间的问题

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

hai sun:

先顶一下!!!!!!!!!!!!!!

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

Hank Zhao:

step into是跳入函数内部单步,step over是直接执行完整个函数。

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

hai sun:

回复 Hank Zhao:

但是对于update_MepScaleFactor();函数,step into和step over的clock结果应该是一样的。为什么clock结果不一样呢?

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

hai sun:

回复 Hank Zhao:

Hank Zhao

step into是跳入函数内部单步,step over是直接执行完整个函数。

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

Hank Zhao:

回复 hai sun:

while (SFO() == 0) {}是一条循环指令,step into只会执行一遍,但setp over会循环执行这条指令,直到SFO() 不等于0才结束。

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

hai sun:

回复 Hank Zhao:

Hank Zhao

while (SFO() == 0) {}是一条循环指令,step into只会执行一遍,但setp over会循环执行这条指令,直到SFO() 不等于0才结束。

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

Hank Zhao:

回复 hai sun:

你可以在while (SFO() == 0) {}里边加一个i++;语句,再分别step into和step over,从而比较两者的执行次数,看能发现有什么不同。

在CCS5.5.0+TMS320F28035+XDS100V1环境下,调试SFO()函数的执行时间。测试函数:update_MepScaleFactor();

函数结构:

void update_MepScaleFactor( void )
{
  /* MEP_ScaleFactor initialized using function SFO ()*/
  while (SFO() == 0) {
  }                                    /* MEP_ScaleFactor calculated by MEP Cal Module            */
}

测试方法:使用CCS5中的clock功能

结果:在step into调试下,update_MepScaleFactor()测得clock结果为2723。

        在step over调试下,update_MepScaleFactor()测得clock结果为138599。

为何step into和step over两个方式下clock结果差距这么大?求解。。。。。。

 

hai sun:

回复 Hank Zhao:

Hank Zhao

你可以在while (SFO() == 0) {}里边加一个i++;语句,再分别step into和step over,从而比较两者的执行次数,看能发现有什么不同。

赞(0)
未经允许不得转载:TI中文支持网 » 关于CCS5.5.0中调试测试SFO()执行时间的问题
分享到: 更多 (0)