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

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

  1. 如何生成.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文件
    在这里插入图片描述

  2. 可能遇到的问题

    1. 编译报警告, 如图, 无法打开文件 “Locker.axf” ,没有此文件或者目录在这里插入图片描述
      可能原因: 工程编译后生成的 .axf文件名和用于生成bin文件的文件名不一致, 解决方法 Options for Terget -> Output -> Nmae of Rxecutable 中的工程名填写与生成bin文件的所依赖的文件名称一致.
    2. 编译生成的是一个名称为 xx.bin 的文件夹而不是我们想要的bin文件, 如下图
      在这里插入图片描述
      这种情况一般是我们的程序里使用了 “attribute” 等命令来指定某些变量到指定的ROM地址中, 而这个地址又刚好不是我们的工程程序所在的ROM地址区域, 例如, 现在我指定一个变量到0x8003000;这个地址, 而我们程序的开始的地址是0x8006000, 此时编译器的编译时会将程序分段, 也就会生成上诉的多个文件, 解决方法是将需要设置在ROM中的变量设置在本工程程序的ROM内, 即起始地址之后, 结束地址之前.
  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值