当前位置:首页 » 编程软件 » keil怎么修改编译

keil怎么修改编译

发布时间: 2022-12-25 05:10:43

⑴ 在keil环境中遍了一段C51的程序后怎么编译

1 新建一工程;在主菜单project下(.Uv2)
2 新建一文件;如C则存为.c文件,如汇编则存为.asm文件;
3 在左边窗口中的Target1上右击,在菜单中选add file to group,再选中你的刚建的

文件,即把它加入到你的工程中。
4 选中主菜单project-->build target(或F7)即可编译你的程序;
5 选中主菜单debug的第一项,则切换到调试窗口;
6 选中主菜单debug->go(F5)即可运行程序了。

注意:view ->periodic window update 是刷新窗口,这样结果可以看得更清。

还有不清楚的问我:MSN:[email protected]
公司上QQ不方便,呵呵.

⑵ keil 怎么用编译汇编程

keil编译汇编程序跟编译C程序操作方法是一样的。步骤如下:
1、建一个工程
2、添加或新建一个汇编文件
3、编辑这个汇编文件程序
4、点击编译命令进行编译
如果没有错误就可以生成HEX文件了。

⑶ 关于KEIL如何编译

新建一个keil工程,工程和这几个文件放同一个文件夹,然后把.c文件添加进工程去,就可以编译了

⑷ 单片机c语言 keil编译这些错误怎么改

前面定义的全局变量数组wenzi[]最后应该是分号,而不是逗号。

延时子程序中用了库函数_nop_();必须用#include包含头文件intrins.h。因为没加头文件,_nop_()是不识别的,才引起变量p错误。

两个延时子程序前面要加void,否则编译时会警告。

主程序中还有几处错误,修改如下图

⑸ KEIL怎么编译汇编

错误很多处:
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP TIME0_VECTOR

ORG 0100H
MAIN:
MOV R0,#0
SETB EA
MOV TMOD,0X01 ;汇编不能用0xXX表示,要用#01H 。以下同
MOV TH0,0X3C
MOV TL0,0XB0
CLR P0.0
SETB TR0 //50ms定时 ;汇编的注释要用分号,你这是C的注释。以下多处同此
LOOP:
AJMP LOOP

ORG 0200H
TIME0_VECTOR:
MOV TH0,0X3C
MOV TL0,0XB0
CLR TF0
INC R0
SUB R0,10 :是不是#10?
JNZ NEXT
MOV R0,#0
CLR P0.0 //R0满10,灯ON
RETI
NEXT:
SUB R0,4
JNC OFF //不够减小于10,不变
RETI , ;多了逗号?
OFF: ,
SETB P0.0 //R0大于4,灭OFF
RETI

;没有END

⑹ eclipse 怎么编译keil工程

1. 把KeilBuilder.exe复制到MDK的编译器目录下, 一般为: C:\Keil\ARM\BIN40下, 这要看你的MDK安装在哪了.
2. 新建一个C Project 工程, 并选择Cross GCC交叉编译工具为本工程编译工具.
.通过菜单File -> new -> C Project 新建一个空的C工程. 在弹出的对话框中如下图, 注意要选择"Cross GCC"工具链:

3. 为新建的工程导入Keil工程或仅导入源文件.

4. 设置Eclipse工程交叉编译环境.
.在左边的"Porject Explorer"窗口内鼠标右键单击工程名, 选择最后的菜单项"Properties"项.
.在C/C++ Build -> Settings界面中, 设置"Configuration"为"[ All configurations ]"; 设置"Cross Setttings"的"Path"即交叉工具链路径为KeilBuilder所有的目录, 如C:\Keil\ARM\BIN40. 如下图:

.在"Cross GCC Compiler"的"Command"下填入"KeilBuilder -no", 表示什么也不做; 另外的"Cross GCC Linker"及"Cross GCC Assembler"的"Command"中也设置为同值. 此设置为防Eclipse对不存在的GCC工具的报警, 如下图:

