合并bin文件-----带boot发布版本比较好用的bat(便捷版)

直接上图上代码(代码在结尾),有不会用的可以留言:

第一步:工程介绍,关键点--- 1.bat文件放所在app和boot工程的同级目录下  2.release为运行bat自动生成文件夹

第二步:合版.bat  针对具体项目需要修改的变量如下图, apppath 、bootpath、size

 第三步:双击bat,运行如下图,显示merge success说明成功,按任意键弹出release窗口的发行版bin可以交给生产烧录了!

 

 源代码:

 1 :: XX公司   XX设备 合版bin
 2 :: creater: 第一puck     time: 20170909
 3 :: 该文件需要放在工程文件夹相同目录下
 4 
 5 :: 开/关显示cli信息
 6 @echo off
 7 echo ***************** XX工程项目 *****************
 8 
 9 :: CMD标题
10 title XX有限公司合版bin工具
11 
12 :: 创建目标文件夹release,并清空
13 mkdir "%~dp0release"
14 del %~dp0\release\*.bin
15 
16 ::变量声明
17 set apppath="%~dp0XX - APP -V1.00\EWARM\rtos\Exe\XX_APP_V1.00.bin"
18 set bootpath="%~dp0XX- BOOT\EWARM\DEMO\Exe\XX_BOOT_V1.00.bin"
19 set merge="%~dp0release\XX_APP_BOOT_V1.bin"
20 
21 
22 :: 准备boot文件 空bin文件撑开不需要写部分,size取决于app在flash起始地址之前的空间大小
23 for %%a in (%bootpath%) do set /a size=128*1024-%%~za
24 fsutil file createnew temp.bin %size%
25 copy /b %bootpath% + temp.bin  boot.bin
26 
27 :: 生成合版文件
28 copy /b boot.bin + %apppath%  %merge%
29 
30 :: 删除临时文件
31 del temp.bin
32 del boot.bin
33 
34 :: 执行成功与否
35 if exist %merge% (goto success) else goto failure
36 
37 
38 :success
39 echo *************** Merger success! *****************
40 Pause
41 start "" "%~dp0release\"
42 exit
43 :failure
44 echo **************** Merger failure! ****************
45 Pause
46 exit

 注:网上合并bin的工具比如UBIN原理都差不多,撑开部分都是00(bat暂时我没找到方法写入FF,需要调用其他插件就不方便了),我拿J-LINK ARM合并的bin和上述合并的bin用beyondcompare比较了下唯一区别就是撑开部分是00和ff区别,一般情况不会有影响(flash写入前都会先擦除00->FF)。

转载于:https://www.cnblogs.com/firstparke/p/7735966.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/257196.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第五天 断点续传和下载

1 断点续传, 2.多线程下载原理 3.httpUtils 多线程断点下载的使用。 ------------- 1.拿到需要下载的文件的大小,和需要初始的线程数 2.得到每个线程需要下载的大小,最后一个线程负责将剩下的数据全部下载。 3.同时需要设置一个与下载文件同大…

关于cmake从GitHub上下载的源码启动时报错的问题

关于cmake从GitHub上下载的源码启动时报错的问题: 由于cmake会产生all_build和zero_check两个project,此时需要右击鼠标将需要运行的项目设为启动项,在进行编译,现只针对“找不到all_build文件“的出错信息,若有相关编…

一个人的Scrum之准备工作

在2012年里,我想自己一人去实践一下Scrum,所以才有了这么一个开篇。 最近看了《轻松的Scrum之旅》这本书,感觉对我非常有益。书中像讲述故事一样描述了在执行Scrum过程中的点点滴滴, 仿佛我也跟着进行了一次成功的Scrum。同样的&a…

Elementary OS安装Chrome

elementary os 官方网站:https://elementary.io/ 这os是真好看!首先这是基于ubuntu的,所以可以安装ubuntu的软件! 电脑必备浏览器必须是chrome呀!下载地址: https://www.chrome64bit.com/index.php/google…

vs+opencv编译出现内存问题

