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.
大家好、团队
我需要使用闪存 API 进行固件升级。 我擦除程序本身后、程序会停止。
我认为它应该在 RAM 上运行、但是 我已经修改了 cmd 文件、就像示例项目一样: FLASH_programming_cpu01 我想 memcpy (&RamfuncsRunStart、&RamfuncsLoadStart、(size_t)&RamfuncsLoadSize) 完成时间 device_init() 。
但仍无法继续完成闪存编程。 擦除后一直停止。
您能提供一些建议吗?
谢谢。此致、
卢卡斯
您好、Lucas:
如果将修改后的链接器命令文件与闪存 API 使用示例一起使用、它是否起作用?
除了链接器命令文件、您在应用程序中做了哪些更改?
谢谢。此致、
瓦姆西
如果将修改后的链接器命令文件与闪存 API 使用示例一起使用、它是否起作用?
是的、它可以擦除自身和编程。
除了链接器命令文件、您在应用程序中做了哪些更改?
在每次写入和擦除之前,我 在开始时运行 SeizeFlashPump (),在结束时运行 ReleaseFlashPump ()。 并且我发现,如果我擦除程序本身,然后运行 ReleaseFlashPump ()将失败并停止。
如果我删除这两个函数、它可以继续对数据进行编程。 如果我不调用这两个函数、会产生什么影响。
感谢您的回复!
是的、我认为我将所有需要的函数都放在了 RAM 中。
在我 的擦除/编程过程中删除了 SeizeFlashPump ()和 ReleaseFlashPump ()之后,我可以立即继续固件升级。 但我不确定此操作是否会导致一些错误。
卢卡斯
好的、由于它现在正在工作、请告诉我们是否可以关闭此帖子。
如果您有其他问题、可以打开新帖子。
谢谢。此致、
瓦姆西
Vamsi、
您可以关闭此帖子。
感谢您的建议。