我正在尝试为我的引导加载程序生成十六进制文件。我的引导加载程序需要一个固定长度的十六进制文件。我试过 arm-none-eabi-objcopy -O srec --srec-len 0x10 ${ProjName}.elf ${ProjName}.srec;arm-none-eabi-objcopy -I srec -O ihex ${ProjName}.srec用于生成固定长度 hex 文件的 ${ProjName}.hex 命令不起作用。
:10FB70002B6803B1236038BDA40F0124F8B500BF82
:10FB8000F8BC08BC9E467047F8B500BFF8BC08BC7E
:04FB90009E467047D6
:10FB9800626C655F68616E646C65725F7461736BDB
:10FBA80000000000256C6C75000000002573000043
:10FFC8006F00000025660000437573746F6D6572DD
:10FFD8005F4E616D650000004F70656E5F536C6F1A
:10FFE80074000000436C6F73655F536C6F7400009E
:08FFF8004F726465725F446101
:02000004900367
:100000007465000041646472657373004C617469C7
:1000100074756465000000004C6F6E6769747564E8
那么生成固定长度的十六进制文件的任何其他命令或如何解决这个问题?
2022-12-26 15:39:43
你不能让你的装载机更健壮吗?
我没有使用具有这种特异性的 GNU 工具,我有其他工具可以读写 .HEX、.DFU 和 .ELF,这些都是我多年来构建的。
如果加载器不能这样做,.HEX 可能需要合理化。GNU 工具生成的文件不在 8 字节边界上存在问题,这对于部件具有 64 位闪存行的某些 ST 工具来说是有问题的。那是前一段时间发布到论坛上的,我记得是 HEX2DFU,尽管我认为潜在的问题在那时和现在之间的某个时候得到了解决。
像 SRECORD 这样的工具可能会为您提供更多选择。我对很多这些工具的问题是,它们试图用一百万个命令行选项解决一百万个问题,所以除非您编写应用程序,否则不可能选择正确的咒语。
你不能让你的装载机更健壮吗?
我没有使用具有这种特异性的 GNU 工具,我有其他工具可以读写 .HEX、.DFU 和 .ELF,这些都是我多年来构建的。
如果加载器不能这样做,.HEX 可能需要合理化。GNU 工具生成的文件不在 8 字节边界上存在问题,这对于部件具有 64 位闪存行的某些 ST 工具来说是有问题的。那是前一段时间发布到论坛上的,我记得是 HEX2DFU,尽管我认为潜在的问题在那时和现在之间的某个时候得到了解决。
像 SRECORD 这样的工具可能会为您提供更多选择。我对很多这些工具的问题是,它们试图用一百万个命令行选项解决一百万个问题,所以除非您编写应用程序,否则不可能选择正确的咒语。
举报