找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7638|回复: 25
打印 上一主题 下一主题
收起左侧

单片机编程软件Keil使用步骤详解

  [复制链接]
跳转到指定楼层
楼主
1、编辑状态的操作界面主要由5部分组成:最上面的菜单栏、菜单栏下面的工具栏、左边的工程管理窗口、中间的编辑窗口、下面的输出信息窗口。


二、操作步骤:

1、首先我们要养成一个习惯:最好先建立一个空文件夹,把您的工程文件放到里面,以避免和其他文件混合。比如:E:\code\exam

2、  单击桌面上的,打开keil。


3、建立项目(工程):

(1)新建立工程(Project -> New uVision Project),如图示:


(2)选择工程要保存的路径,输入并保存工程文件名。

Keil的一个工程里通常含有很多小文件。为了方便管理,通常我们将一个工程放在一个独立文件夹下,比如保存到exam1文件夹,工程文件的名字为exam1,如图所示,然后单击【保存】按钮。工程建立后,此工程名变为 exam1.uv2。

(3)选择芯片型号

保存之后出现如下对话框,在这个对话框要求选择目标CPU (即你所用单片机芯片的型号)。


Keil C51几乎支持所有的51内核的单片机,我们选择 Atmel 公司的 AT89C52 (根据具体设计选)芯片。点击 ATMEL 前面的“+”号,展开该层,点击其中的 AT89C52,如下图所示,然后再点击“OK”按钮,完成选择 MCU 型号。

在完成选择MCU 型号后,软件会提示我们是否要复制一个源文件到这个工程中,这里我们选择“否”,因为我要自己添加一个C语言或者汇编语言源文件,如下图所示。

在执行上一步后,就能在如下图工程窗口的文件页中,出现了“Target 1”,如下图,前面有“+”号,点击“+”号展开,可以看到下一层的“Source Group1”,这时的工程还是一个空的工程,里面什么文件也没有,到这里一个基础的工程就完成了,但需要使用还不够,还需要下面的步骤。


4、源文件的建立:

(1)新建:使用菜单“File->New”,或者点击工具栏的新建文件快捷按钮,就可以在项目窗口的右侧打开一个新的文本编缉窗口。

此时,在编辑窗口中光标闪烁,等待你输入。

(2)输入:在下面空白区别写入或复制一个完整的C程序::

(3)保存:使用菜单“File->save”,或者点击工具栏的快捷按钮。

注意:

1)一定要选择保存在建立工程时建立的文件夹下,这样有利于设计者查找该文件,也有利于管理。

2)为了好管理文件一般源文件名和工程名一致(也可以不一样),文件后缀名为“.asm 或.c”,其中“.asm”代表建立的是汇编语言源文件,“.c”代表建立的是C语言源文件。


5、将源文件添加到工程中:

建立好的工程和建立好的程序源文件其实是两个相互独立,一个单片机工程是要将源文件和工程联系到一起的。

(1)点击软件界面工程窗口左上角的“Source Group1”使其反白显示,然后,点击鼠标右键,出现一个下拉菜单,选中其中的“Add file to Group Source Group1”,如图所示。

在执行上面的步骤后会出现一个对话框,如下图所示,要求寻找源文件,选中文件,单击“Add“。

注意:

1)该对话框下面的“文件类型”默认为 C source file(*.c),也就是以 C 为扩展名的文件。

2)注意,在文件加入项目后,该对话框并不消失,等待继续加入其它文件,但初学时常会误认为操作没有成功而再次双击同一文件,这时会出现如下图所示的对话框,提示你所选文件已在列表中(有的没有这个窗口,不用管,直接单击“close”即可)。


然后点击“Close”即可返回主界面,返回后,点击“SourceGroup 1”前的加号,会发现 exam1.c 文件已在其中。双击文件名exam1.c,即打开该源程序。

6、配置工程

配置工程对于初学者来说,大部分内容只需要默认即可,这里只讲述几个常见的配置,能满足基本的功能。

之前工程建立好,之后还要对工程进行进一步的设置,以满足要求。

(1)点击左上边的Project窗口的  Target 1,然后使用菜单“Project->Option for target‘target1’”(工程目标选项),如下图所示,也可以按快捷键“Alt+F7”来完成。

