1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Keil5 生成bin文件失败解决方法

Keil5 生成bin文件失败解决方法

时间:2020-08-20 07:53:32

相关推荐

Keil5 生成bin文件失败解决方法

Keil5 生成bin文件失败解决方法

如何生成.bin文件

打开工程Options for Target -> User 勾选Run #1,并添加如上图代码 “$KARM\ARMCC\bin\fromelf.exe --bin -o ./bin/Locker.bin ./OUTPUT/Locker.axf” (./bin/Locker.bin是我要生成的bin文件名和所在目录, 可自定义.

$KARM\ARMCC\bin\fromelf.exe : 生成bin文件的工具, 一般在Kei5安装目录下可找到

–bin -o : 生成bin文件的命令

./bin/Locker.bin : 需要生成的bin文件名及路径

./OUTPUT/Locker.axf : 生成bin所需要的的源文件, 一般编译完成就会自动生成, 找到此文件填写进去即可.

配置完成后,直接编译工程即可, 编译完成后,可在相应目录下找到生成的bin文件

可能遇到的问题

编译报警告, 如图, 无法打开文件 “Locker.axf” ,没有此文件或者目录

可能原因: 工程编译后生成的 .axf文件名和用于生成bin文件的文件名不一致, 解决方法 Options for Terget -> Output -> Nmae of Rxecutable 中的工程名填写与生成bin文件的所依赖的文件名称一致.编译生成的是一个名称为 xx.bin 的文件夹而不是我们想要的bin文件, 如下图

这种情况一般是我们的程序里使用了 “attribute” 等命令来指定某些变量到指定的ROM地址中, 而这个地址又刚好不是我们的工程程序所在的ROM地址区域, 例如, 现在我指定一个变量到0x8003000;这个地址, 而我们程序的开始的地址是0x8006000, 此时编译器的编译时会将程序分段, 也就会生成上诉的多个文件, 解决方法是将需要设置在ROM中的变量设置在本工程程序的ROM内, 即起始地址之后, 结束地址之前.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。