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.

[参考译文] TMS320F280049:有关 IQmath 和 COFF/EABI 的问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1110540/tms320f280049-question-about-iqmath-and-coff-eabi

器件型号:TMS320F280049

大家好、

我正在处理一个使用 PM_sincos_lib.h 和 PM_SINCOS_lib.c 的项目 但我目前遇到了这个问题。

  1. _IQ15toF 使用无效

在程序中、我无法获得 IQto15F 的结果、但没有警告或错误

代码:
p->itheta =共角+终角;// IQ15
p->ftheta =_IQ15toF (p->itheta);//浮点

结果:我以为应该得到 p->ftheta=0.25,但没有。 这是为什么? 我应该如何修改。

    发现会出现格式冲突。 我想知道 COFF 中是否使用了该 Lib、但我们需要在 EABI 下运行、因此存在以下问题。我们应该如何避免这个问题?

    我  认为这个 Lib 可能是在 COFF 下设置的、我正在运行 EABI。 如果我需要在 EABI 下运行、应该如何解决此问题、以便能够顺利运行 IQmath.lib 和 PM_SinCo.LIB? (BTW、我使用 IQmath.lib、如图所示)。

感谢你的帮助。

简森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="455975" URL"~μ C/support/microrims/C2000-microset-group/C2000/f/C2000-microriers-forum/1110540/tms320f280049-question-about-IQMath-and-coff-eabi]result:我认为应该得到 p->ftheta=0.25、但它没有。 这是为什么? 我应该如何修改。

    初始的 itheta 值是多少? f theta 将是 itheta /2^15。  

    [引用 userid="455975" URL"~μ C/support/microset/C2000-microset-group/C2000/f/C2000-microset-forum/1110540/tms320f280049-question-abi-abi-about IQMath-and-coff eabi"]

    发现会出现格式冲突。 我想知道 COFF 中是否使用了该 Lib、但我们需要在 EABI 下运行、因此存在以下问题。我们应该如何避免这个问题?

    [/报价]

    请在所有浮点值的末尾附加'f'。 EABI 编译器会将不带"f"的所有浮点值视为双精度值。

    [引用 userid="455975" URL"~μ C/support/microset/C2000-microset-group/C2000/f/C2000-microset-forum/1110540/tms320f280049-question-abi-abi-about IQMath-and-coff eabi"]

     我认为该 Lib 可能是在 COFF 下设置的、我正在运行 EABI。 如果我需要在 EABI 下运行、应该如何解决此问题、以便能够顺利运行 IQmath.lib 和 PM_SinCo.LIB? (BTW、我使用 IQmath.lib、如图所示)。

    [/报价]

    IQMath.lib 是一个符号库、它将根据工程配置选择正确的库。 如果您直接使用适当的 IQMath 库、请删除 IQMath.IB 并使用 IQMath_Eabi.lib 或 IQMath_fpu32_eabi.lib、具体取决于您是否在项目中启用了 fpu32。

    -Shantanu

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

    您好、Shantanu、

    很抱歉迟到了!

    我当前遇到的唯一问题是_IQ15toF 不起作用。

    我的代码如下:

    p->itheta =共角+终角;// IQ15
    p->ftheta =_IQ15toF (p->itheta);//浮点

    如果代码正常工作、则 ftheta 应该显示0.25、但结果并不是如此。

    您对此有什么意见?

    谢谢

    简森

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

    简森

    结果应该是  0.00000762939453125。能否验证 IQTables 和 IQMath lib 是否已正确分配? 您能否共享编译后生成的工程的.map 文件?

    -Shantanu

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

    您好、shanty、

    我将通过电子邮件向您发送一封电子邮件、请检查一下!

    谢谢

    简森