|
|
Intel
HEX file format |
|
|
|
|
|
Intel
HEX file format
(*.HEX) เป็นไฟล์รหัส ASCII ซึ่งสามารถใช้โปรแกรม EDITOR ทั่วไปเรียกขึ้นมาดูได้
เป็นไฟล์ที่สำคัญรูปแบบหนึ่ง ที่มักจะใช้ในการสื่อสารกันระหว่างคอมพิวเตอร์
และมักจะเป็นเอาต์พุต ไฟล์ของโปรแกรม COMPILER เพื่อใช้ส่งให้กับ EPROM PROGRAMMER
โดยผ่าน RS232 รูปแบบของ INTEL HEX FILE ประกอบด้วยเรคคอร์ดอยู่ 2 ชนิดคือ
DATA RECORD และ END-OF-FILE RECORD ในแต่ละเรคคอร์ดจะเริ่มต้นด้วยระหัสนำ
9 ตัวอักษร ตามด้วยข้อมูล (ถ้ามี) และปิดท้ายด้วยค่า CHECKSUM ขนาด 2 ตัวอักษร
รูปแบบของ INTEL HEX FILE จะมีลักษณะดังต่อไนี้ |
|
|
|
|
|
:BC
AAAA TT
HHH...HHCC |
|
|
|
|
|
: |
เครื่องหมายโคลอน
ใช้เป็นตัวเริ่มต้นข้อมูล |
|
BC |
จำนวนไบท์ของข้อมูลในเรคคอร์ด มีค่าเป็นเลขฐาน 16 (HEX) (เป็น 00 ถ้าเป็นเรคคอร์ดสิ้นสุดไฟล์) |
|
AAAA |
เป็นแอดเดรสข้อมูลไบท์แรกในเรคคอร์ด |
|
TT |
แสดงชนิดของเรคคอร์ด |
|
|
(TT = 00
ถ้าเป็นเรคคอร์ดข้อมูล) |
|
|
(TT = 01
ถ้าเป็นเรคคอร์ดสิ้นสุดไฟล์) |
|
HH |
ข้อมูล
1 ไบท์ จำนวนตามที่ระบุไว้ ใน BC |
|
CC
|
ค่าของ CHECKSUM
ซึ่งเป็นค่า two's complement ของผลบวก ของข้อมูลทุกไบท ์ในเรคคอร์ด |
|
|
|
|
|
|
|
|
|
|
การใส่หมายเหตุ
(Comment ) |
|
|
เราสามารถใส่หมายเหตุไว้ที่ท้ายไฟล์ได้
โดยใช้เซมิโคลอน ";" ไว้ข้างหน้า เช่น |
|
|
;PIC18F8722 |
|
|
|
|
|
ตัวอย่าง INTEL HEX FILE |
|
|
:1080000090F801E0C2E7F0853C83853D827A7612E4 :10801000009FE583458260EF85833C85823D20217A :108020000D1280B45008753C99753D9980D9853AF8
.
.
. :1080F00000002290F801E054F8F0748090F800F04D :01810000225C :00000001FF ;PIC18F8722 |
|
|
|
|
|
|
ตัวอย่างการคำนวนที่เรคคอร์ดแรก |
|
|
BC AAAA TT <----------------------HHH...HHH
---------------------> CC |
|
|
:10
8000 00 90
F8 01 E0 C2 E7 F0 85 3C 83 85 3D 82 7A 76 12 E4 |
|
|
|
|
|
นำข้อมูลที่เป็นตัวเลขหลังจากเครื่องหมาย
: ทุกไบท์มาบวกกัน แล้วนำผลรวมขนาด 1 ไบท์มาคิด ส่วนที่เกินตัดออกไป |
|
|
10+80+00+00 +90+F8+01+E0+C2+E7+F0+85+3C+83+85+3D+82+7A+76+12
= 91C |
|
|
|
|
|
ใช้เฉพาะ 2 ไบท์
หลังคือ 1C
|
|
|
หา one's complement
FFh - 1Ch = E3h
|
|
|
หา two's complement
E3h + 1 = E4h |
|
|
|
|
|
ตัวอย่างการคำนวนที่เรคคอร์ดสุดท้าย |
|
|
:00
0000 01 FF |
|
|
00 + 0000 + 01
= 01h |
|
|
หา one's complement
FFh - 01h = FEh |
|
|
หา two's complement
FEh + 1 = FFh |
|
|
|
|
|
|
|
|
ศมิทธิ์
เอมสมบัติ |
|
|