你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32 OTA的代码跳转

[复制链接]
攻城狮Melo 发布时间:2023-3-21 16:45
1. 简述
通过配置MDK,分别在不同地址写入BootLoader和App,BootLoader执行跳转函数,验证跳转App是否成功。

22SL}O9B48~M0H1(N45{Z{3.png

175853c9f51f4d438fd09cb7972ea0a7.png

2. 跳转代码
  1. typedef void (*boot_jump)(void);

  2. boot_jump boot_jump_app;

  3. __asm void MSR_MSP(uint32_t addr)
  4. {
  5.     MSR MSP, r0                        
  6.     BX r14
  7. }

  8. void bsp_iap_jump(uint32_t addr)
  9. {
  10.         
  11.         if(((*(__IO uint32_t*)addr)&0x2FFE0000)==0x20000000)
  12.         {
  13.                 boot_jump_app = (boot_jump )*(__IO uint32_t*)(addr+4);               
  14.                 MSR_MSP(*(__IO uint32_t*)addr);                                       
  15.                 jump2app();                                                                             
  16.         }
  17. }
复制代码

BootLoader程序,执行bsp_iap_jump(0x08020000)函数,验证是否跳转到App执行。
————————————————
版权声明:lljwork2021
如有侵权请联系删除



收藏 评论0 发布时间:2023-3-21 16:45

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版