.在C/C++ Build 界面中, Builder Settings 中去掉"Use default build command"上的勾, 并在"Build command"中填入"KeilBuilder.exe -d xxxx -e". 基中xxx为工程根目录路径, "-d"表示设置KeilBuilder的工程路径, "-e"表示在编译时自动对Eclipse工程进行设置, 目前仅设置"C/C++ Build" -> "Settings" -> "Cross GCC Compiler" -> “Symbols”和”Includes”以及”Cross GCC Assmebler” -> “General”项. 如下图:

.在C/C++ Build 界面中的"Behaviour"选项卡中, 在"Build(Incremental build)"中填入"-s"表示安静编译; 在"Clean"中填入"-c"表示清理工程. 如下图:
.在C/C++ Build 中的 "Discovery Options" 中去掉 "Enable generate scanner info command"选项. 如下图:

.不用设置预编译宏或者Includes选项, 因为KeilBuilder会自动帮忙加进去. 所以, 有时候你看到代码还有一大堆的错误时, 编译一次后, 刷新工程(右键工程名 -> "Refresh")就木有错误鸟.
5. 到此, 可以编译你的工程了. 通过菜单项"Project" -> "Build All"编译工程, 或"Project" -> "Clean..."清理工程. 编译不通过或得到不正确Hex文件的继续往下看. 如下图:

6. 在Eclipse中添加一个外部工具, 这样可以通过Eclipse菜单项运行KeilBuilder, 方便.
.在Eclipse菜单中选择Run -> External Tools -> External Tools Configurations...
.在弹出的对话框中双击"Program" 增加一个外部工具.
.在Name中填入"KeilBuilder".
.在"Main"选项卡中, Location通过"Browse File System..." 选择KeilBuilder程序, 如: C:\Keil\ARM\BIN40\KeilBuilder.exe; 在Working Directory中填入KeilBuilder所在的目录, 如C:\Keil\ARM\BIN40.
.在"Build"选项卡中, 去掉"Build before launch"上的勾.
.最后单击"Apply" -> "Run"完成添加, 并运行KeilBuilder工具.
此后你就可以通过菜单Run -> External Tools -> KeilBuilder 来快速运行KeilBuilder工具了. 如下2图:

7. 经过前面4步的设置, 你的工程编译很可能会编译不通过, 或者编译出来的Hex文件下载不正确. 那是因为一些编译器/链接器选项你还没有配置.
这时, 你可以通过菜单Run -> External Tools -> KeilBuilder来运行KeilBuilder工具, 通过界面来设置这些参数. 或者也可以直接用记事本打开工程目录中的"cts.ini"(如果工程目录中不存在此文件, 请转到KeilBuilder所在的目录下的"cts.ini", 如果KeilBuilder所在目录下也没有, 那么请双击运行下KeilBuilder程序, "cts.ini"就会自动生成)对参数进行修改.
注意, 在KeilBuilder界面上设置参数时, 必须选择好自己的工程目录, 如果没有选择工程目录, 设置的结果会保存到KeilBuilder所在的目录下的"cts.ini"文件中. KeilBuilder在首次运行时, 会在其所在目录下生成cts.ini文件并设置参数为默认值. KeilBuilder在每次编译一个工程时, 如果该工程目录下发现"cts.ini", 就使用工程目录下的"cts.ini"; 如果没有发现"cts.ini"文件, 则把KeilBuilder所在目录下的"cts.ini"文件复制一份到工程目录下, 然后再编译.
关于"cts.ini"文件中的这些参数, 它对应于Keil MDK环境中的ASM编译器/C编译器/Linker选项. 因为时间问题, 在KeilBuilder中并未实现(以后有空再搞吧)类似于Keil uVision中的选项式配置. 如果熟悉这些参数最好, 不熟的话可以先在Keil uVision中配置好, 再对应添加到"cts.ini"中.
在"cts.ini"文件中的"ASM=" 后面的内容对应于Keil uVision工程选项中的"Asm"选项.
在"cts.ini"文件中的"CC=" 后面的内容对应于Keil uVision工程选项中的"C/C++"选项.
在"cts.ini"文件中的"LNK=" 后面的内容对应于Keil uVision工程选项中的"Linker"选项.
8. 设置"cts.ini"文件中的编译选项确实不是一般人能搞定. 我也不懂(谁懂的做个说明分享下吧, 可以的话还能集成为UI, 更方便). 因为人懒, 不想去深究这些编译(链接)器选项, 于是想到了个折中的办法: 通过Keil uVision来设置好这些参数并编译工程, 然后把它实时的编译选项显示出来以供参考! 这样当编译选项无法搞定时, 就把整个工程交给keil uVision来编译一次, 然后参考实时获取的参数再对Eclipse工程的"cts.ini"文件做相应的修改就OK了.
在keil uVision中捕获它的编译选项, 需要做如下的设置. 在工程属性"Options for Target xxxx"的"User"选项卡中 设置keil编译后运行”KeilBuilder.exe -p”. 表示捕获keil uVision编译选项, 如下图:

