【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

这篇具有很好参考价值的文章主要介绍了【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

案例背景(共6页精讲):

有如下一段S19文件,如何“自动”地完成地址范围0x9110-0x9113数据的删除修改

S0110000486578766965772056312E30352EA6
S123910058595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F70717273747576775B
S123912078797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F90919293949596973B
S123914098999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B71B
S1239160B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7FB
S1239180D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7DB
S12391A0F8F9FAFBFCFDFEFF000102030405060708090A0B0C0D0E0F1011121314151617BB
S12391C018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233343536379B
S10B91E038393A3B3C3D3E3FA7
S9030000FC

目录

1 使用Vector HexView工具“删除”S19文件指定地址范围数据

1.1 “自动”完成删除

1.2 “手动”完成删除

2 使用Vector HexView工具“修改” S19文件指定地址范围数据

2.1 “自动”完成修改

2.2 “手动”完成修改

3 Command line命令行说明

结尾


优质博文推荐阅读(单击下方链接,即可跳转):

点击返回「《Autosar从入门到精通-实战篇》总目录」

点击返回「《Autosar_BSW高阶配置》总目录」

点击返回《嵌入式硬件/软件开发刷写/烧录文件》专栏

1 使用Vector HexView工具“删除”S19文件指定地址范围数据

1.1 “自动”完成删除

基于批处理Bat(如下图中的Modification_S19_File.bat)调用HexView工具提供的Command line,通过该脚本来实现S19文件(Application.s19)的指定地址范围数据的删除。将该脚本集成开发环境IDE(CodeWarrior,S32K DS,Davinci,EB Tresos,ETAS…)中,即可自动实现。见图1-1。

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

图1-1

Modification_S19_File.bat摘录:

@echo off

Rem Path to the executable exe of the Vector HexView tool on your PC
set "HexViewPath=D:\Modification_S19\HexView\hexview.exe"

Rem Modified source file Input_S19_File
set "Input_S19_File=D:\Modification_S19\Application.s19"

Rem  Delete Output_S19_File files in a specific address range
set "Output_S19_1_File=D:\Modification_S19\Application_1_Copy.s19"

Rem  Modify Output_S19_File files in a specific address range
set "Output_S19_2_File=D:\Modification_S19\Application_2_Copy.s19"

Rem Call the command line provided by the HexView tool to get the new Output_S19_1_File file.
%HexViewPath% %Input_S19_File% /CR:0x9110-0x9113 /XS:32 /s -o %Output_S19_1_File%

运行该批处理Modification_S19_File.bat.bat,即可得到删除指定地址范围数据后的Application_1_Copy文件。

S113910058595A5B5C5D5E5F606162636465666763
S12391146C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8BC7
S12391348C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABA7
S1239154ACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACB87
S1239174CCCDCECFD0D1D2D3D4D5D6D7D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEB67
S1239194ECEDEEEFF0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF000102030405060708090A0B47
S12391B40C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B27
S11791D42C2D2E2F303132333435363738393A3B3C3D3E3F55
S9030000FC

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

1.2 “手动”完成删除

打开Vector Hexview工具,在菜单栏中依次选择Edit -- > Delete;

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

在弹出的Delete data block or range对话框中,填入删除的地址范围,并单击OK;

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

删除后的效果,见下图。

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

2 使用Vector HexView工具“修改” S19文件指定地址范围数据

2.1 “自动”完成修改

基于批处理Bat(如下图中的Modification_S19_File.bat)调用HexView工具提供的Command line,通过该脚本来实现S19文件(Application.s19)的指定地址范围数据的修改。将该脚本集成开发环境IDE(CodeWarrior,S32K DS,Davinci,EB Tresos,ETAS…)中,即可自动实现。见图2-1。

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

图2-1

Modification_S19_File.bat摘录:

@echo off

Rem Path to the executable exe of the Vector HexView tool on your PC
set "HexViewPath=D:\Modification_S19\HexView\hexview.exe"

Rem Modified source file Input_S19_File
set "Input_S19_File=D:\Modification_S19\Application.s19"

