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

杰发科技Bootloader(3)—— 基于7801的APP切到Boot

为了方便在APP中跳转到Boot重新进行升级,有两种办法,7840同样可以使用。

1. 调用reset接口进行复位,复位后会先进Boot,再自动跳转到App。

NVIC_SystemReset();

2. 直接使用跳转指令,参考Boot跳转到App代码,把跳转地址改一下即可,然后在App中调用JumpTOBoot。

代码如下:

#define IAP_BOOTLOAD_ADDRESS 0x8000000 /* define bootload start address */
typedef void (*pFunction)(void);
static pFunction s_jumpToApplication;void JumpTOBoot(void)
{uint32_t JumpAddress;if (((*(__IO uint32_t *)APP_ADDRESS) & 0x2FFE0000) == 0x20000000){__ASM("CPSID I");                                           // 关全局中断JumpAddress = *(__IO uint32_t *)(IAP_BOOTLOAD_ADDRESS + 4); // Jump to user applications_jumpToApplication = (pFunction)JumpAddress;               // Initialize user application's Stack Pointer__set_MSP(*(__IO uint32_t *)IAP_BOOTLOAD_ADDRESS);s_jumpToApplication(); /* jump to app */}else{printf("top of stack pointer is unvalid! enter Boot update!\r\n");return;}while (1);
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • java设计模式day03--(结构型模式:代理模式、适配器模式、装饰者模式、桥接模式、外观模式、组合模式、享元模式)
  • 常用 Excel 笔记
  • shell的使用sed处理数据
  • 链表专题(Golang)
  • SpringBoot集成MyBatis-Plus
  • 如何在多台电脑上同步 VSCode配置和插件
  • N-152基于java贪吃蛇游戏5
  • 【论文阅读】视觉分割新SOTA: Segment Anything(SAM)
  • 【ABAP】ole2 excel多sheet导入导出
  • MySQL 解决时区相关问题
  • Map(HashMap)
  • SpringBoot开发——整合Logbook进行HTTP API请求响应日志输出
  • 卫生间装修防滑石用瓷砖还是大理石好呢?
  • 算法知识点————背包问题
  • 时间序列预测学习方向总概括
  • android图片蒙层
  • CSS实用技巧干货
  • FineReport中如何实现自动滚屏效果
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • jQuery(一)
  • Markdown 语法简单说明
  • Python - 闭包Closure
  • Redash本地开发环境搭建
  • spring boot 整合mybatis 无法输出sql的问题
  • Zepto.js源码学习之二
  • 测试开发系类之接口自动化测试
  • 高度不固定时垂直居中
  • 扑朔迷离的属性和特性【彻底弄清】
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 数据可视化之 Sankey 桑基图的实现
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 一道闭包题引发的思考
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • RDS-Mysql 物理备份恢复到本地数据库上
  • ​插件化DPI在商用WIFI中的价值
  • ​浅谈 Linux 中的 core dump 分析方法
  • #pragma data_seg 共享数据区(转)
  • #微信小程序:微信小程序常见的配置传旨
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (160)时序收敛--->(10)时序收敛十
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (超详细)语音信号处理之特征提取
  • (剑指Offer)面试题34:丑数
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (源码分析)springsecurity认证授权
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)平衡树
  • .NET Core工程编译事件$(TargetDir)变量为空引发的思考
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .Net8 Blazor 尝鲜
  • .NET程序员迈向卓越的必由之路
  • .NET牛人应该知道些什么(2):中级.NET开发人员
  • @RequestBody与@ResponseBody的使用