您的位置 首页 动态

Hex文件烧录到MCU中的技巧

Hex文件烧录到MCU中的技巧- 答题器项目生产时,需要在程序 烧录 时附带生产信息(生产时间、软件版本等)。后续若答题器出问题时,能知道是哪个批次生产的答题器,方便定位问题。

答题器项目出产时,需要在程序烧录时顺便出产信息(出产时刻、软件版别等)。后续若答题器出问题时,能知道是哪个批次出产的答题器,便利定位问题。

技能可行性

答题器所用芯片nrf51822flash共256KByte,flash底子用不完,咱们能够取一块没用到的flash,烧录时把出产信息也写进去。

Hex文件烧录到MCU中的技巧

Hex文件是能够烧录到MCU中,被MCU履行的一种文件格局。假如用记事本翻开可发现,整个文件以行为单位,每行以冒号最初,内容悉数为16进制码(以ASCII码方法显现)。Hex文件能够依照如下的方法进行拆分来剖析其间的内容:

例如 “:1000080080318B1E0828092820280B1D0C280D2854”能够被看作“0x10 0x00 0x08 0x00 0x80 0x31 0x8B 0x1E 0x08 0x28 0x09 0x28 0x20 0x28 0x0B 0x1D 0x0C 0x28 0x0D 0x28 0x54”

第一个字节 0x10表明本行数据的长度;

第二、三字节 0x00 0x08表明本行数据的开端地址;

第四字节 0x00表明数据类型,数据类型有:0x00、0x01、0x02、0x03、0x04、0x05。

‘00’ Data Rrecord:用来记载数据,HEX文件的大部分记载都是数据记载

‘01’ End of File Record: 用来标识文件完毕,放在文件的最终,标识HEX文件的结束

‘02’ Extended Segment Address Record: 用来标识扩展段地址的记载

‘03’ Start Segment Address Record:开端段地址记载

‘04’ Extended Linear Address Record: 用来标识扩展线性地址的记载

‘05’ Start Linear Address Record:开端线性地址记载

然后是数据,最终一个字节 0x54为校验和。

校验和的算法为:核算0x54前所有16进制码的累加和(不计进位),查验和 = 0x100 – 累加和

在上面的后2种记载,都是用来供给地址信息的。每次碰到这2个记载的时分,都能够依据记载核算出一个“基”地址。关于后边的数据记载,核算地址的时分,都是以这些“基”地址为根底的。

HEX文件都是由记载(RECORD)组成的。在HEX文件里边,每一行代表一个记载。记载的根本格局为:

Record mark ‘:’

Length

Load offset

Record type

INFO or DATA

CHKSUM

1 byte

1 byte

2 bytes

1 byte

n bytes

1 byte

看个比如:

:020000040008F2

:10000400FF00A0E314209FE5001092E5011092E5A3

:00000001FF

对上面的HEX文件进行剖析:

第1条记载的长度为02,LOAD OFFSET为0000,RECTYPE为04,阐明该记载为扩展段地址记载。数据为0008,校验和为F2。从这个记载的长度和数据,咱们能够核算出一个基地址,这个地址为(0x0008 《《 16)。后边的数据记载都以这个地址为基地址。

第2条记载的长度为10(16),LOAD OFFSET为0004,RECTYPE为00,阐明该记载为数据记载。数据为FF00A0E314209FE5001092E5011092E5,共16个BYTE。这个记载的校验和为A3。此刻的基地址为0X80000,加上OFFSET,这个记载里的16BYTE的数据的开端地址便是0x80000 + 0x0004 = 0x80004.

第3条记载的长度为00,LOAD OFFSET为0000,TYPE = 01,校验和为FF。阐明这个是一个END OF FILE RECORD,标识文件的结束。

在上面这个比如里,实践的数据只要16个BYTE:FF00A0E314209FE5001092E5011092E5,其开端地址为0x0004.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/347851.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部