⑺ Keil uvision5中如何设置编译器使其可以编译c++内容

把源文件后缀名改为cpp。要支持C++11版本特性,只需要在Keil µVision集成编辑器里选择Project - Options - C/C++ 在- Misc Controls里面添加--cpp11.

⑻ 如何改变编译器Keil的程序入口函数main(),用其他自定义函数代替

目前找不到C51(我用的是STC8051)的程序入口函数编辑方法。


STM32的程序入口函数编辑方法

STM32的编辑方法就比较简单,首先新建一个工程,不导入任何运行时环境(Run-time Environment),然后导入Startup_stm32xxxx_xx.s(ASM起动文件),调试工程选项中C/C++选项卡里包含需要导入的库文件。

随后找到151行 IMPORT __main

把main改为自己想要设置的入口函数就行了。


其实很多人就由于自己不会自定义C语言工程的问题,而又想先自己动手写代码实现“到手即用”,所以简单听老师对于程序的针对性讲解,默认按照main写入口函数,其实main这个名字就是商业化的结果,一些知名厂商是给你留下一个编辑空间改入口函数的,可惜大家都不知道,而且Keil5出了那么多年都不搞官方汉化,唉,亏死了很多英语词汇不足的业余程序爱好者。

然后很多人第一印象以为谭浩强是C语言之父,草,不就是早期写《C程序设计》然后被各个大学纷纷膜拜然后按图索骥的作者嘛,最忌讳应试教育搞出了填鸭式教育法让大家失去自主探索的机会。

⑼ keil5编译按钮在哪

keil5编译按钮在:Debug--找到图中所示按钮即为单步运行。

分别由C51及C51编译器编译生成目标文件(.obj)。目标文件可由LIB51 创建生成库文件,也可以与库文件一起经L51 连接定位生成绝对目标文件(.abs)。abs文件由OH51 转换成标准的hex 文件,以供调试器dScope。

Keil C51单片机软件开发系统的整体结构:

C51工具包的整体结构,μVision与Ishell分别是C51 for Windows 和for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。

然后分别由C51及C51编译器编译生成目标文件(.obj)。目标文件可由LIB51 创建生成库文件,也可以与库文件一起经L51 连接定位生成绝对目标文件(.abs)。

abs文件由OH51 转换成标准的hex 文件,以供调试器dScope51 或tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。



⑽ keil如何打开多个点c并完整编译

点击全局编译按钮
,完成后在相应目录文件夹(之前存放hex文件的路径)下即可看到生成的ethernet.lib文件。
6、lib文件生成后,还需.h文件,h文件有两种方式,一种是保留之前.c文件对应的.h文件,继续照常使用,另一种是可将单独的.h文件合并成一个新的ethernet.h,直接在main.c调用ethernet.h即可。
7、将lib文件剪切放到Ethernet文件路径下,将之前的socket.c、w5500.c等文件删除掉,头文件换成ethernet.h,工程里将ethernet.lib加入到group(ethernet文件夹)里。
8、将取消编译的文件重新打开,将编译后文件类型改回.hex文件,然后全编译,没有错误即完成。

