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.

[参考译文] F021FLASHAPI:在 Concerto 的 C28中执行"Fapi_setActiveFlashBank&quot 时调用 NMI_ISR

Guru**** 2536500 points
Other Parts Discussed in Thread: CONTROLSUITE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/600298/f021flashapi-nmi_isr-is-called-while-executing-fapi_setactiveflashbank-in-c28-on-concerto

器件型号:F021FLASHAPI
Thread 中讨论的其他器件:controlSUITE

大家好

我遇到了 Concerto flash_prog 示例的问题。

我尝试从 controlSUITE 中运行一个示例"C:\ti\controlSUITE\device_support\f28m35x\v208\F28M35x_examples_Dual\flash_prog\c28\"。 但程序在执行"Fapi_setActiveFlashBank"期间属于 NMI_ISR()。 堆栈显示问题、位于:"Fapi_setActiveFlashBank (enum )() at FlashStateMachine.c:270 0x00833D"。  

实际上它已经运行了一段时间,直到我尝试使用 Fapi_issueCommandWithAddress()清除所有闪存。 但存储器窗口显示、闪存未被擦除。 之后、我开始遇到"setActiveFlashBank"问题。 我尝试运行示例"开箱即用"-没有任何更改-同样的问题。

我的其他项目(无需调用 FlashAPI)可以刷写并正确运行。

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

    我不确定这是不是解决方案、但我从其他示例中复制了:

    EALLOW;
    FlashEccRegs.ecc_enable.bit.enable = 0x0;
    EDIS; 

    它帮助了我们。

    如果有人可以解释、请进行解释。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    只需再次检查,但是否从 RAM 运行代码?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 USER="Cedric 40627]只需仔细检查,但您是否从 RAM 运行代码?

    [/报价]

    是的、Cedric。 这些项目驻留在闪存中、但所有函数都被放置在带有#pragma 段的"secureRam"中、并使用"memcpy"从闪存复制到 RAM。 我在"Disassembly"窗口中检查了它。

    正如我提到过的、禁用 ECC 可以解决这个问题。 但我确信、即使没有禁用 ECC、也没有问题...

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

    迪诺纳

    您的器件的修订版是什么?  如果为 Rev0、则需要在应用程序可以使用闪存 API 函数之前禁用 ECC 检查。  请在勘误表中查看以下建议。

    建议: 闪存 ECC:在启用闪存 ECC 的情况下执行 F021闪存 API 函数时生成 C28x 的"闪存不可纠正"错误

    谢谢、此致、

    Vamsi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、看起来就是问题所在。 我相信我有修订版0、因为我使用的是旧版 controlCARD。 感谢你的建议。