objcopy --gap-fill 仅用于特殊部分
Posted
技术标签:
【中文标题】objcopy --gap-fill 仅用于特殊部分【英文标题】:Use objcopy --gap-fill only for special section 【发布时间】:2012-11-23 14:02:58 【问题描述】:是否可以仅将 objcopy-parameter --gap-fill 用于某些特定部分?我不想用例如填充所有内容。 0xAA 因为我想在现有的 EEPROM 中保留一些旧部分。当它们被例如覆盖时很糟糕0xAA。但在其他一些部分,我完全想要这种行为。
感谢您的帮助。
【问题讨论】:
【参考方案1】:您可以使用以下命令指定填充的结束地址:--pad-to
例如: avr-objcopy.exe -I ihex -O binary --gap-fill 0xFF --pad-to 0x1FFE fkmegax8.hex fkmegax8.bin
objcopy 规范: --gap-fill val 用 val 填充部分之间的间隙。此操作适用于段的加载地址 (LMA)。这是通过增加具有较低地址的部分的大小并填充使用 val 创建的额外空间来完成的。 --pad-to 地址 将输出文件填充到加载地址地址。这是通过增加最后一部分的大小来完成的。多余的空间用 `--gap-fill' 指定的值填充(默认为零)。
我将最终的 hex 文件与 srec_cat.exe 合并在一起。
因此,如果您可以将文件逐节放在一起,则可以在每个新间隙之后放入填充字节。
【讨论】:
以上是关于objcopy --gap-fill 仅用于特殊部分的主要内容,如果未能解决你的问题,请参考以下文章
使用 objcopy 将文本文件添加到二进制文件,但 objcopy 抱怨架构