keil如何生成bin文件_keil4生成bin文件

keil如何生成bin文件_keil4生成bin文件如何利用KEIL生成bin文件并且用于固件更新?生成bin文件KEIL在编译完成后在Object目录下生成axf文件,我们可以使用fromelf工具将axf文件转化为bin文件。在User选项卡中可以看到如果勾选了Run#1选项,那么在编译完成之后(AfterBuild/Rebuild),就会执行该选项下的命令。接下来详细的探讨利用fromelf.exe转换工具是如何生成bin文件的。首先我们了解fromelf.exe转换工具的语法其格式如下:fromelf[…


Jetbrains全系列IDE稳定放心使用

如何利用KEIL生成bin文件并且用于固件更新?

  • 生成bin文件

KEIL在编译完成后在Object目录下生成axf文件,我们可以使用fromelf工具将axf文件转化为bin文件。

keil如何生成bin文件_keil4生成bin文件

在User选项卡中可以看到如果勾选了Run#1选项,那么在编译完成之后(After Build/Rebuild),就会执行该选项下的命令。接下来详细的探讨利用 fromelf.exe 转换工具是如何生成bin文件的。

在如何实现生成bin文件之前,首先应该先了解fromelf.exe 转换工具的语法,其格式如下:fromelf  [options] file,其中options包括的选项及详细描述见下表:

keil如何生成bin文件_keil4生成bin文件

在了解语法的基础上,KEIL生成bin文件要根据输入命令的相对\绝对路径来分,有两种方式:

绝对路径方式

绝对路径方式,如果更换电脑等,需要手动修改MDK工具链(formelf.exe)所在路径与项目文件名(例如test_app)

“D:\Program Files\MDK516\ARM\ARMCC\bin\fromelf.exe” –bin -o ./obj/test_app.bin ./obj/test_app.axf”

相对路径方式

使用相对路径生成,则不需要任何修改

$K\ARM\ARMCC\bin\fromelf.exe –bin –output=@L.bin !L 


编译后,Build Out框可以看到: 
After Build – User command #1: D:\Program Files\MDK516\ARM\ARMCC\bin\fromelf.exe –bin –output=test1.bin .\obj\test1.axf

上述操作后,在xxx.uvprojx当前目录下,可看到一个test1.bin

如果希望生成.bin文件输出在当前工程下的指定目录,比如Bin文件夹,可如下操作:

$K\ARM\ARMCC\bin\fromelf.exe –bin –output=Bin\@L.bin !L 


编译后,Build Out框可以看到: 
After Build – User command #1: D:\Program Files\MDK516\ARM\ARMCC\bin\fromelf.exe –bin –output=Bin\test1.bin .\obj\test1.axf

上述操作后,在xxx.uvprojx当前目录下,可看到一个新生成的Bin文件夹,里面是test1.bin。在命令中使用的符号代号如下:

符号代号(Key Code)  
$  扩展为 指定文件的路径名
@ 

表示 Output -> Name of Exectable:定义的工程名,比如test1

keil如何生成bin文件_keil4生成bin文件

build工程后,最终生成的bin文件名称将是test1.bin

!  当前目录下的扩展路径
!L 编译(Build)后,就是 .\obj\xx.axf文件
文件代号(File Code)  
K keil develop chaintool 工具链(fromelf.exe)
L

Linker output file
L.bin 编译后,生成的就是最终的xx.bin文件

更多的符号代号可参考原文链接(Keil官方):Key Sequence for Tool Parameters

http://www.keil.com/support/man/docs/uv4/uv4_ut_keysequence.htm

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/179857.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • mysql设密码_MySQL登录

    mysql设密码_MySQL登录MySQL配置密码+忘记root密码的找回操作

    2022年8月11日
  • Vue router2.0

    Vue router2.0对于单页面来说路由是我们常用切换页面的一种方式,使用Vue安装npminstallvue-router–save路由的引入importrouterfrom’./router’/*eslint-disableno-new*/newVue({el:’#app’,store,router,components:{App},template:'<App/>’})路由的配置通过和也可以实现我们像a标签一样

    2022年7月11日
  • datax(5):改造升级-自动识别py环境,执行datax任务

    datax(5):改造升级-自动识别py环境,执行datax任务1思考上篇文章已经研究过datax.py文件,产生2个问题:如果用户不是py2环境(datax默认要求环境)怎么处理;能不能有一个脚本自动识别用户的py环境,从而执行datax任务2效果在py2或py3下执行下面命令>pythondatax.py../job/job.json熟悉的配方,熟悉的味道。什么都没有变,但是背后却做了很多事情;3改造过程3.1编写py3的datax脚本共计3个文件===datax.py文件===#!/usr/bin/envpyt.

    2022年5月17日
  • mysql下载不是运作宝教程_魔力宝贝私服架设教程[通俗易懂]

    mysql下载不是运作宝教程_魔力宝贝私服架设教程[通俗易懂]CC魔力宝贝服务端setup.cf解释#blserv=211.232.109.164//bl服务器地址#blserv=127.0.0.1//bl服务器端口blserv=222.122.31.125//bl服务器地址blservport=1072//bl服务器端口#blservport=9650//bl服务器端口battledebugmsg=0//战斗debug信息ba…

    2022年10月5日
  • STM32CubeMX | STM32 HAL库方式的微秒延时函数

    STM32CubeMX | STM32 HAL库方式的微秒延时函数STM32CUBEMX系列教程之HAL库方式的微秒延时函数标准库一般是使用系统嘀嗒定时器来进行微妙级别的延时,而HAL库官方使用SysTick的地方非常多,改代码容易引起错乱。网上的代码使用定时器进行微秒级别延时(不知道该方式的请自行搜索),总是卡在__HAL_TIM_GET_COUNTER,所以自己实现一个微秒级别延时函数尤为重要。#defineCPU_FREQUENCY_MHZ…

    2022年6月29日
  • VARIANT、COleVariant 和_variant_t

    VARIANT、COleVariant 和_variant_t 在OLE、ActiveX和COM中,VARIANT数据类型提供了一种非常有效的机制,由于它既包含了数据本身,也包含了数据的类型,因而它可以实现各种不同的自动化数据的传输。下面让我们来看看OAIDL.H文件中VARIANT定义的一个简化版:structtagVARIANT{ VARTYPEvt; union{  shortiVal;//VT_I2.  longlVal;//VT

    2022年7月18日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号