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.

[参考译文] TM4C1294NCPDT:当浮点数据之间进行比较时、它将进入 FaultISR()。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/835451/tm4c1294ncpdt-it-would-be-into-faultisr-when-compared-between-float-data

器件型号:TM4C1294NCPDT
主题中讨论的其他器件: IWR1642

大家好、TI 团队、

我使用 TM4C1294NCPDT MCU 来处理来自 iwr1642 UART 的雷达点云数据。

我关闭 CCS 中的优化级别、

我获取 断点来调试代码、如下所示、雷达点云 数据保存在 ui8RadarPD[D_MAX_PACKAGE_LEN]中( D_MAX_PACKAGE_LEN 为4K)、

然后,按 F5运行 SetPointData() 函数,如下所示,当点云数据的多普勒小于0时,我过滤点云数据。

当我按 F5时,代码运行到 FaultISR()中,  

我不知道为什么? 我已经尝试过很多次了,但也是一样的。

可能需要在 CCS 中进行一些配置?

此致、

Eric

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

    您好!

     您首先需要检查两件事情。  

    1.您是否启用了浮点支持?

    2.您的堆栈大小是多少? 我认为 D_MAX_PACKAGE_LEN 可能已经过大并溢出了堆栈。 尝试将堆栈大小增加到更大的值。 它会产生影响吗? 另一种方法是将 D_MAX_PACKAGE_LEN 减小到较小的值、以开始。 如果您看到较小的值运行正常、则这是由堆栈大小造成的。  

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

    您好、 Charles、

    感谢您的回复。

    我减小  D_MAX_PACKAGE_LEN、然后可以。

    此致、

    Eric