Rem  Delete Output_S19_File files in a specific address range
set "Output_S19_1_File=D:\Modification_S19\Application_1_Copy.s19"

Rem  Modify Output_S19_File files in a specific address range
set "Output_S19_2_File=D:\Modification_S19\Application_2_Copy.s19"

Rem Call the command line provided by the HexView tool to get the new Output_S19_1_File file.
%HexViewPath% %Input_S19_File% /CR:0x9110-0x9113 /XS:32 /s -o %Output_S19_1_File%

Rem Call the command line provided by the HexView tool to get the new Output_S19_2_File file.
%HexViewPath% %Output_S19_1_File% /FR:0x9110-0x9113 /FP:0xAA,0xBB,0xCC,0xDD /XS:32 /s -o %Output_S19_2_File%

运行该批处理Modification_S19_File.bat.bat,即可得到修改指定地址范围数据后的Application_2_Copy文件。

S123910058595A5B5C5D5E5F6061626364656667AABBCCDD6C6D6E6F7071727374757677F3
S123912078797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F90919293949596973B
S123914098999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B71B
S1239160B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7FB
S1239180D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7DB
S12391A0F8F9FAFBFCFDFEFF000102030405060708090A0B0C0D0E0F1011121314151617BB
S12391C018191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233343536379B
S10B91E038393A3B3C3D3E3FA7
S9030001FB

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

2.2 “手动”完成修改

打开Vector Hexview工具,找到需要修改的地址所在行,并鼠标双击;

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

在弹出的Edit record data对话框中,修改指定地址范围内的数据,并单击OK;

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

修改后的效果,见下图。

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

3 Command line命令行说明

/CR:’range1’:’range2’:… 从加载的文件中,删除数据范围

参数选项/CR是用来从加载的数据文件中删除一个范围。它删除指定范围内的任何数据。可以指定一个以上的范围。每个范围必须用冒号':'分开。

例如:

/CR:0x1000,0x200

如果0x1000-0x11FF范围内的数据段存在,该数据将被从文件中删除。所有连续的操作将对不包括这部分的数据进行操作。所有其他部分保持不变。如果这部分位于一个段或块内,它将被分成两部分。

/CR:0x7000-0x7FFF

如果存在的话,这将删除从0x7000到0x7FFF的数据。

/FR:’range1’:’range2’:… 1         填充区域

该选项用于创建和填充内存区域。如果没有提供/FP参数,HexView将创建随机数据来填充块或区域。否则,将重复使用/FP参数所给的值。填充操作不涉及现有数据。因此,它甚至可以用来填充段之间的数据。范围可以由它的开始和长度指定,用逗号隔开,或者由开始和结束地址指定,用减号隔开(例如:/FR:0x1000,0x200:0x2000-0x2FFF)。

/FP:11223344   以十六进制为单位的填充模式。由/FR参数使用。

这个选项可以用来指定一个被用于填充区域的填充模式。这个选项只在与/FR参数结合时有用。/FP的参数是一个列表(见/FR选项)。该参数将作为十六进制格式的数据流被踩踏。

命令行摘自“ReferenceManual_HexView.pdf”文件。

结尾

获取更多“汽车电子资讯”和“工具链使用”,

请关注CSDN博客“汽车电子助手”,做您的好助手。文章来源地址https://www.toymoban.com/news/detail-443390.html

