打印
[开发资料]

Hex文件使用

[复制链接]
873|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主


hex 格式文件由 Intel 制定的一种十六进制标准文件格式,是由编译器转换而成的一种用于下载到处理器里面的ASCII文本文件。
1、格式
hex行格式为:BBAAAATT 【D···D】CC

其中:
: 代表行开始,固定为冒号:
BB代表Bytes,数据长度
AAAA代表Address,地址
TT代表Type,数据类型(标识)
D···D代表Date,数据
CC代表CheckSum,校验和
说明:BB数据长度,也就是D···D这个字段的数据长度;
AAAA地址,起始地址、偏移地址,根据数据类型(TT)有关;


TT数据类型(标识):
00:数据标识

01:文件结束标识

02:扩展段地址

04:线性地址

05:线性开始地址

注:地址代表高16位地址,也就是要向左移16bit。
CC校验和计算公式:
CheckSum = 0x100 - (Sum & 0xFF)


实例描述Hex


下面,通过一个例子来说明hex。

说明一下:不同数据类型的数据略有差异,先再看下00(数据类型)的格式:



一个常见hex文件:

:020000040800F2
:1000000000040020B1010008FD020008BD02000844
:10001000F902000801020008350400080000000091
:1000200000000000000000000000000021030008A4
···省略数行
:100470000000024084040008000000200004000086
:040480004804000824
:040000050800019955
:00000001FF


1、04类型:线性地址行


:020000040800F2
02:数据长度,这里是(0800)地址的2字节长度;
0000:偏移地址,这里数据其实无效;
04:线性地址数据类型;
0800:线性起始地址,左移16位,即:0x0800 0000;
F2:校验和
F2 =  0x100 - (0x02 + 0x04 + 0x08);

比如,修改起始地址为0600:







2、00类型:数据行
:1000000000040020B1010008FD020008BD02000844
10:数据长度,这里是16字节(程序)数据的长度;
0000:偏移地址,数据第一行偏移0000地址,第二行就是偏移0010,第二行就是偏移0020,依次偏移到FFF0;
如果偏移到FFF0,则会重新下一个起始地址,一段程序你就明白了:
:10FFD000D0C5CFA20D0A00003052010810B50A4862
:10FFE00002F0FEFC09A002F0FBFC14A002F0F8FCF9
:10FFF0001EA221A123A002F0F3FC2CA002F0F0FC31
:020000040801F1
:10000000394802F0EDFC10BD3C5301080D0A2A20CE
:1000100020202020202020202020202020202020E0
:100020002020202020202020202020414756D6C7F5
00:线性地址数据类型;
00040020B1010008FD020008BD020008:程序数据,就是bin文件里面的纯程序数据;

44:校验和
44 =  0x100 - (0x10 + 0x04 + 0x20 + 0xB1 + 0x01 + 0x08 + 0xFD + 0x02 + 0x08 + 0xBD + 0x02 + 0x08 + 0x44) & 0xFF;

3、01类型:文件结束行
:00000001FF
00:数据长度;
0000:偏移地址,这里数据其实无效;
01:代表文件结束;
FF:校验和
这里代表hex文件结束了,有些公司为了使hex传输(下载)更可靠,或通过工具(或命令在)结束行后面追加校验信息,一般远程升级会考虑更多校验信息(后期抽时间讲述一下远程升级)。




使用特权

评论回复
沙发
jf101| | 2024-5-21 14:10 | 只看该作者
单片机基本都是Hex文件进行下载的程序的

使用特权

评论回复
板凳
szt1993| | 2024-5-21 19:00 | 只看该作者
HEX文件一般下载程序时使用的比较多,主要还是比较安全吧

使用特权

评论回复
地板
小夏天的大西瓜| | 2024-5-22 15:57 | 只看该作者
hex带校验一般稳定性比较好

使用特权

评论回复
5
小小蚂蚁举千斤| | 2024-6-11 16:23 | 只看该作者
HEX文件一般下载程序时使用的比较多

使用特权

评论回复
6
AdaMaYun| | 2024-6-13 20:06 | 只看该作者
HEX文件使用还是比较常见的

使用特权

评论回复
7
OKAKAKO| | 2024-6-21 21:23 | 只看该作者
HEX文件适用于大多数单片机

使用特权

评论回复
8
中国龙芯CDX| | 2024-6-26 16:27 | 只看该作者
hex 格式文件由 Intel 制定的一种十六进制标准文件格式,是由编译器转换而成的一种用于下载到处理器里面的ASCII文本文件。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

297

主题

2027

帖子

4

粉丝