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);
相关主题