另外,若想将一个.c文件生成一个lib文件,只需保留该.c文件进行编译,.h文件也保持不变,将工程中原先的.c文件替换成.lib文件即可。

用心写好每篇文章,分享给需要的你☺,如果对您有用希望能留下您的脚印(点赞/评论/收藏)!

stm32
c语言
keil mdk
嵌入式
注意!注意!你有一个手机待领取
巨摩互动
广告

Keil对lib封装库反汇编成C语言.pdf
502下载·22评论
2013年5月6日
把c++的exe工程编译为动态库dll静态库lib,并实现调用(超详细)
2087阅读·0评论·1点赞
2020年8月28日
源代码封装成库Lib的方法
504阅读·0评论·0点赞
2022年10月14日
STM32/keil把多个c文件编译为静态库lib
2190阅读·0评论·6点赞
2021年1月5日
C/C++ 静态库(lib)的概念和使用方法
3432阅读·0评论·4点赞
2022年5月2日
Keil 下生成LIB库文件以及如何使用LIB库文件
732阅读·1评论·0点赞
2020年12月19日
注意!注意!你有一个手机待领取
巨摩互动
广告
C语言 之 编译自己的lib库
1457阅读·0评论·1点赞
2020年8月7日
CMake交叉编译简单教程
3.2W阅读·2评论·14点赞
2018年9月7日
如何将c语言封装成dll文件,封装动态库dll与静态库lib(原理及简单实例)
2069阅读·0评论·1点赞
2021年5月21日
keil C对lib封装库反汇编成C语言,Keil软件“C语言”及“汇编”混编 —— 相关知识整理.doc...
1587阅读·0评论·0点赞
2021年5月21日
keil 加密:编译代码成lib库
454阅读·0评论·0点赞
2022年7月28日
Keil C 里面Lib库文件的生成与调用
11下载·0评论
2020年8月4日
keil C对lib封装库反汇编成C语言
101下载·4评论
2011年4月8日
C语言编译lib库手动添加
1888阅读·0评论·0点赞
2017年6月18日
基于Keil下多文件打包生成Lib库文件的具体操作
2667阅读·3评论·2点赞
2020年1月18日
Windows DOS命令行编译C/C++程序----库文件.lib的链接
1752阅读·0评论·0点赞
2019年2月21日
keil把源代码生成lib的方法
2754阅读·0评论·6点赞
2022年1月25日
keil 编译生成 .lib文件
2244阅读·4评论·1点赞
2018年1月8日
keil多文件编译
724阅读·0评论·1点赞
2022年4月3日
在keil中将文件封装为lib库文件需要注意的地方
1395阅读·0评论·0点赞
2021年11月15日
去首页
看看更多热门内容
评论1

YJer


你好,第6点中提到的,将单独的.h文件合并成一个新的ethernet.h,

热点内容
生女的算法 发布:2025-07-18 08:17:54 浏览:645
加密硬盘推荐 发布:2025-07-18 08:11:22 浏览:944
oppo手机的密码是多少 发布:2025-07-18 08:10:27 浏览:764
2匹压缩机重 发布:2025-07-18 08:01:40 浏览:181
云蚁物联的云存储怎么取消退款 发布:2025-07-18 08:01:39 浏览:486
访问电脑版网页 发布:2025-07-18 08:01:02 浏览:246
php集成软件 发布:2025-07-18 07:54:36 浏览:143
华为密码多少我忘记了告诉我 发布:2025-07-18 07:53:05 浏览:286
安卓怎么上传音乐到网易云 发布:2025-07-18 07:22:22 浏览:375
c语言保存txt文件 发布:2025-07-18 07:01:27 浏览:175