シングルチップの開発HEXファイルとBINファイルは、Keil社、例えば、などのHEXおよびBINファイルを、作成された人気の高い開発環境に非常に一般的なファイル形式のプログラミングは、次のとおりです。
1. HEXを作成します。[>出力>クリートHEXファイル]をチェックすることで、プロジェクトの出力HEXファイルを聞かせすることができますKeil社の魔法の杖で。
2、BINを作成します:[ビルド/再構築後の杖>ユーザー>]ファイル名を指定して実行#1で確認したラベルの下でKeil社、テキストボックスのコマンド入力を対応するユーザながら、
fromelfの--bin [email protected]!Lの 意志出力BINファイルをコンパイル。
自宅に近い、簡単にファイルを(右側)HEX(左)とBINの下での違いについて説明します。
1、HEXファイル
HEXファイルには、両方のデータが含まれているとの情報を扱うため、プログラミングやダウンロードHEXファイルとき、一般的にアドレスを指定することを必要としません。
2、BINファイル
BINは、アドレスが含まれていない、純粋なデータ(コード)ファイルの情報を、私たちはBINをプログラミングするとき、一般的にプログラミングツールで変更することができるアドレスのプログラムを指定する必要があります。
のは、Keil社のHEXおよびBINファイル生成されたコードの次の部分を見てみましょう:
HEXのASCIIコード化されたファイルの内容が取得されている本は、エディタで直接開くことができ、BINファイルを直接エディタで表示することはできません、16進数に変換し、(++プラグインのようなメモ帳をダウンロードするように表示することができます:プラグインのインストール):
非常に直感的BINファイルデータ領域のみHEXファイルを見ることができます。
HEXフォーマットの解釈:
各行はHEXファイルレコード(レコード)を表し、次のように、基本的な形式は
記録マークコロン(:)開始フラグを示し
LOAD RECLENすなわち、セグメント情報又はデータのデータ長のデータ長
オフセットオフセットアドレスをベースにオフセットアドレスを相対指定します
RECTYP 记录类型 记录类型:“00”数据记录 “01”文件结束记录 '02'扩展段地址记录 '03'起始段地址记录 '04'扩展线性地址记录 '05'开始线性地址记录
INFO or DATA 数据信息 校验值
首先要注意的时,1-byte中的byte在HEX文件中因为经过ASCII编码的所以用两个字符表示一个16进制即一个字节,,在BIN文件中则是直接用一个字节表示这两字符,上面的图很直观
下面以HEX文件第一行为例,它的含义主要有,02表示数据段“6000”长度为2,0000表示偏移地址,04表示记录类型为扩展线性地址的记录,6000表示线性地址的基地址并且表示的时[16-31]区域即高位地址,[0-15]区域即低位默认为0。
最后的9A为校验值,用0x100减去起始标志(:)后面所有字符累加对256的模值得到的结果作为校验值:0x100-(0x02+0x00+0x00+0x04+0x60+0x00)%256=9A
其他记录类型类似,可以参考PDF:HEX文件详解