我想在nor flash 0x60000000地址编译链接一软件(以后称为:bootloader), 0x60008000地址编译链接另一软件(以后称为:主程序)
每次开机先启动0x60000000地址的bootloader,在bootloader的main函数中直接跳转到主程序的Reset_Handler开始执行主程序。
目前单独的主程序运行正常。关于bootloader以及它与主程序跳转,我应该怎么做呢?
附件是主程序rom的2种设置,一个是从0x60000000开始,一个是从0x60008000开始。在没有bootloader的情况下,为什么都可以运行啊?
Solved! Go to Solution.
Hi 志成 项
楼主你好!
关于这个问题,我建议你去参考下我们RT1060 SDK 的ota bootloader, 会比较明白。
https://mcuxpresso.nxp.com/en/select
下载RT1060 SDK, middleware 一定要把mcuboot 选上, 建议你可以全选,然后生成代码下载。
然后你参考下SDK_2.7.0_EVK-MIMXRT1060\boards\evkmimxrt1060\bootloader_examples\ota_bootloader
这个bootloader就是从0X60002000 开始放,当然前面一段是用来放IVT DCD 还有FCBD等信息。
然后其他app可以放在#define BL_APP_VECTOR_TABLE_ADDRESS (0x60040000u)
关于都可以运行,你应该是debug的,那么IDE帮你直接跳过去了,你可以试试下载之后,如果前面没有引导程序,应该是不能直接跳转到后面去执行的。
你先参考下,如果还有问题,欢迎继续交流。
Wish it helps you!
If you still have questions about it, please kindly let me know.
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
Hi 志成 项
楼主你好!
关于这个问题,我建议你去参考下我们RT1060 SDK 的ota bootloader, 会比较明白。
https://mcuxpresso.nxp.com/en/select
下载RT1060 SDK, middleware 一定要把mcuboot 选上, 建议你可以全选,然后生成代码下载。
然后你参考下SDK_2.7.0_EVK-MIMXRT1060\boards\evkmimxrt1060\bootloader_examples\ota_bootloader
这个bootloader就是从0X60002000 开始放,当然前面一段是用来放IVT DCD 还有FCBD等信息。
然后其他app可以放在#define BL_APP_VECTOR_TABLE_ADDRESS (0x60040000u)
关于都可以运行,你应该是debug的,那么IDE帮你直接跳过去了,你可以试试下载之后,如果前面没有引导程序,应该是不能直接跳转到后面去执行的。
你先参考下,如果还有问题,欢迎继续交流。
Wish it helps you!
If you still have questions about it, please kindly let me know.
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
谢谢回答。完整的在线升级过程,我已经了解。但是我遇到了新的问题。我的板子外接了一个nor flash w25q32 ,程序下载是没问题的,但是我通过flexspi操作flash读写,运行FLEXSPI_SoftwareReset时,会进入硬件错误。可能的原因是什么?
参考例程:SDK_2.6.0_EVK-MIMXRT10\boards\evkmimxrt1010\driver_examples\flexspi
新的问题,还请新建一个问题贴, 我们会在你新问题贴里面回复你!谢谢!
Best Regards,
Kerry