STM32在keil中生成bin文件

本文讲述了作者探索如何通过串口将代码发送到单片机的过程,介绍了bin文件的作用,以及在Keil5环境下使用fromelf.exe生成bin文件的具体步骤,旨在帮助读者避免常见错误。
摘要由CSDN通过智能技术生成

 

文章目录


前言

  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,而是要仔细看

总结

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

  • 26
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Proteus是一款虚拟电子电路设计与仿真软件,而STM32F103是一款32位微控制器,而Keil是一款针对ARM架构的集成开发环境。如何在ProteusKeil进行联合调试呢? 首先,要在Proteus加入STM32F103的元件库。通过打开Proteus软件,在元件库搜索并添加STM32F103元件。接下来,点击元件库下方的“编辑器”按钮,进入编辑模式。然后,将STM32F103元件拖动到原理图工作区。 其次,在Keil软件创建一个新的工程,在工程设置选择正确的目标芯片型号,即STM32F103。编写或导入你想要调试的C代码,并进行编译。 接下来,在Proteus的编辑模式,右键点击STM32F103元件,选择“特性”选项。在弹出的特性对话框,找到“仿真路径”选项,并将其设置为Keil软件的安装路径。 然后,将Keil生成的.hex或.bin文件导入到Proteus。在Proteus的编辑模式,右键点击STM32F103元件,选择“加载程序文件”,并选择你编译好的.hex或.bin文件进行加载。 最后,点击Proteus软件的“运行”按钮,进行仿真。Proteus将会启动Keil软件,并在Keil的调试界面显示源代码和调试器状态。你可以使用Keil的调试功能来单步执行代码、查看变量的值等。 通过以上步骤,你可以在Proteus进行STM32F103的联合调试。这样可以方便地在虚拟环境调试和验证你的代码,节省了硬件资源和成本。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值