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.
大家好、
我们使用 CCS8.0并尝试使用闪存(F021) API 调用而不是 CCS8.0加载映像。
在这种情况下、映像加载成功、加载后、我们尝试重置 CPU (仅通过加载符号来使用 CCS8.0)、并且可以看到在 FlashcheckECC 期间正在调用双位异常处理程序。
当我们尝试使用 CCS8.0刷写映像时、不会发生这种情况。 在将映像加载到闪存后、CPU 复位之前、我们是否需要执行任何闪存 API 调用?
您能解释一下这种行为的原因吗?
此致、
M.Sreenenasan。
您好、Wang、
我们一次写入8个字节。 如果我们一次使用8字节的数据编程闪存,您是否会发现任何问题?
此致、
M.Sreenivasan。
您好、Wang、
我们将使用上述相同的命令、每次8个字节。 如果您需要更多信息、请告诉我。
一旦闪存编程完成、我们能够在 CPU 复位(来自 CCS8.0)后随机地看到问题(来自闪存的双位 ECC 异常)。
此致、
M.Sreenivasan。
您好、Wang、
回答如下:
问: 您能否捕获 ECC 错误所在的地址?
答: 一旦使用闪存 API 加载新映像并且使用 CCS 复位处理器、闪存 ECC 错误就会出现在"checkFlashECC ()"函数中、该函数是 HALCOGEN 生成的 sys_startup.c 文件的一部分。
问: 如果上次写入的数据数量小于8字节、如何处理数据? 我建议附加0xFF。 您还可以尝试使用链接器 cmd 来生成 ECC。
答: 是的、如果要编程的字节数小于8字节、我们将附加0xFF。
谢谢、
Kalyan