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.

[参考译文] MSPM0L1227:未找到 aeabi_uidvmod.S

Guru**** 2455560 points
Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1468694/mspm0l1227-aeabi_uidvmod-s-was-not-found

器件型号:MSPM0L1227
主题中讨论的其他器件:UNIFLASH

工具与软件:

您好!

我的客户在下面有一个问题。 您能回答他们的问题吗?

 

闪存读取时发生以下错误。 你有什么想法来解决这个问题吗?

未找到源文件'..\..\..\..\..\..\..\..\..\..\..\..\..\..\llvm-project\compiler-rt\lib\builmtins\arm\aeabi_udivmod.S"。

 

什么是"aeabi_uidivmod.S"文件?

构建某件东西时会在该文件夹中生成什么?

他们是否应该特意将此文件放在此文件夹中? 此文件在哪里?

 

谢谢。此致、

英明

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

    你好、英明、

    您的客户执行了哪些步骤来解决此错误? 这在 Uniflash /CCS 中吗? 在这里、我们可以了解更多有关该问题的背景知识。

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

    尊敬的 Dylan:

    感谢您的答复。 抱歉我的简短解释。

    它们使用自己的测试代码、然后使用指针从闪存中的任意地址读取32位数据。
    然后,每次执行时都以相同的时间调用_aeabi_uidiv(),但会发生以下错误。

    未找到源文件'..\..\..\..\..\..\..\..\..\..\..\..\..\..\llvm-project\compiler-rt\lib\builmtins\arm\aeabi_udivmod.S"。

    _aeabi_uidiv()似乎是一个除法函数、但在32位读取的代码中没有除法。

    在映射文件中、有一个.S 文件、该文件可能在 C:\ti\ccs2001\ccs\tools\compiler\ti-cgt-armllvm_4.0.1.sts\lib\armv6m-ti-none-eabi/libclang_rt.builtins.a 中包含上述函数、并且它可以进行构建。

    你能给他们一些建议,他们的问题在上面的上一篇文章。

    谢谢。此致、
    英明

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

    我对最终调用此函数的调用栈感到有点困惑、如果我错了、请纠正我、但您似乎不确定它来自哪里?  

    所以在应用程序代码中、您只需用指针从内存中读取一些数据、而在该行中您会遇到此错误? 如果您发布了生成此错误的代码片段、可能会更清楚一点。 您不需要任何子调用通过指针从存储器中读取数据、因此我想我缺少了一些东西。

    此外、客户是根据我们的示例之一编写此代码吗?

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

    尊敬的 Dylan:

    很抱歉我的响应延迟。 我有他们的代码的某些部分会生成该错误。 如果代码有问题、您可以检查它吗?

    e2e.ti.com/.../Source-code.c

    谢谢。此致、

    英明

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

    你好、英明、

    我认为生成错误的线正常。 这里使用的工具链是什么? 我以前没有看到过这个错误,并且找不到很多资源。  

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

    尊敬的 Dylan:

     

    我们收到了来自该客户的更多问题和其他信息。

     

    在闪存中的0x0000_0400上进行编程后、从地址0x0000_0800读取数据是否有任何限制?

    他们问这个问题的原因是在执行上述过程时发生了错误。

    1. 可在 CCS 的存储器映射中直观地确认编程值、即使在执行编程之后也是如此。
    2. 之后、如果闪存的值是由 MCU FW 获取的、系统会停止并出现错误。

    ECC 设置无效。

     

    如果只在没有编程的情况下读取、则在 MCU FW 中读取已成功。

     

    此外、在程序之后、他们读取"STSCMD"寄存器并确认它变为"3"、然后他们判断程序成功。 还有什么其他必要的东西吗?

     

     

    实际上、地址"0x0000_0C20"和"0x0000_0400"上发生了错误、即使扇区已更改、这些错误也会确认会发生错误。

     

    你有什么想法来解决这个问题吗?

     

    谢谢。此致、

    英明