1.固件合并的使用场景;

为了使单片机拥有自定义的OTA功能,单片机程序都是有两段或者两段以上的程序组成,其中,负责实现OTA功能的程序叫做BootLoader程序,被升级的程序就是APP程序;

在量产过程中,为了一次性将BootLoader程序与APP程序烧录到单片机中,需要单片机工程师将BootLoader与APP的固件合并成一个固件;

2.固件合并的原理;

主要操作就是将两个文件合并成一个文件,不过要注意的是,因为每段程序都有固定的起始地址,因此,

1、固件的大小不能超过下一段固件的起始地址;

2、在BootLoader与APP程序中基本都会存在一些空白区域;

3.JFlash固件合并的操作;

1、打开JFlash.exe,点击“File” -> “Open data file”,选择第一个固件;

2、输入起始地址,bin格式的固件内部没有保存程序的地址信息,因此,起始地址可以直接输入0;

3、继续点击“File” -> “Merage data file”,选择第二个固件后,会继续弹出填写地址的对话框,这里需要填的地址 = 第二个固件的偏移量 + 第一个固件的首地址,然后点击“OK”即可;

4、最后点击“FIle” -> “Save data file as ...”,保存为新的固件文件;

注:下图中的蓝色边框内就是两段固件间的空白区域,合并得到的新固件中该区域的信息被0xFF填充

JFlash的高级使用教程(1)-- 固件合并相关推荐

  1. 为什么总学不好PS?300集PS从入门到高级自学教程,全面且系统

    相信有很多的小伙伴在自学PS设计修图的过程中,一定会经常遇见这样的问题:无论是看别人制作短视频也好,还是收集许多的设计元素也罢,到头来只感觉自己的PS只会个皮毛. 300集PS从入门到高级自学教程+插 ...

  2. java高级教程_高级Java教程

    java高级教程 课程大纲 学习Java基础很容易. 但是,真正钻研该语言并研究其更高级的概念和细微差别将使您成为一名出色的Java开发人员. 网络上充斥着"软","便宜 ...

  3. smartgwt_高级SmartGWT教程,第2部分

    smartgwt 这是我的教程的第二部分,有关使用SmartGWT快速进行UI开发. 在本教程的第一部分中 ,我们创建了基本的界面布局并添加了一些基本组件. 现在是时候解决这个问题,并使用SmartG ...

  4. smartgwt_高级SmartGWT教程,第1部分

    smartgwt 贾斯汀(Justin),帕特(Pat)和我已经开始着手进行一个需要管理和管理用户界面的副项目. 在与SmartGWT和GWT共同工作了一段时间之后,我们决定使用SmartGWT创建接 ...

  5. 高级SmartGWT教程,第2部分

    这是我的教程的第二部分,有关使用SmartGWT快速进行UI开发. 在本教程的第一部分中 ,我们创建了基本的界面布局并添加了一些基本组件. 现在是时候解决这个问题,并使用SmartGWT的真正功能了. ...

  6. 高级SmartGWT教程,第1部分

    贾斯汀(Justin),帕特(Pat)和我已经开始着手一个需要用户界面进行管理和管理的副项目. 在与SmartGWT和GWT共同工作了一段时间之后,我们决定使用SmartGWT创建接口. 我们非常喜欢 ...

  7. python高级教程_Python高级进阶教程

    这个系列的教程是在刘金玉编程的<零基础python教程>基础上的高级进阶应用. 教程列表: Python高级进阶教程001期 pycharm+anaconda3+pyqt5可视化界面开发环 ...

  8. iOS9 3D Touch 标签菜单 peek and pop force 压力触控 功能开发高级版教程

    iOS9 3D Touch 标签菜单 peek and pop  force 压力触控 功能开发高级版教程 github地址: https://github.com/wyk125/3DTouchDem ...

  9. 第一章 ArcGIS Pro python高级脚本教程介绍

    文章的很多内容来自于ESRI出版的 Advanced Python Scripting for ArcGIS Pro 一书,该书也提供了实验数据与免费的PDF书籍,可以通过官网链接下载. 不想仅仅做一 ...

  10. Advanced PHP 高级PHP教程 Lynda课程中文字幕

    Advanced PHP 中文字幕 高级PHP教程 中文字幕Advanced PHP 实现命名空间,扩展接口,创建第一个Trait,深入到面向对象的编程中,并发现本课程中的多种脚本方法 Web开发人员 ...

最新文章

  1. 人脸检测--Recurrent Scale Approximation for Object Detection in CNN
  2. 面试题编程题06-python 输入一个字符串,反转输出
  3. 题解 P1876 【开灯】
  4. Gartner发布2022年政府行业主要技术趋势:XaaS、数字化、超自动化等
  5. 预测回归_回归分析预测技术简介
  6. python如何用xpath爬取指定内容_Python利用Xpath选择器爬取京东网商品信息
  7. 找零钱--C语言实现
  8. linux sata raid,linux – 两个SIL RAID卡的SATA驱动器问题
  9. 下面哪个对象能代表当前的HTML文件,华师网络学院作业答案-WEB程序设计选择题...
  10. 课时3:小插曲之变量和字符串
  11. java反射入门,JAVA从入门到精通之java反射
  12. 小红书如何实现高效推荐?解密背后的大数据计算平台架构
  13. 计算机电工电子怎么学,计算机在电子电工课中的应用
  14. 氚云无代码搭建学习记录
  15. Altium Designer之多层板设置
  16. linux安装windows字体
  17. XYplorer 23多语言,最好的管理软件之一
  18. 安装了PS2022 后,画笔工具使用延迟,操作卡到无法忍受,PS 插件合都卸载掉、设置暂存盘等方法都没有效果
  19. python风变编程是骗局吗-风变编程:Python适合编程初学者学习吗?
  20. 圆周率的计算——典型Python案例

热门文章

  1. Thinkphp 6.0商城系统,B2C商城系统全新UI
  2. 使用Blender编辑Character Creater 4的人物形象
  3. 《莫烦Python3基础教程》学习笔记
  4. C#判断平面中两条直线的夹角
  5. office 2010
  6. 十款移动APP开发框架
  7. linux 测试post接口
  8. 细胞自动机,那是什么?
  9. 区块链实战超级账本视频教程|区块链视频教程
  10. TCP/IP四层模型和OSI七层模型的概念