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

28377D程序烧入后,CPU02为何会跑到BOOT ROM去?

29377D双核各自完成相应功能,程序烧入FLASH后,CPU01能够正常运行 ,CPU02会跑到BOOT ROM的地址去,若屏蔽SteppingA程序,则正常运行。

A程序只做了简单的判断,如下:

void SteppingA(Uint16 xUpOrDown, float32 xAmplitudeLimitStepUp,float32 xAmplitudeLimitStepDown)
{
if(xUpOrDown == 1)//递增
{
ModeStr.FirstLevelDataA += xAmplitudeLimitStepUp;
if(ModeStr.FirstLevelDataA > 1)
{
ModeStr.FirstLevelDataA = 1;
ModeStr.SecondLeverDataA += xAmplitudeLimitStepUp;
}
if(ModeStr.SecondLeverDataA > 1)
{
ModeStr.SecondLeverDataA = 1;
ModeStr.ThirdLeverDataA += xAmplitudeLimitStepUp;
}
if(ModeStr.ThirdLeverDataA > 1)
{
ModeStr.ThirdLeverDataA = 1;
}
}
else if(xUpOrDown == 0)//递减
{
ModeStr.ThirdLeverDataA -= xAmplitudeLimitStepDown;
if(ModeStr.ThirdLeverDataA < 0)
{
ModeStr.ThirdLeverDataA = 0;
ModeStr.SecondLeverDataA -= xAmplitudeLimitStepDown;
}
if(ModeStr.SecondLeverDataA < 0)
{
ModeStr.SecondLeverDataA = 0;
ModeStr.FirstLevelDataA -= xAmplitudeLimitStepDown;
}
if(ModeStr.FirstLevelDataA < 0)
{
ModeStr.FirstLevelDataA = 0;
}
}
else
{}
}

或者说程序只要不运行到SteppingA程序,都能够正常运行。有没有高手指点一二????

Eric Ma:

ERIC:

如果不跑路该代码,则程序运行正常,那么你要检查一下,是不是CPU2复位了。然后从复位源着手去排查一下,比如看门狗复位。

赞(0)
未经允许不得转载:TI中文支持网 » 28377D程序烧入后,CPU02为何会跑到BOOT ROM去?
分享到: 更多 (0)