7.9.8.46.GEL_MemorySave()

将存储器块保存到文件。

句法

GEL_MemorySave(startAddress, page, length, “fileName[,io_Format][,append][,bitsize][,swap])

参数

startAddress 是块中的第一个地址。

page 确定待填充的存储器类型:0(程序存储器)、1(数据存储器)或 2(I/O 空间)

对于没有多种类型存储器的处理器,请为此参数使用 0。对于模拟目标,不支持“I/O Space”参数。GEL 不会为无效参数(例如,无效的页面值)提供警告消息。

length 定义待填充的字数。

fileName 是用于存储目标数据的文件的名称。fileName 必须括在引号内。

io_format 是一个整数,表示将存储字写入指定输出文件所用的格式。默认输出为 1(十六进制)。它接受以下参数:

1

2

3

4

5

6

7

8

*.dat

*.dat

*.dat

*.dat

*.out

*

*

*.bin

十六进制

整数

浮点

COFF

可寻址单元

使用标头

原始二进制

append 表示待保存的存储器是应该覆盖指定文件的内容 (0),还是应该附加到文件的末尾(任何非零值)。

0

任何非零值

覆盖指定文件的内容

附加到文件的末尾


附加既不会修改现有的文件头信息,也不会创建文件头信息。COFF 格式的文件支持附加功能。

如果文件不是原始二进制文件,可以选择 bitsize。如果我们保存到原始二进制文件 (.bin),它表示在保存到文件时解释数据的数据类型的位大小。由于数据以一种小端字节序格式保存在文件中,因此在保存数据时进行自动字节序转换很重要。

8 – 一次保存一个字节的数据。无需交换

16 – 一次保存两个字节的数据。从大端字节序目标读取时交换字节以转换为小端字节序

32 – 一次读取 4 个字节的数据。从大端字节序目标读取时交换字节以转换为小端字节序

64 – 一次读取 8 个字节的数据。从大端字节序目标读取时交换字节以转换为小端字节序

swap – 在应用自动字节序转换之前交换数据。这有效地禁用了自动字节序转换。将 swap 设置为 true 可将数据另存为主机端的大端字节序

描述

此函数可用于将目标存储器块保存到指定文件。数据块由 startAddress、页面和长度指定。如果文件名包含 *.out 文件扩展名,则使用 COFF 格式;否则,当数据保存在原始二进制文件 (.bin) 中时,它将以小端字节序格式写入,与目标字节序无关。bitsize 和 swap 选项可用于进一步调整二进制数据的保存方式,并改为以大端字节序格式保存。有关其他格式的支持情况,请参阅 GEL_MemorySave2

同步

从 GEL 同步:是

完全同步:是

示例

GEL_MemorySave(0x1000, 1, 0x100, “c:\mydir\myfile.dat”);

此示例将存储器块附加到 saved_memory.txt,并将存储器格式化为整数:

GEL_MemorySave(0x100, 0, 0x10, “saved_memory.txt”,2, 1);

相关主题

GEL_MemoryLoad

GEL_MemoryFill

GEL_MemoryLoad2

GEL_MemorySave2