精华内容
下载资源
问答
  • Keil命令行编译工程

    千次阅读 2018-03-01 21:42:03
    背景 控制器的板子,有bootloader,有应用层,还有需要适配不同厂家的配置。 因此整个solution可能会由好几个project构成。参考VisualStudio的solution和project的关系。...keil命令行接口 归纳一下,一个...

    背景

    控制器的板子,有bootloader,有应用层,还有需要适配不同厂家的配置。
    因此整个solution可能会由好几个project构成。参考VisualStudio的solution和project的关系。

    此外,还有许多编译前执行的内容,以及编译后执行的脚本。因此如果能通过命令行来调keil就很有价值。

    方法

    keil的官网上对此有介绍
    keil命令行接口
    归纳一下,一个可以用于理解的编译例子是

    D:\keil\UV4\UV4.exe -b -j0 Project.uvprojx -o .\build_log.txt

    但是这个命令是敲进去就执行完的,想要一条一条执行,在dos下可以这么写:

    START /WAIT D:\keil\UV4\UV4.exe -b -j0 Project.uvprojx -o .\build_log.txt

    uvision returns immediately when called in batch mode

    展望:自动化持续集成平台 CI

    1. 放一个联网的PC机预装keil,旁边放一个控制器。
    2. git提交代码后,触发PC机pull代码,并编译。
    3. 编译完成后下载到控制器,并开始逐个运行自动化测试用例。
    4. PC机读取测试结果,输出测试报告,发送给开发者的邮箱。
    展开全文
  • 目的不管是Keil还是IAR对代码补全,高亮等编辑功能支持的不是很好,虽然现在的Keil 5.25对界面的支持好了很多,但是很多人还是青睐于第三方的编辑器,命令行编译方式可以让我们在使用第三方编辑器编辑的时候进行...

    目的

    不管是Keil还是IAR对代码补全,高亮等编辑功能支持的不是很好,虽然现在的Keil 5.25对界面的支持好了很多,但是很多人还是青睐于第三方的编辑器,命令行的编译方式可以让我们在使用第三方编辑器编辑的时候进行代码编译和下载,通常我们比较喜欢的编辑器有下面一些,不是很全。

    常用的第三方编辑器介绍

    Visual Studio 2010 - 2017

    Windows 下面的VS工具配上番茄助手写代码爽的不得了,并且现在有一些现成难过的工具可以直接通过Keil 或者IAR的工具生成Visual Studio的工程,可以直接打开,笔者对这两种工具都有收藏,如果有需要的可以直接联系我,都是别人的东西,只要你开口肯定给你,但是Visual Studio最新的2017安装完成需要35G的空间,如果不是有其他的用处,不免有点太浪费了。

    Atom

    Atom 编辑器在Windows下面可以和Vi编辑器相媲美的编辑器,拥有丰富的插件,良好的代码高亮支持,遗憾的是不能进行定义跳转。

    Source insight

    Source insight可以直接条装,现在最新的4.0版本也有很多个主题,同样的对代码自动补全支持的也很好,并且代码高亮也可以自定义,但是配置一个工程有点搞不懂,移动位置之后好像文件路径变了,就需要重新配置。

    Sublime text

    和Atom一样,拥有丰富的插件,可是这个软件是收费的。没有过多的体验,就不多说了。

    Visual Studio Code

    同样的也是微软的东西,但是和Visual Studio相比就轻量了很多,使用体验也还不错,字体,代码高亮,补全都可以通过插件来实现,也是笔者比较喜欢的一个工具了。、

    Keil 命令行编译下载

    编译:

    UV4 〚command〛 〚projectfile〛 〚options〛

    UV4.exe -r Blinky.uvproj -o Build_Output.txt

    UV4.exe : 前面需要补全路径

    -r Blinky.uvproj :Keil 工程名

    -o Build_Output.txt:输出文档

    下载:

    UV4.exe -f Programming.UVPROJ -o Prg_Output.txt\

    注意:keil 编译会自动打开Keil,也有可能打印在控制台,我没研究过。

    IAR 命令行编译下载

    参考资料:IAR帮助文档里面可以看到

    编译:

    IarBuild.exe test.ewp -build Debug -log all

    IarBuild.exe :前面需要补全路径

    test.ewp :工程名,注意是.ewp结尾的。

    -build Debug :表示build

    -log all :打印所有,可以设置 -log info

    下载: 在Setting 文件夹下面有一个.cspy的bat文件,在后面加上参数 "--download_only",前提是在IAR下面都配置好了,并且成功下载过一次的工程。

    --download_only

    使用

    我们可以在工程所在的路径下面编写bat文件,通过直接运行bat就可以编译和下载了,第三方编辑器通常都可以配置编译选项和调试选项,也可以配置在Tool里面进行编译下载,我比较喜欢使用powershell进行编译和下载。

    展开全文
  • 目的不管是Keil还是IAR对代码补全,高亮等编辑功能支持的不是很好,虽然现在的Keil 5.25对界面的支持好了很多,但是很多人还是青睐于第三方的编辑器,命令行编译方式可以让我们在使用第三方编辑器编辑的时候进行...

    目的

    不管是Keil还是IAR对代码补全,高亮等编辑功能支持的不是很好,虽然现在的Keil 5.25对界面的支持好了很多,但是很多人还是青睐于第三方的编辑器,命令行的编译方式可以让我们在使用第三方编辑器编辑的时候进行代码编译和下载,通常我们比较喜欢的编辑器有下面一些,不是很全。

    _____________________________________

    常用的第三方编辑器介绍

    Visual Studio 2010 - 2017

    Windows 下面的VS工具配上番茄助手写代码爽的不得了,并且现在有一些现成难过的工具可以直接通过Keil 或者IAR的工具生成Visual Studio的工程,可以直接打开,笔者对这两种工具都有收藏,如果有需要的可以直接联系我,都是别人的东西,只要你开口肯定给你,但是Visual Studio最新的2017安装完成需要35G的空间,如果不是有其他的用处,不免有点太浪费了。

    Atom

    Atom 编辑器在Windows下面可以和Vi编辑器相媲美的编辑器,拥有丰富的插件,良好的代码高亮支持,遗憾的是不能进行定义跳转。

    Source insight

    Source insight可以直接条装,现在最新的4.0版本也有很多个主题,同样的对代码自动补全支持的也很好,并且代码高亮也可以自定义,但是配置一个工程有点搞不懂,移动位置之后好像文件路径变了,就需要重新配置。

    Sublime text

    和Atom一样,拥有丰富的插件,可是这个软件是收费的。没有过多的体验,就不多说了。

    Visual Studio Code

    同样的也是微软的东西,但是和Visual Studio相比就轻量了很多,使用体验也还不错,字体,代码高亮,补全都可以通过插件来实现,也是笔者比较喜欢的一个工具了。、

    Keil 命令行编译下载

    编译:

    UV4 ?command? ?projectfile? ?options?

    UV4.exe -r Blinky.uvproj -o Build_Output.txt

    UV4.exe : 前面需要补全路径

    -r Blinky.uvproj :Keil 工程名

    -o Build_Output.txt:输出文档

    下载:

    UV4.exe -f Programming.UVPROJ -o Prg_Output.txt

    注意:keil 编译会自动打开Keil,也有可能打印在控制台,我没研究过。

    _________

    IAR 命令行编译下载

    参考资料:IAR帮助文档里面可以看到

    编译:

    IarBuild.exe test.ewp -build Debug -log all

    IarBuild.exe :前面需要补全路径

    test.ewp :工程名,注意是.ewp结尾的。

    -build Debug :表示build

    -log all :打印所有,可以设置 -log info

    下载: 在Setting 文件夹下面有一个.cspy的bat文件,在后面加上参数 "--download_only",前提是在IAR下面都配置好了,并且成功下载过一次的工程。

    --download_only

    使用

    我们可以在工程所在的路径下面编写bat文件,通过直接运行bat就可以编译和下载了,第三方编辑器通常都可以配置编译选项和调试选项,也可以配置在Tool里面进行编译下载,我比较喜欢使用powershell进行编译和下载。

    展开全文
  • 刚开始学STC51单片机的开发,用Keil uVision4进行编辑和编译Keil的IDE是使用工程方式组织,对于小弟初学并不是很方便。每次做个试验都要建立一个工程,而且会出现一堆文件。虽然电脑还可以,感觉启动IED比较慢Keil...

    刚开始学STC51单片机的开发,用Keil uVision4进行编辑和编译。Keil的IDE是使用工程方式组织,对于小弟初学并不是很方便。

    每次做个试验都要建立一个工程,而且会出现一堆文件。

    虽然电脑还可以,感觉启动IED比较慢

    Keil的编辑器对中文的支持并不太好

    由于改动并不一定在已打开IED的情况比较多,每次都必须打开Keil编译,郁闷的很。

    最最最主要的还是想简单方便点

    出于上面的目的看了一下Keil的帮助,^_^ 发现用批处理可以解决我的烦恼。Keil的安装目录有C51和UV4,很明显一个是编译工具目录,另外一个是IED程序目录。外国的产品就是做的好,帮助文档做的非常全而且详细。

    用命令行流程是 编译源文件成OBJ,然后链接OBJ,之后转换成HEX文件。这样就OK了,很简单。

    C51.exe 编译c文件,BL51.EXE链接OBJ, OH51.EXE转换文件成HEX。

    注意:不要忘记吧头文件复制到 \C51\INC 库目录中,以后使用比较方便。

    如:有个test.c的文件

    C51.EXE test.c

    BL51.EXE test.obj TO test

    OH51.EXE test

    这样就OK,能编译出HEX文件。

    不过这样每次写批命令还不是很方便,干脆就写一个简单的批程序 ^_^,挂编辑器上直接编译。

    再吧批命令挂接到代码编辑器上,以后只要打开文件就能直接编译。 如果有问题可以直接看log文件。

    运行一下就自动编译!

    大功告成!VVVV 本人比较懒^^

    批处理文件就直接贴批代码,就不多解释了。

    注意:这个批代码只能编译单个C文件,并没有强化。

    编译批处理

    1 @echo off

    2

    3 rem---------------------------------------4 remmake 5 rem---------------------------------------6

    7

    8 remSET C51INC=C:\Keil\C51\INC\Atmel\;C:\Keil\C51\INC\9 remSET C51LIB=C:\Keil\C51\LIB10 SET BINPath=C:\Keil\C51\BIN\

    11

    12 set Status=0

    13 set SourceFile=%~nx1

    14 set ObjName=%~n1

    15

    16 if %1 == "" goto LabErr

    17 if not "%~x1" == ".c" goto LabErr

    18 if "%SourceFile%" == "" goto LabErr

    19 if "%ObjName%" == "" goto LabErr

    20 goto LabClean

    21

    22 :LabBuild

    23 @echo building %SourceFile% to %ObjName%

    24 "%BINPath%C51.EXE" "%SourceFile%"

    25 "%BINPath%BL51.EXE" "%ObjName%.obj" TO "%ObjName%"

    26 "%BINPath%OH51.EXE" "%ObjName%"

    27 set Status=1

    28

    29 :LabClean

    30 if exist "%ObjName%.lst" del "%ObjName%.lst"

    31 if exist "%ObjName%.m51" del "%ObjName%.m51"

    32 if exist "%ObjName%.obj" del "%ObjName%.obj"

    33 if exist "%ObjName%" del "%ObjName%"

    34 if %Status% == 0 (

    35 if exist "%ObjName%.hex" del "%ObjName%.hex"

    36 goto LabBuild

    37 )

    38 if %Status% == 1 goto LabOK

    39

    40 :LabErr

    41 @echo Error: The source file can not be empty.

    42 goto LabEnd

    43

    44 :LabOK

    45 @echo OK! %ObjName%.hex

    46

    47 :LabEnd

    48

    49 @echo on

    还有种生成批处理命令的方法:

    Keil uVision4带有一个生成bat文件的功能。打开工程选项在Output选项卡中,有个“Create Batch File”能生成编译bat程序。可以参照她所生成的文件自行修改。

    如果你觉得批命令不够强大,可以自己写程序^_^

    特别推荐:    推荐使用AkelPad文本编辑器,有高亮语法,有简单的自动完成功能,速度比打开windows自带的文本编辑速度还快,完全免费开源。

    网站:http://akelpad.sourceforge.net/en/index.php

    展开全文
  • 参考Keil\C51\HLP\C51.pdf以及A51.pdf文档,示例及说明如下:set PATH=%PATH%;G:\develop\keil\C51\BIN;G:\develop\keil\C51\INC;G:\develop\keil\C51\LIBset C51_LIB=G:\develop\keil\C51\LIB\(注:其中的G:\...
  • Keil作为一款经典的嵌入式开发IDE,从51到ARM一直都被众多的开发者使用。今天介绍一下它运行用户程序的功能,也就是在”Target Options”中”User”选项卡之下的内容。在那些需要自动处理源文件或者转换输出文件的...
  • 只使用库文件中的启动文件'startup_stm32f10x_hd.s'编译报错如下。Rebuild target 'Target 1'assembling startup_stm32f10x_hd.s...linking....\Objects\Test.axf: Warning: L6665W: Neither Lib$$Request...
  • Keil调试命令(转载)在Memory窗口上输入address_type:address才能看到正确地址的变量debug~perfermance analyzer加入要察看的模块名称,然后view~perfermance analyzerwindow 可以察看各个模块运行时间①Display ...
  • 在中篇里,已经实现了用批处理命令build.bat实现了命令行编译工程。接下来要做的是将build.bat和Eclipse的build接口对接起来。 Eclipse的build接口可通过工程右击鼠标选择Propertiese进入(快捷键Alt+Enter),首先先...
  • 命令行用法是VersionTool+空格+保存版本的文件路径+空格+版本号前面的字符A+空格+版本号后面的字符B, 工具会自动把字符A和字符B之间的文字转成数字,然后+1再保存,这就是版本自增了,然后只需要在keil里设置版本...
  • 以前曾经使用GNU的 arm-linux-* 工具链在命令行模式下写过ARM的代码,前段时间安装了Keil的mdk-arm 开发工具,心血来潮想试试在命令行下能不能开发ARM,结果成功了。我所测试的代码非常简单,只是一个实验,具有实用...
  • 相信搞过单片机开发的人,不论是长期工作还是才入手学习单片机,一定都使用过keil吧。但是你真的会用么?这篇文章,小编依次来讲讲 什么是keilkeil怎么用,使用keil需要注意...Keil是一款付费使用的产品,但是编译...
  • 最近学习51单片机编程,C语言的,刚入手,好难啊,记录一点刚开始做...用法:新建文本文档,复制代码,保存为*.bat文件,放进*.c的同目录中,双击打开,输入*.c文件的文件名,不需要后缀,回车后自动编译出hex文件。
  • keilarm的命令行编译

    2019-08-01 17:50:52
    armasm.exe --cpu cortex-m3 -o ass.o ass.s armlink --rw_base 0x20000000 --ro_base 0x0 --map -o ass.elf ass.o fromelf.exe -c --output ass.list .\ass.elf
  • 不管是Keil还是IAR对代码补全,高亮等编辑功能支持的不是很好,虽然现在的Keil 5.25对界面的支持好了很多,但是很多人还是青睐于第三方的编辑器,命令行编译方式可以让我们在使用第三方编辑器编辑的时候进行代码...
  • 在前面的文章和视频里,我一直是以STM32F303VCTx为基础给大家介绍的,项目上也一直用着,没出现...1.问题描述使用Keil新建一个工程,选择STM32F303VCTx,看target的内容,这个内容是选好MCU后系统自动填充的,自从...
  • 接触了几个编译器之后发现编译器... 今天简单试探了一下Keil编译器,没有查什么文档,纯粹是按照之前的老路子输入猜测的命令试了一下,还真是存在!  我在一个文件夹放了一个C文件一个头文件,C文件中包含了头文件
  • Keil的安装目录有C51和UV4,很明显一个是编译工具目录,另外一个是IED程序目录。外国的产品就是做的好,帮助文档做的非常全而且详细。用命令行流程是编译源文件成OBJ,然后链接OBJ,之后转换成HEX文件。这样就OK了,...
  • 使用脚本(命令行编译KEIL工程

    万次阅读 2017-10-12 11:02:07
    使用脚本(命令行编译KEIL工程参考KEIL官网 http://www.keil.com/support/man/docs/uv4/uv4_commandline.htmKeil_Build.bat脚本@echo off set UV=D:\Keil_v5\UV4\UV4.exe set UV_PRO_PATH=F:\source\systick\Keil...
  • window命令行copy指令可以复制文件,格式为:copy [options ]源文件 目标文件。 参数 /Y表示重名自动覆盖不询问,注意需要在指令前面加上cmd.exe/C
  • 在中篇里,已经实现了用批处理命令build.bat实现了命令行编译工程。接下来要做的是将build.bat和Eclipse的build接口对接起来。 Eclipse的build接口可通过工程右击鼠标选择Propertiese进入(快捷键Alt+Enter),首先先...

空空如也

空空如也

1 2 3 4
收藏数 69
精华内容 27
关键字:

keil命令行编译