在进行上面的操作后就会出现对工程设置的对话框,这个对话框可谓非常复杂,共有8 个页面,要全部搞清可不容易,好在绝大部份设置项取默认值就行了,如图所示。

1)Target选项:  设置晶振:12MHZ

2)Output选项:

勾选上【Project -> Options for Target -> Output】“Create HEX File”即可。

7、编译、连接:

    1)选择菜单  Project->Build target,对当前工程进行连接,如果当前文件已修改,软件会先对该文件进行编译,然后再连接以产生目标代码;如果选择  Rebuild All target files  将会对当前工程中的所有文件重新进行编译然后再连接,确保最终生产的目标代码是最新的,而“Translate”?  .项则仅对该文件进行编译,不进行连接,

2)以上操作也可以通过工具栏按钮直接进行。下图是有关编译、设置的工具栏按钮,从左到右分别是:编译、编译连接、全部重建、停止编译和对工程进行设置。

编译当前文件(单个)                  Ctrl + F7

编译目标文件(修改过的)  并生成应用程序供单片机直接下载           F7

编译所有目标文件(重新编译)  并生成应用程序供单片机直接下载        无

3)编译过程中的信息将出现在如下的输出窗口中的Build页中,如果源程序中有语法错误,会有错误文档出现,双击该行,可以定位到出错的位置,对源程序反复修改之后,最终会得到如下图所示的结果(提示获得了名为exam1.hex  的文件),该文件即可被编程器读入并写到芯片中,同时还产生了一些其它相关的文件,可被用于  Keil  的仿真与调试,这时可以进入下一步调试的工作。

8、调试

1)对工程成功地进行汇编、连接以后,按 Ctrl+F5 或者使用菜单Debug->Start/Stop Debug Session”, 进入调试状态。

进入调试状态后,界面与编缉状态相比有明显的变化,Debug 菜单项中原来不能用的命令现在已可以使用了,工具栏会多出一个用于运行和调试的工具条,如下图所示, Debug 菜上的大部份命令可以在此找到对应的快捷按钮,从左到右依次是复位、运行、暂停、单步、过程单步、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令。

复位:将程序复位到主函数的最开始处,准备重新运行程序;

全速运行:运行程序时中间不停止。

停止全速运行:全速运行程序时激活该按钮,用来停止正全速运行的程序。

进入子函数内部。

单步执行代码:它不会进入子函数内部,可直接跳过函数。

跳出当前进入的函数:只有进入子函数内部该按钮才被激活。

程序直接运行至当前光标所在行。

显示/隐藏编译窗口:可以查看每句C语言编译后所对应的汇编代码。

显示/隐藏变量观察窗口:可以查看各个变量值的变化状态

大家不妨把这些按钮一个个都单击试试看,只有亲自操作过了记忆才会深刻。

1使用快捷键F11可以单步执行程序,每按一次 F11,即执行该箭头所指程序行,然后箭头指向下一行,逐行调试。

注意1:使用F11 可以单步执行程序,使用F10 可以以过程单步形式执行命令,所谓过程单步,是指将高级语言中的函数作为一个语句来全速执行。

注意2:单步执行与全速运行。

全速执行:指一行程序执行完以后紧接着执行下一行程序,中间不停止,这样程序执行的速度很快,并可以看到该段程序执行的总体效果,即最终结果正确还是错误,但如果程序有错,则难以确认错误出现在哪些程序行。

单步执行:每次执行一行程序,执行完该行程序以后即停止,等待命令执行下一行程序,此时可以观察该行程序执行完以后得到的结果,是否与我们写该行程序所想要得到的结果相同,借此可以找到程序中问题所在。程序调试中,这两种运行方式都要用到。

观察端口情况:

单击Peripherals ----I/O-Ports---Port1菜单,在打开的小框里通过调试观察端口变化情况。

   


2单击Debug----Reset CPU可以复位。

3停止调试:

再次单击Debug->Start/Stop Debug Session,即可终止调试。


三、工程详细设置(可以不看)

工程建立好以后,还要对工程进行进一步的设置,以满足要求。

首先点击左上边的 Project窗口的  Target 1,然后使用菜单“Project->Option for target‘target1’”,如下图所示,也可以按快捷键“Alt+F7”来完成。

在进行上面的操作后就会出现对工程设置的对话框,这个对话框可谓非常复杂,共有  8 个页面,要全部搞清可不容易,好在绝大部份设置项取默认值就行了,如图所示。

