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.

[参考译文] TMS570LC4357:在 FreeRTOS 情况下、当尝试更新 FEE 时、软件卡在 Fapi_doBlankCheck 中

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stuck-in-fapi_doblankcheck-when-trying-to-update-fee-in-case-of-freertos

器件型号:TMS570LC4357

您好!

我的申请中面临的问题与以下论坛中的问题相同。 我正在使用 FreeRTOS、当我尝试执行 FEE Write 时、软件卡在 Fapi_doBlankCheck 中。  我找到了以下论坛、任何人能否帮助我访问论坛中随附的.asm 文件、因为我需要进行相同的更改。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/632209/rtos-tms570ls1224-call-fee-functions-from-freertos-tasks-hangs

此致

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

    您好、Sakti、

    fapi_doBlankCheck()用于 检查闪存组的擦除状态。 由于闪存的擦除状态不是一个有效的 ECC 条件、ECC 检查和校正必须被禁用。 但 TMS570LC43x 上的闪存 ECC 默认启用、不能禁用。 我们不建议在您的项目中使用此函数。

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

    请从应用节点 spna218中找到_Svc.asm

    www.ti.com/.../spna218。

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

    您好 

    感谢您的回答。

    [引用 userid="45190" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stade-in-Fapi_doblankcheck-when -testing-update-fe-case-case-example-cye-cye-cabe-cy/swe-fapi_doapi_doki (检查 Free4678 的闪存组)] 由于闪存的擦除状态不是一个有效的 ECC 条件、ECC 检查和校正必须被禁用。 但 TMS570LC43x 上的闪存 ECC 默认启用、不能禁用。 我们不建议在您的项目中使用此函数。

    1.当   使用 TI_FEE 和 WriteAsync 时,如何不使用 Fapi_doBlankCheck()作为调用该函数

    2.该问题是在 FreeRTOS 调度程序启动后而不是在其启动之前出现的。 出现此问题的原因是 我们无法在写入 FEE 之前进入监控器模式 、或者由于 ECC 错误??

    3.如果问题是切换到主管模式,那么我们需要在写入 FEE 之前切换到主管模式,并且在写入 FEE 后必须切换回用户模式?

    [引用 userid="45190" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stade-in-fapi_doblankcheck-time-testing-update-fe-case-case-fy-in case -freertoS#rtos#139682"/RT139682"

    请从应用节点 spna218中找到_Svc.asm

    www.ti.com/.../spna218。

    [/报价]

    3.我无法访问您提供的链接。 该 ASM 可用于切换 CPU 模式、对吧?

    此致

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

    嘿、

    对此有任何更新??

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="505316" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stade-in-fapi_doblankcheck-time-testing-update-fe-fe-in case of free41485]RT41485"#free#150585"#freeoS#0545-freert-ine-case"。 我无法访问您提供的链接。

    看起来链路有虚假的完整停止。 http://www.ti.com/lit/zip/spna218 正常工作

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

    您好、

    您能告诉我另外两个问题的答案吗? 谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="505316" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stade-in-fapi_doblankcheck-time-testing-update-fe-fe-in case of free41485]RT41485"#150545-1"*。    如何不使用 Fapi_doBlankCheck(),因为只要使用 TI_FEE 和 WriteAsync,就会调用此函数?

    为了执行空白检查、ECC 校正必须被禁用、这是因为闪存的擦除状态在组0和组1上不是一个有效的 ECC 条件。 对于器件 TMS570LC43x、不能禁用组0和组1上的 ECC。  在组7上、可以通过向 EE_EDACEN 位写入0101或设置 EE_All1_OK 位 EE_CTRL1寄存器来临时禁用 ECC。

    可以对 EEPROM 执行空白检查(组7)。

    [引用 userid="505316" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stade-in-fapi_doblankcheck-time-testing-update-fe-fe-in case of free41485-trabouts#150545-ex"。 此问题是在 FreeRTOS 调度程序启动后而不是在启动之前出现的。 出现此问题的原因是 我们无法在写入 FEE 之前进入 Supervisor 模式 、或者由于 ECC 错误??

    正如 TRM 所说的那样、闪存模块控制寄存器只能由 CPU 在特权模式下读取和/或写入。

    F021闪存 API 必须在特权模式(用户模式除外)下运行、才能访问闪存控制器寄存器。  

    [引用 userid="505316" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1116947/tms570lc4357-sw-stade-in-fapi_doblankcheck-time-testing-update-fe-fe-in case of free41485]RT41485"#free#150585"#freeoS#0545-freert-ine-case"。 如果问题是切换到主管模式、那么我们需要在写入 FEE 之前切换到主管模式、并且必须在写入 FEE 之后切换回用户模式?[/QUERT]

    是的。 请参阅 spna218中的示例代码。