本文主要是介绍ZynqMP Vitis2021.1 生成hex或者bin文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
比如Cortex™-R5 处理器的Vitis工程生成hex和bin文件。
如下图片中的Command中输入下面内容:
armr5-none-eabi-objcopy -O binary ${ProjName}.elf ${ProjName}.bin;armr5-none-eabi-objcopy -O ihex ${ProjName}.elf ${ProjName}.hex
但是由于vitis的R5核的链接文件中设置,。vectors段与其他的段不是连续的。
若直接使用上面命令会发生生成的bin文件非常大,原因如下:
vitis2021.1 armr5-none-eabi-objcopy -O binary elf文件转bin文件变大_sudaroot的博客-CSDN博客
此时我们要把这两个段分别编译出两个bin文件。
armr5-none-eabi-objcopy -O binary -j .vectors ${ProjName}.elf ${ProjName}_vectors.bin;armr5-none-eabi-objcopy -O binary -R .vectors ${ProjName}.elf ${ProjName}_application.bin
参数-j:只把.vectors段的代码生成bin文件。
参数-R:把.vectors段的代码删除,其他段生成bin文件。
更多信息请看armr5-none-eabi-objcopy --help
Cortex™-A53 处理器的Vitis工程生成hex和bin文件,则改成下面
aarch64-none-elf-objcopy -O binary ${ProjName}.elf ${ProjName}.bin;aarch64-none-elf-objcopy -O ihex ${ProjName}.elf ${ProjName}.hex
全篇完。
本人是一个嵌入式未入门小白,博客仅仅代表我个人主观见解,记录成长笔记。
若有与 大神大大 见解有歧义,我绝对坚信 大神大大 见解是对的,我的是错的。
感谢~!
这篇关于ZynqMP Vitis2021.1 生成hex或者bin文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!