分类分类
大小:153KB语言:简体
类别:杂类工具系统:WinXP, Win7, WinAll
在单片机的开发过程中,经常需要将两个单独的bin文件合并成一个文件,方便烧写和生产。
超好用的一个工具,可以实现两个二进制bin文件的合并,任一指定偏移量合并。使用它可以直接将编译好的两个bin文件按照程序员需要合并,而不需费力去重建工程重新编译。有兴趣的朋友可以试试。
使用方法
首先简单介绍一下STM32的IAP。IAP(In-application-programming),即在应用中编程。有了它,产品发布之后,仍然可 以方便的升级固件,而不需要拆机并用JTAG等方式更新程序。IAP系统的固件一般有两部分组成,IAP BootLoader Code和Application Code,如下图所示。
![]()
系统启动时,首先运行IAP BootLoader Code,并检测相应状态,判断是执行升级的流程还是直接运行本地的Application Code。 一般来说,BootLoader和Application是分别编译的,会生成两个二进制文件。在工厂生产时,如果分别烧写这两个文件,显然有些麻烦。这 时,我们就可以将两个BIN文件合并成一个,直接烧写。假设Application Code的偏移地址为0x1000,IAP固件在Flash中的分布如下图所示。
下面介绍第一种方法,使用二进制文件合并工具(UBIN.exe),这个小工具是以前在S3C2410上开发uCOS时做的,功能比较简单,满足一般的需求。
首先,添加第一个文件1.bin,其地址为0x0000,所以,偏移量设置为0x00000000,设置完偏移量后点击“添加”按钮。
![]()
然后添加第二个文件,偏移量根据需要设置为0x00001000,如下图所示。
设置目标文件为C:\dst.bin,然后点击“合并”按钮。
![]()
正常情况下,会成功生成目标文件,并有如下图所示的提示信息。
这种方法相对比较灵活,对合并文件的个数和偏移地址没有限制。缺点是不支持配置文件,不能保存所设的配置,所以,每次合并都得手动做很多重复工作。在调试阶段会比较浪费时间。
下面介绍一种通过命令行工具合并两个文件的方法。该方法需要用到fsutil.exe、cat.exe和hbin.exe。写一个批处理文件,分别调用这三个工具,最终将1.bin和2.bin合并成dest.bin。批处理文件的内容如下:
del dest.bin
fsutil file createnew dest.bin 4096
cat 2.bin >>dest.bin
hbin 1.bin dest.bin
批处理文件各行的简单说明,
del dest.bin,删除原来的目标文件
fsutil file createnew dest.bin 4096,创建一个大小为4096字节的空白文件dest.bin,该值的大小由偏移地址0x1000决定
cat 2.bin >>dest.bin,将2.bin追加到空白文件dest.bin之后
hbin 1.bin dest.bin,将1.bin放到dest.bin的头上,填充dest.bin头上4KB的空白
dest.bin就是我们最终需要的合并完成的文件。将它与第一种方法合并的文件dst.bin对比一下,如下。
可以看到两种方法合并出的文件,完全一样。
第二种方法的好处在于,可以在集成开发环境中设置编译选项,在编译完成之后自动执行该批处理,这样,编译完成后即得到能够直接固化到Flash中的二进制文件,节省了一些时间。
同厂商应用
猜你喜欢
相关下载
顶点工具箱杂类工具45.1Mv3.1官方版
详情宇冠检测软件杂类工具627KBv2.0官方版
详情2014年日历表格杂类工具12KBexcel打印版
详情OCX、dll文件注册器杂类工具18KB
详情米聊电脑客户端无限加好友工具杂类工具700KB1.0 绿色版
详情天气早知道杂类工具866KB1.0 绿色版
详情百度文库自动评分增加财富值工具杂类工具335KBV5.9绿色版
详情金额大写转换工具杂类工具255KBv1.0绿色版
详情快递100电脑版杂类工具222KBv1.1.1专业版
详情极智后缀名翻译器杂类工具242KBV6.9绿色版
详情倒计时器杂类工具522KB1.4绿色免费版
详情远眺图电脑版杂类工具3.4M2013.20.1321官方版
详情空间互踩精灵杂类工具202KB1.0绿色免费版
详情夏玲归属地查询杂类工具339KBv2.0.03绿色版
详情qt语音小管家抢麦刷心多开器杂类工具900KB1.0绿色免费版
详情诺亚方舟登舰卡制作软件杂类工具929KBv1.0绿色版
详情秒表计时器杂类工具6KB1.0绿色免费版
详情眼睛护士杂类工具1022KBv3.0.18绿色免费版
详情PC6文件夹图标修改器杂类工具87KBv1.0绿色免费版
详情txt转umd(mbookmaker)杂类工具188KBv1.0绿色免费版
详情