对于 TMS570LS3137处理器、是否可以在运行时写入闪存? 我认为它在"Flash API"中可用、但我无法找到使用方法和方法。
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.
对于 TMS570LS3137处理器、是否可以在运行时写入闪存? 我认为它在"Flash API"中可用、但我无法找到使用方法和方法。
尊敬的 Ktmn:
我认为它在"Flash API"中可用、但我找不到如何使用和使用什么。
请参阅 "F021 Flash API"库参考指南、并了解不同的 API。
F021闪存 API 参考指南(v2.01.00)(修订版 H)(TI.com)
我创建了一个简单示例并进行了测试、这里是:
e2e.ti.com/.../2474.FAPI_5F00_TEST_5F00_LS3137.zip
--
谢谢。此致、
Jagadish。
尊敬的 Ktmn:
当我编辑您的闪存示例时,它可以对 Bank1和 Bank7正常工作,但当我尝试写入 Bank0时,它没有显示在"Fapi_setActiveFlashBank(Fapi_BankFlash0)"函数中,它不会继续。
这是预期行为:
请参阅以上 FAPI 参考指南中突出显示的行。 "F021闪存 API 库无法与活动存储体从同一存储体中执行
使 API 命令在"上操作"。
这意味着如果 FAPI 库存储在闪存组0中、那么您不应该在组0上执行 FAPI 命令。
(+) F021闪存 API 库-(Hercules)能否对同一组中的一个扇区进行编程? -基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛
如果您确实要执行此操作、则应将所有闪存 API 从闪存组0复制到 RAM。 一旦将闪存 API 复制到 RAM、则可以擦除和写入闪存组0中的扇区。
为此、请参阅以下主题:
(+) TMS570LC4357:F021 API 将数据从闪存复制到 RAM 时出现问题-基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛
--
谢谢。此致、
Jagadish。
Jagadish、您好!
非常感谢您的答复。
该函数会生成 ECC、当我查看与 ECC 对应的地址时、我只会看到一个问号(??????? )。
因此、我不确定它写入的确切位置。 例如、 当将 ECC 写入 RAM 时、只有该 ECC 字段显示为问号(??????? )、但在"Flash Data Space ECC"(闪存数据空间 ECC)中、所有地址都显示为问号(??????) 闪存 ECC 启用。
我该如何阅读或确保?
谢谢、此致。
Jagadish、您好!
我们解决了之前的问题、现在可以读取 ECC、但现在在"Fapi_issueProgrammingCommand"函数的最后一个参数中输入的 ECC 值以及在"Fapi_AutoEcc_Generation"和"Fapi_calculateEcc"函数中计算的 ECC 值会针对相同的数据和地址给出不同的结果。
我可以知道原因吗? 我应该信任哪个?
-Fapi_AutoEcc_Generation?
- fapi_calculateEcc?
谢谢、此致。