1、Target选项:

1)Xta:后面的数值是晶振频率值,默认值是所选目标  CPU的最高可用频率值,对于我们所选的AT89C51  而言是  24M,该数值与最终产生的目标代码无关,仅用于软件模拟调试时显示程序执行时间。正确设置该数值可使显示时间与实际所用时间一致,一般将其设置成与你的硬件所用晶振频率相同,如果没必要了解程序执行的时间,也可以不设。

2)Memory Mode:用于设置  RAM  使用情况,有三个选择项,Smal l:variables in DATA  是所有变量都在单片机的内部  RAM 中;Compact:variables in PDATA  是可以使用一页外部扩展 RAM,而  Larget:variables in XDATA则是可以使用全部外部的扩展  RAM,如图所示。一般都是采用默认方式,也就是Smal l:variables in DATA方式。

3)Code Rom Size:  用于设置  ROM  空间的使用,同样也有三个选择项,即  Small:program 2kor less模式,只用低于2K 的程序空间;Compact:2k functions,64k program  模式,单个函数的代码量不能超过2K,整个程序可以使用  64K 程序空间;Larget:64k program 模式,可用全部 64K 空间,如图所示。一般都是采用默认方式,也就是Larget:64k program 模式。

4)Operating  system:   项是操作系统选择,Keil提供了两种操作系统:RTX-51  Tiny  和 RTR-51 Full,关于操作系统是另外一个很大的话题了,通常我们不使用任何操作系统,即使用该项的默认值:None(不使用任何操作系统),如图所示。

5)Use on-chip ROM  选择项,确认是否仅使用片内  ROM(注意:选中该项并不会影响最终生成的目标代码量);  Off-Chip  Code memory  用以确定系统扩展  ROM  的地址范围,Off-Chip Xdata memory  组用于确定系统扩展  RAM  的地址范围,这些选择项必须根据所用硬件来决定,由于该例是单片应用,未进行任何扩展,所以均不重新选择,按默认值设置,如图所示。

2、Output选项:

OutPut页面设置对话框,如图所示,这里面也有多个选择项,

1)        Creat Hex file用于生成可执行代码文件(可以用编程器写入单片机芯片的  HEX  格式文件,文件的扩展名为.HEX),默认情况下该项未被选中,如果要写片做硬件实验,就必须选中该项,这一点是初学者易疏忽的,在此特别提醒注意。

2)        Debug  Information  将会产生调试信息,这些信息用于调试,如果需要对程序进行调试,应当选中该项。

3)        Browse Information  是产生浏览信息,该信息可以用菜单  view->Browse 来查看,这里取默认值。

4)        按钮“Select Folder for Objects…”是用来选择最终的目标文件所在的文件夹,默认是与工程文件在同一个文件夹中。

5)   Name of Executable:用于指定最终生成的目标文件的名字,默认与工程的名字相同,这两项一般不需要更改。



菜单:
2、文件(File)菜单
              文件菜单下都是常见的项,不再给出对应的工具按钮。
              1)New              
2)Open
              3)Close                  
4)Save
              5)Save as…            
              6)Device Database:维护器件数据库
              7)Print Setup…:设置打印机
              8)Print                    
