为什么有的编译器生成的hex文件一开始就是:020000040100F9,
(02表示数据只有2个字节,0000表示地址,04,说明该记录为扩展段地址记录,0100是数据,f9是校验码)
只有在原有的地址位(2byte)用完,即有效数据位达到64k后,才会出现020000040100F9这种类型的数据啊。
在hex文件最开始的地方是不会出现扩展段地址记录的?!
下面是一个hex文件开头的几行:
:020000040100F9
:100000007CA09FE52F0AB0E10AA6A0012AA6A001C4
:10001000FF1BBAE8FF03ABE80CF0A0E10080A0E30F
:1000200090909FE5FF00B9E8FF00A8E83F00B9E81D
:100030003F00A8E80107A0E3DFF021E300D0A0E142
:10004000010B40E2D1F021E300D0A0E1010B40E23E
:1000500052F021E300D0A0E1020A40E2D7F021E310
如有大侠曾经写过烧录软件,或者对hex文件内部格式比较熟悉,不妨赐教!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
ARM7TDMI核未研究过, 暂无好的建议给你, 抱歉.
-----------------------------------------------------------------------
恩,还是要多谢你!
搞了这么久,就剩这一步了,真不希望功亏一篑啊。
你好,请问 Hex文件结束的时候
:107FD0001AFF0101102D0102030404000900060725
:087FE000080902040608000074
:04000005080021517D
:00000001FF
这个 05类型的数据起到什么作用呢, 网上查到解释是
'05' Start Linear Address Record:开始线性地址记录
但是我理解不了,比如我写烧录软件,这条数据要怎么处理?
你直接用bin文件就什么问题都没有了
一周热门 更多>