This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F2.8335万:Simulink嵌入式编码器的TI#39;插件中存在重大错误

Guru**** 2540720 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/620470/tms320f28335-significant-bug-in-ti-s-add-on-for-simulink-embedded-coder

部件号:TMS320F2.8335万

用于Simulink的TI嵌入式编码器驱动程序存在严重错误。  我向Mathworks报告过,但他们说问题出在TI。

在Simulink中,如果您单击"GEAR (齿轮)"图标并转至"hardware implementation (硬件实施)"->" Device details (设备详细信息)",TI驱动程序会说,TI处理器上的"double (双精度)"为64位,而实际上是32位。  这适用于所有TI处理器。  问题在于某些操作需要测试最大机器精度数(例如,SIGN函数和一些复杂的数学函数)。 Simulink认为编译器支持64位数字(但实际上不支持),因此它使用4.4E308常量错误地对其进行编码,导致编译器崩溃。  如果强制该操作的代码使用单精度,则获得正确的常量1.7E38。  此变通办法已解决问题,但它存在其他问题,需要持续的双倍到单个转换才能从Simulink成功生成代码。  是否有办法将TI驱动程序中的64位双倍更改为32位,或者我们是否需要TI的更新?  谢谢你。

此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Neil,

    这是我第一次听到这个。 请您与MathWorks的DM我交谈,以及技术支持案例编号,以便我进行调查。

    您使用的是哪个版本的MathWorks SW和CCS?

    谢谢!

    -Brian