案例背景:
有如下一段HEX文件,保留地址范围0x9140-0x91BF内的数据,删除地址范围0x9140-0x91BF外的数据。
:2091000058595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F70717273747576775F
:2091200078797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F90919293949596973F
:2091400098999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B71F
:20916000B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7FF
:20918000D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7DF
:2091A000F8F9FAFBFCFDFEFF000102030405060708090A0B0C0D0E0F1011121314151617BF
:2091C00018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233343536379F
:0891E00038393A3B3C3D3E3FAB
:00000001FF
注意:该篇与博文“
【嵌入式烧录/刷写文件】-2.3-删除/修改Intel Hex文件中指定地址范围内的数据https://blog.csdn.net/qfmzhu/article/details/130663297”的第1章节相似。
目录
1 使用Vector HexView工具“保留”HEX文件指定地址范围数据
1.1 “自动”完成保留/删除
1.2 “手动”完成保留/删除
1.3 Command line命令行说明
2 案例应用
结尾
优质博文推荐阅读(单击下方链接,即可跳转):
点击返回「《Autosar从入门到精通-实战篇》总目录」
点击返回「《Autosar_BSW高阶配置》总目录」
点击返回《嵌入式硬件/软件开发刷写/烧录文件》专栏
1 使用Vector HexView工具“保留”HEX文件指定地址范围数据
1.1 “自动”完成保留/删除
基于批处理Bat(如下图中的Address_range_reduction.bat)调用HexView工具提供的Command line,通过该脚本来实现HEX文件(Application.hex)的保留指定地址范围内的数据,删除指定地址范围外的数据。将该脚本集成开发环境IDE(CodeWarrior,S32K DS,Davinci,EB Tresos,ETAS…)中,即可自动实现。见图1-1。
图1-1
Application.hex摘录:
:2091000058595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F70717273747576775F
:2091200078797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F90919293949596973F
:2091400098999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B71F
:20916000B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7FF
:20918000D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7DF
:2091A000F8F9FAFBFCFDFEFF000102030405060708090A0B0C0D0E0F1011121314151617BF
:2091C00018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233343536379F
:0891E00038393A3B3C3D3E3FAB
:00000001FF
Address_range_reduction.bat摘录:
@echo off
Rem Path to the executable exe of the Vector HexView tool on your PC
set "HexViewPath=D:\Reduction_Hex\HexView\hexview.exe"
Rem Filled input file Input_Hex_File
set "Input_Hex_File=D:\Reduction_Hex\Application.hex"
Rem The output file Output_Hex_File after filling
set "Output_Hex_File=D:\Reduction_Hex\Reduction_Application.hex"
Rem Call the command line provided by the HexView tool to retain the data of the specified address segment in the Input_Hex_File file.
%HexViewPath% %Input_Hex_File% /S /AR:0x9140-0x91BF /XI:32 -o %Output_Hex_File%
运行该批处理Address_range_reduction.bat,即可得到保留指定地址范围(0x9140-0x91BF)数据后的Reduction_Application.hex文件。
1.2 “手动”完成保留/删除
该过程,Vector Hexview不支持手动操作。
1.3 Command line命令行说明
/AR:’range’1 加载一个有限的数据范围。
range是一个地址范围,可以用两种方式指定:用开始地址和长度,用逗号隔开,或者用开始地址和结束地址,用减号隔开。
2 案例应用
应用1:合并两个HEX文件前,处理对应的HEX文件:保留对应文件地址段内的数据,删除对应文件地址段外的数据。处理完文件后,再进行合并;
应用2:提取HEX文件中指定地址段信息
命令行摘自“ReferenceManual_HexView.pdf”文件。
结尾
获取更多“汽车电子资讯”和“工具链使用”,
请关注CSDN博客“汽车电子助手”,做您的好助手。