9)Exit
3、编辑(Edit)菜单
1)Undo            
2)Redo:恢复上次的撤销
3)Cut        
4)Copy
5)Paste
6)Indent Select Text:缩进一个制表符位
7)Unindent Select Text左移一个制表符位
8)Toggle Bookmark:在当前行置书签
9)Goto Next Bookmark移光标到下一书签
10)Goto Previous Bookmark:移光标到上一个书签
11)Clear All Bookmark:清除当前文件中所有的书签
12)Find…
13)Replace…:查找与替换
14)Find in Files…:在多个文件中查找字符串
15)Goto Matching Brace:寻找匹配的各种括号
4、查看(View)菜单
1)Status Bar:显示或隐藏状态栏
2)File Toolbar:显示或隐藏文件工具栏
3)Build Toolbar:显示或隐藏编译工具栏
4)Debug Toolbar:显示或隐藏调试工具栏
5)Project Windows:显示或隐藏工程窗口
6)Output Windows:显示或隐藏输出窗口
7)Source Browser:打开源文件浏览器窗口
8)Disassembly Windows:显示或隐藏反汇编窗口
9)Watch & Call Stack Windows:显示或隐藏观察和堆栈窗口
10)Memory Windows:显示或隐藏存储器窗口
11)Code Coverage Windows:显示或隐藏代码覆盖窗口
12)Performance Analyzer Windows:显示或隐藏性能分析窗口
13)Symbol Windows:显示或隐藏符号变量窗口
14)Serial Windows #1:显示或隐藏串行口窗口1
15)Serial Windows #2:显示或隐藏串行口窗口2
16)Toolbox:显示或隐藏工具箱
17)Periodic Windows Update:在调试运行程序时,周期刷新调试窗口
18)Workbook Mode:显示或隐藏工作簿窗口的标签
19)Option…:设置颜色、字体、快捷键和编辑器选项
5、工程(Project)菜单
1)New Project…: 创建一个新工程
2)Import μVision2 Project…:导入工程文件
3)Open Project:打开一个已有工程
4)Close Project:关闭当前工程
5)Components Environment and Books:设置工具书、包含文件和库文件的路径
6)Select Device for Target:从器件库中选择一种CPU
7)Remove Groups…:从工程中删去组或文件
8)Option for Target…:设置对象、组或文件的工具选项,设置当前目标选项,选择当前目标
9)Build Target:编译修改过的文件并生成应用
10)Rebuild Target:重新编译所有的文件并生成应用
11)Translate…:编译当前文件
12)Stop Build:停止当前的编译过程
6、调试(Debug)菜单
1)Start/Stop Debugging:启动/停止调试模式
2)Go:全速运行
3)Step:跟踪运行
4)Step Over:单步运行
5)Step out of current function:一步执行完当前函数并返回
6)Run to Cursor line:一步运行到当前光标处
7)Stop Running:停止运行
8)Breakpointing…:打开断点对话框
9)Insert/Remove Breakpoint:在当前行设置/清除断点
10)Enable/Disable Breakpoint:使能/禁止当前行的断点
11)Disable All Breakpoints:禁止所有断点
12)Kill  All Breakpoints:清除所有断点
13)Show Next Statement:显示下一条指令
14)Enable/Disable Trace Recording:使能/禁止跟踪记录
15)View Trace Records:                                        显示执行过的指令
16)Memory Map…:                                              打开存储空间配置对话框
17)Performance Analyzer…:                                打开性能分析设置窗口
18)Inline Assembly…:对某一行重新汇编,且可以修改汇编代码
19)Function Editor…:                                            编辑调试函数和调试配置文件
7、片内外设(Peripheral)菜单
1)Reset CPU:复位CPU
2)Interrupt:设置/观察中断(触发方式、优先级、使能等)
3)I/O Ports:设置/观察各个I/O口
4)Serial:设置/观察串行口
5)Timer:设置/观察各个定时器/计数器
6)A/D Converter:设置/观察A/D转换器
7)D/A Converter:设置/观察D/A转换器
              这一部分的内容,与选择的CPU有关。
8、工具(Tools)菜单
1)Setup PC-Lint…:配置PC-Lint
2)Lint:用PC-Lint处理当前编辑的文件
3)Lint all C Source Files:用PC-Lint处理当前项目中所有的C文件
4)Setup Easy-Case…:配置Siemens 的Easy-Case
5)Star/Stop Easy-Case:启动或停止Easy-Case
6)Show File(Line):用Easy-Case处理当前编辑的文件
7)Customize Tools Menu…:将用户程序加入工具菜单。
9、软件版本控制系统(SVCS)菜单 软件版本控制系统菜单只有一项:
Configure Version Control…:配置软件版本控制系统命令
10、视窗(Windows)菜单
1)Cascade:以相互重叠方式排列文件窗口
2)Tile Horizontally:以不重叠方式水平排列文件窗口
3)Tile Vertically:以不重叠方式垂直排列文件窗口
4)Arrange Icons:在窗口的下方排列图标
5)Split:将当前窗口分成几个窗格
6)Close All:关闭所有窗口
11、帮助(Help)菜单
1)μVision Help:打开μVision在线帮助
2)Open Books Window:打开电子图书窗口
3)Simulated Peripherals for…:显示片内外设信息
4)Internet Support Knowledegebase:打开互联网支持的知识库
5)Contact Support:联系方式支持
6)Check for Update:检查更新
7)About μVision:显示μVision的版本号和许可证信息

