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

TMS320F28027: 在25US中断中因为要使用浮点数运算,故使用了IQmath相关函数,但问题如下:

Part Number:TMS320F28027Other Parts Discussed in Thread:TMS320F28021,

iqtmp =_IQ(spwmiqvar.spwm_cnt)+_IQ(SIN_B);

spwmiqvar.sinvale =_IQsin(spwmiqvar.sina);
spwmiqvar.sinb =_IQmpy(spwmiqvar.M_FACTOR,spwmiqvar.sinvale);
spwm_value=1000+1000*_IQtoF(spwmiqvar.sinb);

这几句IQ运算,导致printf无输出且主函数main的while的函数也不执行,而且程序非常慢,当我随便注释掉上面的两条语句的任意一条就可以正常执行?难道是IQ执行非常耗时导致中断溢出了?

spwmiqvar.spwm_cnt是uint16_t类型数据 其他均是小数

谢谢!

Cherry Zhou:

您好我们已收到您的问题并升级到英文论坛,如有答复将尽快回复您。谢谢!

,

jun liu:

谢谢

,

Cherry Zhou:

您好,请问 printf 的调用位置在哪里?以及 ISR 的确切操作是什么?

这四条语句应该花费少于 90 个时钟周期。 对于程序的剩余部分来说这个窗口是不是太大了?

,

jun liu:

printf在while循环里面 ISR只是计算SPWM的值 要不我把代码发您?

,

Cherry Zhou:

好的那麻烦您po一下代码,帮您跟进给工程师看下。

,

jun liu:

iqtmp =_IQ(spwmiqvar.spwm_cnt)+_IQ(SIN_B);

spwmiqvar.sinvale =_IQsin(spwmiqvar.sina);spwmiqvar.sinb =_IQmpy(spwmiqvar.M_FACTOR,spwmiqvar.sinvale);spwm_value=1000+1000*_IQtoF(spwmiqvar.sinb);

这段代码在中断里面 IQ的问题英文论坛回复没?

,

Cherry Zhou:

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1083417/tms320f28027-iqmath-issue

英文帖子链接如上,您也可以关注下。有答复我们会第一时间给到您。

,

Cherry Zhou:

工程师这边得到带宽的数据后就会尽快给您答复哈。

,

jun liu:

好的 谢谢您

,

jun liu:

能否催下英文论坛关于IQ的问题?我上周代码已经发出了 

,

Cherry Zhou:

帮您发邮件催下哈,给您带来的不便敬请谅解!

,

jun liu:

IQ的问题英文论坛回复没?谢谢!

,

Cherry Zhou:

您好,目前还没有哦,已发邮件催促过工程师,给您带来的不便十分抱歉。再帮您催一下,敬请谅解!

,

jun liu:

关于TMS320F28021和TMS320F28027哪里有具体应用的例子?关于IQ的问题能否再催促下?

,

Cherry Zhou:

不好意思,已经帮您催过工程师了哈,新的问题也都跟进给工程师了,有答复尽快给到您,给您带来的不便敬请谅解!

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28027: 在25US中断中因为要使用浮点数运算,故使用了IQmath相关函数,但问题如下:
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1