S19文件格式详解:Freescale S-record编程入门

需积分: 49 27 下载量 56 浏览量 更新于2024-09-11 收藏 37KB DOC 举报
S19文件格式详解是针对Freescale单片机的一种特定程序文件格式,由CodeWarrior编译器生成,主要用于EEPROM编程。这种文件不是直接存储ASCII码,而是一种机器代码的表示形式,用于后续的MCU烧写操作。S19文件采用S-record格式,每行最多包含78个字节,156个字符,分为五个字段:类型、计数、地址、数据和校验和。 1. **类型 (Type):** 2个字符,用于指示记录类型,包括S0、S1、S2、S3、S5、S7、S8、S9等。每个类型有不同的功能和用途。 2. **计数 (Count):** 2个字符,表示剩余数据对的数量,用于计算实际数据的长度,与地址和数据一起构成记录的整体长度。 3. **地址 (Address):** 4、6或8个字符,表示数据应装载到的目标地址,根据地址的字节数不同,占字节数对应数量的字符。例如,2字节地址用4字符表示,3字节地址用6字符表示,4字节地址用8字符表示。 4. **数据 (Data):** 0至64个字符,包含16进制的内存载入数据或描述信息。这部分数据可能包含了指令、常量或其他编译后的信息。 5. **校验和 (Checksum):** 2个字符,用于校验记录的完整性。通过计算计数值、地址和数据字段的字符对和,得到一个16进制的校验和,通常用0xFF减去这个值的低两位来得到。 S0 Record 是特殊类型,地址字段被置零,用于存储名字(Name,20个字符)或其他非地址相关的数据。理解并处理S19文件格式对于使用Freescale单片机的开发人员至关重要,因为它涉及到程序的加载和验证过程。正确解读和操作S19文件能确保代码的正确移植和硬件的高效运行。由于S-record格式相对较少见,这份文档的价值在于提供了一份实用的指南,帮助开发者深入理解S19文件的工作原理和使用方法。