Other Parts Discussed in Thread: MSPM0G3507, MSPM0G3519
器件型号: MSPM0L1105
Thread 中讨论的其他器件: MSPM0G3507、 MSPM0G3519
我们正在编写代码来更新此处理器上的应用程序代码、通过我们的应用程序进入引导模式、上传新代码。 我们的应用程序从闪存中的地址 0x0 开始。 我注意到这是不可取的。 这是真的吗? 我们是否需要将应用程序代码从 0x8000 开始重定位到闪存中的空间?
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.
Other Parts Discussed in Thread: MSPM0G3507, MSPM0G3519
器件型号: MSPM0L1105
Thread 中讨论的其他器件: MSPM0G3507、 MSPM0G3519
我们正在编写代码来更新此处理器上的应用程序代码、通过我们的应用程序进入引导模式、上传新代码。 我们的应用程序从闪存中的地址 0x0 开始。 我注意到这是不可取的。 这是真的吗? 我们是否需要将应用程序代码从 0x8000 开始重定位到闪存中的空间?
我看到了警告、这不可取。 这是真的吗?
我 不确定您在哪里看到这一点、但只要您正确处理引导和应用程序之间的跳转、一切都将顺利。
引导加载程序和 BSL
固件更新功能可以分为两部分、
#1 是闪存中的两种映像处理机制、有一个引导加载程序可处理 M0 闪存中的两部分固件
#2 是编程协议和闪存操作(擦除,编程,验证)、这是其固件更新解决方案
这两部分包含多种解决方案、可以根据用户的要求进行组合。
解决方案:
#1 是闪存中的两种图像处理机制
联机文档(启动映像管理器): https://dev.ti.com/tirex/explore/node?isTheia=false&node=A__APjkYg9RWxwM6nRUc3InzA__MSPM0-SDK__a3PaaoK__LATEST
SDK 路径:c:\ti\mspm0_sdk_2_10_00_04\examples\nortos\LP_MSPM0G3507\boot_manager
文档演示 (&Demo):
下载链接:
访问代码:
联机简要文档: https://www.ti.com/lit/an/spradn2/spradn2.pdf
#2 是编程协议和闪存操作(擦除,编程,验证)
辅助 BSL 解决方案有两个部分:
基于闪存的 BSL 协议:有助于快速修改您的协议。
闪存操作演示:直接用作您自己的引导加载程序的闪存操作示例。
SDK 文件路径:c:\ti\mspm0_sdk_2_10_00_04\examples\nortos\LP_MSPM0G3507\bsl\secondary_bsl_i2c
MSPM0 引导加载程序 (BSL) 实现(修订版 C) https://www.ti.com/lit/pdf/slaae88
MSPM0 引导加载程序用户指南 https://www.ti.com/lit/pdf/slau887
SDK 路径:c:\ti\mspm0_sdk_2_10_00_04\examples\nortos\LP_MSPM0G3519\driverlib\flashctl_xxx