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.

[参考译文] TMS320F2.8377万S:使用F021 Fapi (闪存API)时出现问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/580089/tms320f28377s-problem-using-f021-fapi-flash-api

部件号:TMS320F2.8377万S
主题中讨论的其他部件:C2000WARE

C2000团队,

我在F2.8377万S上使用了F021 Flash API,并看到了一些奇怪的行为。  我编写了一个简单的测试程序,只需将几个字的数据放入SectorO (闪存库1)。  我基本上复制了C2000Ware示例中的片段。  我从RAM运行了代码,也从Flash Bank0运行了代码。  它没有什么区别。

我有一个const伪值,我使用代码中的data_section pragma在SectorO的第一个单词中填入该值(该伪值在代码中从未实际访问过)。  然后,我可以在CCS中使用几个断点 来观看程序擦除扇区,然后将我的新数据编程到SectorO中。  一切正常。  但是,如果我 注释掉 代码中的伪值(或者在CCS编程伪值后在CCS中重置设备),则代码将不再起作用。  不会执行擦除(代码上次成功运行的值将保存在闪存中),并且不会对新数据进行编程。  Fapi的回归成功。  操作没有发生。

对发生的事情有什么想法?  我感觉我的初始化不正确,但我不知道什么。

谢谢,此致,

David

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我发现了问题。 在运行擦除和程序之前,我忘记了调用Fapi_setActiveFlashBank()。

    oReturnCheck = Fapi_setActiveFlashBank(Fapi_FlashBank1);

    David
x 出现错误。请重试或与管理员联系。