BootLoader IAP升级时,为什么要用bin文件而不是hex文件求解

2019-07-21 05:45发布

如题,
最近在开发另一个芯片模块的在线升级功能, 有不少疑问。
如题就是其中一个问题, 在开发指南IAP章节,提到bin文件方便进行IAP升级,那么为何呢?这里主要考虑的是哪些要素呢?
关于bin文件和hex文件的区别 正在查询。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
yklstudent
1楼-- · 2019-07-21 11:17
 精彩回答 2  元偷偷看……
xiaokun
2楼-- · 2019-07-21 15:51
https://blog.csdn.net/looper66/article/details/58721991
看了bin和hex 的区别
如上贴,
最后一句话:不过Bin文件作为固件的最终形式,在使用串口下载程序或者远程升级时,是不可替代的。

所以我得出结论:
           
                   要实现IAP的话 用Bin文件无疑是最合适的。


不知道我这样的理解对不对
xiaokun
3楼-- · 2019-07-21 20:55
yklstudent 发表于 2018-11-13 18:02
主要分便省事,HEX其实也挺好

省哪些地方的事呢?
我现在知道:Bin文件是纯二进制文件,内部只包含程序编译后的机器码和变量数据。
所以我理解的是 ,bin文件通过串口下载至芯片之后可直接被识别
而Hex文件相当于对实际有用的数据的头和尾添加了一些标志性的字段,我接触到利用Hex文件下载至MCU中的实例如普通的STC89C51,是通过ISP工具经串口下进MCU内部的,是不是这个ISP工具也是将Hex文件里存储的具体有效数据(机器码和变量数据等)提取成出来,形成bin文件,发给MCU?
douxiaolingyun
4楼-- · 2019-07-22 01:33
bin文件是最终固件格式,HEX经过下载器软件后也是最终生成BIN文件烧录单片机。https://blog.csdn.net/looper66/article/details/58721991
yklstudent
5楼-- · 2019-07-22 04:29
xiaokun 发表于 2018-11-14 08:45
省哪些地方的事呢?
我现在知道:Bin文件是纯二进制文件,内部只包含程序编译后的机器码和变量数据。
...

HEX文件那些多余的数据长度、数据地址等信息,实际烧录都是要处理,然后提取有效数据烧录到指定地址才算完事,BIN文件都是已知数据地址,直接读取BIN数据烧录就好,不然每行提取解析有效数据处理,这对单片机端而已不是很方便嘛
jackielau
6楼-- · 2019-07-22 06:46
 精彩回答 2  元偷偷看……

一周热门 更多>