到了这里,关于【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 修改嵌入式 ARM Linux 内核映像中的文件系统

    zImage 是编译内核后在 arch/arm/boot 目录下生成的一个已经压缩过的内核映像。通常我们不会使用编译生成的原始内核映像 vmlinux ,因其体积很大。因此, zImage 是我们最常见的内核二进制,可以直接嵌入到固件,也可以直接使用 qemu 进行调试。当然,在 32 位嵌入式领域还能见到

    2024年02月10日
    浏览(80)
  • 【嵌入式】ELF格式文件分析工具汇总

    🧑 作者简介 :阿里巴巴嵌入式技术专家,深耕嵌入式+人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍 :分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向的学习指导、简历面试辅导、技术架构设计优化、开发外包等

    2024年03月10日
    浏览(183)
  • 基于RK3588的嵌入式linux系统开发(五)——uboot优化修改(按任意按键停止autoboot)

            我们通常情况下,芯片进入uboot后,会根据设置的bootdelay时间进行倒数计数。这时候在终端按任意键,即可退出autoboot,进入uboot的命令行模式。         官方提供的uboot源码中,为了防止调试串口干扰导致不能进入系统,使用“Ctrl+c”的组合键来退出autoboot。本

    2024年02月10日
    浏览(58)
  • Xilinx Bit文件格式详解及嵌入式应用

    Bit文件是Xilinx FPGA(可编程逻辑门阵列)设备上的配置文件,用于定义硬件逻辑和电路的功能。本文将详细介绍Xilinx Bit文件的格式以及在嵌入式系统中的应用。 一、Bit文件格式 Bit文件是一种二进制文件,包含了FPGA设备的配置信息。它由多个不同类型的数据块组成,每个数据

    2024年02月02日
    浏览(51)
  • 嵌入式开发——文件系统部署rz、sz命令

    下载网址:https://ohse.de/uwe/software/lrzsz.html (1)报错显示在编译sz、rz命令时还依赖libnsl.so库,当前编译时找不到libnsl库; (2)libnsl是Unix/Linux系统下的一个开源C语言库,全称为“network services library”,提供了对许多网络服务程序的网络接口调用。其主要功能包括获取主机名、网络

    2024年02月07日
    浏览(64)
  • 00.嵌入式笔记——初识make工具和Makefile文件

    make是解决大工程编译的工具,描述哪些文件需要编译、哪些需要重新编译的文件就叫做 Makefile,Makefile 就跟脚本文件一样,Makefile 里面还可以执行系统命令。我们使用的时候只需要一个make命令即可完成整个工程的自动编译,极大的提高了软件开发的效率。 Makefile 的引入 如果

    2024年02月08日
    浏览(50)
  • 基于ubuntu的STM32嵌入式软件开发(四)——应用软件工程的修改、Makefile及编译脚本的编写

            本文主要介绍基于标准库函数移植的STM32的应用软件工程的修改,主要涉及到文件内容修改、Makefile文件编写、编译脚本编写等内容,其中编译脚本是基于arm-none-eabi-gcc的交叉编译器撰写的。程序亲测可以正常编译,生成.bin和.hex的可烧录镜像文件。 1.首先修改 pr

    2023年04月15日
    浏览(47)
  • 【ARM 嵌入式 编译系列 10.4 -- 生成二进制文件】

    在嵌入的工作中,经常会使用到二进制文件,那么我们如何自己生成一个二进制文件呢?接下来介绍如何将一个只包含将32位数据的文件转化为二进制文件,原文件如下(数据一共 64bytes): 我们使用 gcc 对齐先进行编译然后再进行反汇编: 具体命令如下: 通过上面命令会生成

    2024年02月02日
    浏览(54)
  • 嵌入式 Linux 入门(一、Linux 基本介绍及文件结构)

    学习嵌入式 Linux,首先我们得知道什么是Linux,什么是嵌入式Linux,有一些基本概念就先得先了解。 基本的说明介绍完,我们第一篇先来了解一下 Linux 的文件结构。 本文就简单的说明一些必要的基本概念,以及介绍一下 Linux 的文件结构。但是呢,既然是自己写博文,除非专

    2024年04月13日
    浏览(45)
  • 嵌入式Linux底层系统开发 +系统移植+内核文件系统(基础)

    搭建交叉编译开发环境 bootloader的选择和移植 kernel的配置、编译、移植和调试 根文件系统的制作 前两个要点通常芯片厂家提供。后边两个要点是公司的工作重点。 学习方法:先整体后局部,层层推进 如何编译—如何添加命令和功能—如何定义自己的开发板。 移植的基本步

    2024年02月03日
    浏览(71)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包