合并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.pswp.cn/news/257196.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/257196.shtml
英文地址,請注明出處:http://en.pswp.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;解決方法是