bootloader 失败

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

bootloader 失败

873 Views
1150666288
Contributor II

hi

    芯片:rt1010cae4a       

    参考例程:SDK_2.7.0_EVK-MIMXRT1060\boards\evkmimxrt1060\bootloader_examples\ota_bootloader

    我想在0x60002000地址编译第一个程序(以后称为:bootloader), 0x6000A000地址编译另一个程序以后称为:主程序app).每次开机先启动0x60002000地址的bootloader,在bootloader的main函数中直接跳转到主程序.依据指导,我参考了以上例程。

   我对以下几点,有疑问:

  1.对于app,在程序的开头,我需要作么,除了开启全局中断。

   2. SCB->VTOR = (uint32_t)0x6000A000        为什么要在在bootloader中执行此函数。这不是应该在app开头吗?

  3.  SP = _RDWORD(0x20002000);             // Setup Stack Pointer
       PC = _RDWORD(0x20002004);             // Setup Program Counter

      在bootloader中将sp,pc指向了ram。为什么不是0x60002000.

   一个最简化的bootloader应该怎么做呢?

0 Kudos
1 Reply

817 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi 志成 项

  楼主你好!

回答你的几个问题:

  1.对于app,在程序的开头,我需要作么,除了开启全局中断。

答: 你需要做地址偏移,偏移的地址就是你bootloader指定的地方。

 你也可以参考ota_bootloader配套的app

\SDK_2.7.0_EVK-MIMXRT1060\boards\evkmimxrt1060\lwip_examples\lwip_httpssrv_ota

   2. SCB->VTOR = (uint32_t)0x6000A000        为什么要在在bootloader中执行此函数。这不是应该在app开头吗?

答: 这个是你app偏移之后的地址

pastedImage_2.png

  3.  SP = _RDWORD(0x20002000);             // Setup Stack Pointer
       PC = _RDWORD(0x20002004);             // Setup Program Counter

      在bootloader中将sp,pc指向了ram。为什么不是0x60002000.

   一个最简化的bootloader应该怎么做呢

答,你的app偏移地址是否有效?

        0X60002000是你的bootloader,这个有IVT, BD等文件,通过ROMboot loader跳转了,你需要跳转的是从bootloader中检查第二个app偏移地址是否有效,有效之后在你的secondary boot loader中去跳转。

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.
-------------------------------------------------------------------------------

0 Kudos