当前位置: 首页 > ai >正文

STM32F407VET6学习笔记7:Bootloader跳转APP程序

boot跳转APP的程序

目录

Flash分区设定:

工程文件地址设置:

Bootloader工程文件:

测试的APP程序工程文件:

Bootloader跳转程序:

APP程序:


 

Flash分区设定:

参考手册的分区: 

工程文件地址设置:

Bootloader工程文件:

Debug -> settings

 

测试的APP程序工程文件:

他的34000是这么计算得来的:

Bootloader跳转程序:

 这里跳转之前__disable_irq();关闭了所有中断

在APP程序需要调用__enable_irq();重新启用中断

而且调用__enable_irq();之前这些中断初始化已经完成,能进入

typedef void (*pFunction)(void);
pFunction Jump_To_Application;
#define ApplicationAddress      0x0800C000
#define FMC_UPDATE_INFO_ADDR    0x08040000 //标志__asm void MSR_MSP (uint32_t ulAddr)
{MSR MSP, r0 //set Main Stack valueBX r14
}void app_jump()
{uint32_t JumpAddress;__disable_irq();// 禁用所有中断JumpAddress = *(__IO uint32_t*)(ApplicationAddress + 4);/* Jump to user application */Jump_To_Application = (pFunction) JumpAddress;MSR_MSP(*(__IO uint32_t*) ApplicationAddress);Jump_To_Application();
}

这里我没有设置这个标志,所以会直接跳转APP 

 

 

APP程序:

进APP程序之前需要添加一些语句,防止不能进中断:

http://www.xdnf.cn/news/9848.html

相关文章:

  • 《仿盒马》app开发技术分享-- 订单列表页(端云一体)
  • 2025年机械化设计制造与计算机工程国际会议(MDMCE 2025)
  • Redis--缓存击穿详解及解决方案
  • 全志V853挂载sd卡
  • 多部手机连接同一wifi的ip一样吗?
  • MC0309魔法项链
  • 多模型数据库(Multi-Model Database)深度解析
  • EasyFileCount(文件查重工具) v3.0.5.1 便携版
  • 有关用easyExcel批量导入excel入库慢的调优记录
  • 深入了解linux系统—— 库的制作和使用
  • 高端装备制造企业如何选择适配的项目管理系统提升项目执行效率?附选型案例
  • Java-代码段-http接口调用自身服务中的其他http接口(mock)-并建立socket连接发送和接收报文实例
  • 生益的高速PCB板材有哪些
  • (二)开启深度学习动手之旅:先筑牢预备知识根基
  • 缓存常见问题:缓存穿透、缓存雪崩以及缓存击穿
  • zynq ad7616 调试笔记
  • 从实验室到商用!铁电液晶如何改写显示技术格局?
  • python 包管理工具uv
  • 国芯思辰| 国产四通道24位生理电采集模拟前端AFE全面替换ADS1294R,心电贴性能再飞跃
  • Docker部署项目无法访问,登录超时完整排查攻略
  • 视频监控联网系统GB28181协议中校时流程详解以及校时失败常见原因
  • 在windows环境下安装Nmap并使用
  • 2025年渗透测试面试题总结-匿名[校招]安全研究员(SAST方向)(题目+回答)
  • 2025国创赛-高教主赛道·创意组评审要点整理
  • set_property LOC约束
  • Qt 无边框窗口实现拖动与窗口控制(最小化/最大化/关闭)
  • 从外卖APP到网络协议:深入解析UDP及应用层协议
  • [python] argparse怎么指定bool类型?
  • ST-GCN
  • 外地车在北京进京证用完后该如何行驶