合并bin文件-----带boot发布版本比较好用的bat(便捷版)
直接上圖上代碼(代碼在結(jié)尾),有不會(huì)用的可以留言:
第一步:工程介紹,關(guān)鍵點(diǎn)--- 1.bat文件放所在app和boot工程的同級(jí)目錄下 ?2.release為運(yùn)行bat自動(dòng)生成文件夾
第二步:合版.bat ?針對(duì)具體項(xiàng)目需要修改的變量如下圖,?apppath 、bootpath、size
?第三步:雙擊bat,運(yùn)行如下圖,顯示merge success說(shuō)明成功,按任意鍵彈出release窗口的發(fā)行版bin可以交給生產(chǎn)燒錄了!
?
?源代碼:
1 :: XX公司 XX設(shè)備 合版bin 2 :: creater: 第一puck time: 20170909 3 :: 該文件需要放在工程文件夾相同目錄下 4 5 :: 開(kāi)/關(guān)顯示cli信息 6 @echo off 7 echo ***************** XX工程項(xiàng)目 ***************** 8 9 :: CMD標(biāo)題 10 title XX有限公司合版bin工具 11 12 :: 創(chuàng)建目標(biāo)文件夾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 :: 準(zhǔn)備boot文件 空bin文件撐開(kāi)不需要寫(xiě)部分,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 :: 刪除臨時(shí)文件 31 del temp.bin 32 del boot.bin 33 34 :: 執(zhí)行成功與否 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?注:網(wǎng)上合并bin的工具比如UBIN原理都差不多,撐開(kāi)部分都是00(bat暫時(shí)我沒(méi)找到方法寫(xiě)入FF,需要調(diào)用其他插件就不方便了),我拿J-LINK ARM合并的bin和上述合并的bin用beyondcompare比較了下唯一區(qū)別就是撐開(kāi)部分是00和ff區(qū)別,一般情況不會(huì)有影響(flash寫(xiě)入前都會(huì)先擦除00->FF)。
轉(zhuǎn)載于:https://www.cnblogs.com/firstparke/p/7735966.html
總結(jié)
以上是生活随笔為你收集整理的合并bin文件-----带boot发布版本比较好用的bat(便捷版)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java aac rtp封装_分享一段H
- 下一篇: Elementary OS安装Chrom