将图片路径改为项目下的相对路径,如 …\data\01.jpg; 其中…表示项目所在目录的上级目录,不要用绝对路径,具体原因未知,同时,出现opencv_worldxxx.lib找不到情况,1.链接中依赖项是否写错(英文输…

runtime--实现篇02(Category增加属性)

在iOS设计Category中,默认不能直接添加属性,如果分类中通过property修饰的属性,只会生成setter和getter的声明, 不会生成其实现;因此,如果一定要添加属性的话,需要借助runtime特性,通…

spark、oozie、yarn、hdfs、zookeeper、

为什么80%的码农都做不了架构师?>>> spark、 oozie:任务调度 yarn:资源调度 hdfs:分布式文件系统 zookeeper、 转载于:https://my.oschina.net/u/3709135/blog/1556661

关于halcon多区域挑选有关算法的自我理解(tuple_sort_index)

多区域根据面积挑选想要的obj area_center(regions,areas) tuple_sort_index(areas,indexs) tuple_sort_index算子将一组数组进行升序排列,然后将其在原数组的index按升序放入indexs中, 例如原数组areas[20…

JLOI2016 方

bzoj4558 真是一道非常excited的题目啊…JLOI有毒 题目大意:给一个(N1)*(M1)的网格图,格点坐标为(0~N,0~M),现在挖去了K个点,求剩下多少个正方形(需要注意的是正方形可以是斜着的,多斜都可以) N…

opencv 直方图反向投影

转载至:http://www.cnblogs.com/zsb517/archive/2012/06/20/2556508.html 直方图反向投影式通过给定的直方图信息,在图像找到相应的像素分布区域,opencv提供两种算法,一个是基于像素的,一个是基于块的。 使用方法不写了…

request请求在Struts2中的处理步骤

2019独角兽企业重金招聘Python工程师标准>>> 一个请求在Struts2框架中的处理大概分为以下几个步骤 1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求 2 这个请求经过一系列的过滤器(Filter)(这些过滤…

vs联合torch,ZED相机api,opencv建立C++项目

ZED相机api下载及cmake教程 generate产生工程文件后打开,配置如下: 将ZED项目作为启动项 然后在main.cpp中写入自己的工程代码即可,运行也在release X64下进行 注:cmake之前源文件下main.cpp,也就是tutorial 1 - h…

POJ 2186

//在一张有向无环图G,图G会包含很多环(环里面的点是等价的), //当然可以把环缩成一个点(利用tarjan缩点), //形成一棵树,题目要求是求除他以外的点都指向他,也就是只有一…

使用DataGridView数据窗口控件,构建用户快速输入体验

使用DataGridView数据窗口控件,构建用户快速输入体验 在“随风飘散” 博客里面,介绍了一个不错的DataGridView数据窗口控件《DataGridView数据窗口控件开发方法及其源码提供下载》,这种控件在有些场合下,还是非常直观的。因为&…

pip安装

下载pip安装包,解压。复制到C:\Users\administrator\下,用cmd打开当前文件夹,用Python安装, Python setup.py install 安装完之后记得把Python根目录下的scripts也放在环境变量里。 以上是我pip安装的成功例子,可能不…

深入剖析授权在WCF中的实现[共14篇]

I、身份(Identity)与安全主体(Security Principal) 从两个重要的概念谈起:Identity与Principal[上篇] 从两个重要的概念谈起:Identity与Principal[下篇] WCF的三种授权模式 II、Windows用户组授权 基于Wind…

sqlserver 查看锁表,解锁

查看被锁表: 代码如下 复制代码 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_typeOBJECT spid 锁表进程 tableName 被锁表名 [more] 解锁: 创建一个临时Table 代码如下…

json2.js参考

json2.js使用參考 json2.js提供了json的序列化和反序列化方法&#xff0c;能够将一个json对象转换成json字符串&#xff0c;也能够将一个json字符串转换成一个json对象。<html><head><script type"text/javascript" src"jquery.js"><…

手把手教你用1行代码实现人脸识别 -- Python Face_recognition

2019独角兽企业重金招聘Python工程师标准>>> 环境要求&#xff1a; Ubuntu17.10Python 2.7.14环境搭建&#xff1a; 1. 安装 Ubuntu17.10 > 安装步骤在这里 2. 安装 Python2.7.14 (Ubuntu17.10 默认Python版本为2.7.14) 3. 安装 git 、cmake 、 python-pip # 安装…

pip安装的库导入pycharm中

用pip安装了一些库&#xff0c;但pycharm中却没有&#xff0c;解决方法是