S19文件格式详解(1)

27 篇文章 34 订阅

1.记录结构

012345
STypeByte CountAddressDataChecksum

一个SREC格式文件包含一系列ASCLL格式的的数据。具体如下:

  1. Record type: 两个字节,一个大写“S” 和 一个0~9的数字,定义数据类型。
  2. Byte count: 一个字节,表示后面其余部分(地址+数据+校验和)的字节数。该字段最小值为3(两个字节地址字段+1个字节校验和)。
  3. Address: 地址段长度由Record type来决定。地址字节对齐方式为大端对齐。
  4. Data: 数据段。一般建议该段最大32字节。S0/S1/S2/S3 类型的最小数据数是0。最大可记录的数据数由地址段来决定,因为数据段最大记录数是255,减去1个字节的校验位,再减去地址段,剩下的才是数据段长度,因此S0/S1最大支持252字节数据,S2最大支持251字节数据,S3最大支持250字节数据。
  5. Checksum: 一个字节。Checksum = 取补码( (uint8_t)(Byte count + Address + Data) )

2.文本结束符

SREC记录由一个或多个ASCII行终止字符分隔,以便每个记录单独出现在文本行上。
通过可视化地划分记录来增强易读性,还提供了记录之间的填充,可以用来提高机器解析效率。


创建十六进制记录的程序通常使用符合其操作系统惯例的行终止字符。
例如,Linux程序使用一个LF(换行符,十六进制值0A)字符终止行,而Windows程序使用一个CR(回车符,十六进制值0D)后跟一个LF。

3.记录类型

4.实例

下一篇:

S19文件格式详解(2)——增加S19文件首行的解析


作者:L_Kian
链接:01_S19 文件格式详解(.srec文件) - 简书
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 6
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值