以上图文的Word格式文档下载(内容和本网页上的一模一样,方便大家保存):
单片机实验1---keil步骤.docx (1.95 MB, 下载次数: 69)
LED流水灯.docx (13 KB, 下载次数: 33)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏21 分享淘帖 顶3 踩
回复

使用道具 举报

沙发
ID:149799 发表于 2024-6-18 14:36 | 只看该作者
51黑有你更精彩,谢谢楼主分享,更适合新手学习,这是要走的步骤。
回复

使用道具 举报

板凳
ID:237471 发表于 2024-6-18 15:58 | 只看该作者
谢谢,收藏了
回复

使用道具 举报

地板
ID:170693 发表于 2024-6-22 14:37 | 只看该作者
谢谢楼主分享,使用步骤,菜单翻译等等,方便初学者。
回复

使用道具 举报

5#
ID:1126656 发表于 2024-6-23 23:12 | 只看该作者
很详细!果断收藏
回复

使用道具 举报

6#
ID:1127864 发表于 2024-7-2 10:26 | 只看该作者
非常详细,感谢了!
回复

使用道具 举报

7#
ID:1128105 发表于 2024-7-10 15:15 | 只看该作者
非常详细,感谢,收藏了!
回复

使用道具 举报

8#
ID:1129140 发表于 2024-7-17 11:42 | 只看该作者
刚学习,很不错,收获很多
回复

使用道具 举报

9#
ID:1130053 发表于 2024-8-21 09:00 | 只看该作者
谢谢分享,学习学习
回复

使用道具 举报

10#
ID:1110792 发表于 2024-8-21 15:49 | 只看该作者
详细,不错。
回复

使用道具 举报

11#
ID:1131325 发表于 2024-9-4 08:47 | 只看该作者
谢谢楼主分享,更适合新手学习。
回复

使用道具 举报

12#
ID:270856 发表于 2024-9-20 13:36 | 只看该作者
真不错,有帮助!
回复

使用道具 举报

13#
ID:1133049 发表于 2024-10-11 09:48 | 只看该作者
谢谢楼主分享,很详细的使用说明,新手学习了。
回复

使用道具 举报

14#
ID:1133498 发表于 2024-10-12 22:50 | 只看该作者
惆怅啊
回复

使用道具 举报

15#
ID:1134045 发表于 2024-10-19 11:12 | 只看该作者
好耶,支持大佬,学到很多
回复

使用道具 举报

16#
ID:237471 发表于 2024-10-19 14:37 | 只看该作者
感谢作者,无私奉献,谢谢
回复

使用道具 举报

17#
ID:123917 发表于 2024-10-19 22:47 | 只看该作者
非常感谢,辛苦了
回复

使用道具 举报

18#
ID:974131 发表于 2024-10-22 21:12 | 只看该作者
感谢作者做出的无私奉献,非常感谢!
回复

使用道具 举报

19#
ID:1134561 发表于 2024-10-24 13:41 | 只看该作者
好耶,支持大佬,学到很多
回复

使用道具 举报

20#
ID:350682 发表于 2024-10-28 11:25 | 只看该作者
为什么我的Peripherals是空的,啥也没有
回复

使用道具 举报

21#
ID:903188 发表于 2024-11-2 21:31 | 只看该作者
谢谢分享,跟上学学的一样
回复

使用道具 举报

22#
ID:652804 发表于 2024-11-5 20:42 | 只看该作者
很详细!收藏了。
回复

使用道具 举报

23#
ID:1134669 发表于 2024-12-16 23:19 | 只看该作者

谢谢楼主分享
回复

使用道具 举报

24#
ID:92810 发表于 2025-1-12 00:14 | 只看该作者
51黑有你更精彩,谢谢楼主分享,更适合新手学习,这是要走的步骤。
回复

使用道具 举报

25#
ID:665661 发表于 2025-3-5 17:14 | 只看该作者

51黑有你更精彩,谢谢楼主分享,更适合新手学习,这是要走的步骤
回复

使用道具 举报

26#
ID:665661 发表于 2025-3-5 17:15 | 只看该作者

51黑有你更精彩,谢谢楼主分享,更适合新手学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表