在Keil中生成STM32的bin文件教程

 

文章目录

  • 前言 了解到bin文件才是代码数据,需要bin文件
  • 一、为什么需要bin文件?
  • 二、怎么得到bin文件
  • 1.方法
  • 总结

  • 前言

    1. 我之前有一个小想法,就是flymcu是通过串口把程序烧录进去的,我能不能也通过串口把代码程序发送给单片机,后来了解到这其实就是IAP编程,不知道IAP的小伙伴可以自行上网解决,大概意思是在程序中实现代码的更新吧
    2. 因为我看flymcu是通过选中xx.hex文件实现程序的更新,我想当然的以为我只需要把hex文件发送进去,然后保存到flash中,然后把程序跳转就行,这些都是后话了,我这个博客只是想记录一下怎么得到bin文件。

    一、bin文件是什么?

    bin文件就是全部的代码程序,去除掉了hex文件的地址信息等等。

    二、使用步骤

    1.打开魔术棒

    打开Options for Target ‘target 1’对话框,选择User标签页

    
    

    2.找到fromelf.exe的路径(keil5在ARMCC里)

    点击之后的效果图:

    3.然后是重点了(这里要认真了)

    接下来要做的要视情况而定:选完fromelf.exe后在输入框中加个空格然后加一串字:

    –bin  –output ..\OBJ\LED.bin ..\OBJ\LED.axf

    --bin 和 --output这两个之间是空两个空格

    输入之后在output后空一个空格。

    然后输入你想把bin文件放到哪个文件夹下面。我这里是keil工程在user文件夹下

    而我的OBJ文件夹和user是同级的,所以我先使用..\

    这个是说退回到上一级文件夹(这里是相对路径,我就不细说了,想必已经知道了)

    所以我想把bin文件放到obj文件夹下,我就选择了..\OBJ\

    然后再写一个你想写的名字,我这里取的是LED.bin

    合起来就是说..\OBJ\LED.bin

    同理,我得先给一个axf文件,我的axf文件也是在obj文件夹下,最后也就是输入..\OBJ\LED.axf

    注意,..\OBJ\LED.bin 和 ..\OBJ\LED.axf 这两个中间需要空一格

    最后编译就行,补充一句,编译完你看看还有没有报error,一定要仔细看,不要看哪个0error ,0warining,而是要仔细看

    总结

    我这里在网上看了两三个,不是这里错了一点就是那里错了点,我就把我踩过的坑写出来,把解决方案写出来。

    物联沃分享整理
    物联沃-IOTWORD物联网 » 在Keil中生成STM32的bin文件教程

    发表评论