TMS320F28377D: 在cla中类型转换不成功,for循环cla会卡死问题

Part Number: TMS320F28377D

static inline short cla_mod200(int x)

{
int k = x / 200;
int tmp = x - k * 200;
if (tmp < 0) tmp += 200;
return (short)tmp;
}

#pragma CODE_SECTION(DFTACC, "Cla1Prog");
static inline void DFTACC(DFTDATATYPE *pIload)
{

float ucSinCnt;
short j;
if(pIload->Samp < 200)
{
// for (j = 1; j < MAX_H; j++)
{
j = 1;
ucSinCnt = (float)cla_mod200((int)(pIload->Samp * j));
Cla1ToCpu = CLAsin((float)(CLAMATH_PI_DIV_TWOHUNDRED*ucSinCnt));

问题1:
ucSinCnt = (float)cla_mod200((int)(pIload->Samp * j));
Cla1ToCpu = CLAsin((float)(CLAMATH_PI_DIV_TWOHUNDRED*ucSinCnt));

在使用cla_mod200取模函数后我将结果转换为float类型赋值给ucSinCnt ,并传递给CLAsin函数做传函,编译后出现如下错误:


将ucSinCnt = (5 * j);改为常量乘法后无报警;

问题2:

将上方// for (j = 1; j < MAX_H; j++)循环打开后CLA卡死,我的栈大小为CLA_SCRATCHPAD_SIZE = 0x1000;

有没有人指导一下这两个问题,或者有没有类似文件可以参考,卡住好几天了