单片机与物联网技术应用实战教程
上QQ阅读APP看书,第一时间看更新

第2章 软件开发环境

2.1 Keil C51软件开发环境

2.1.1 Keil C51软件开发概述

51系列单片机的开发使用,一是需要硬件上的支持,二是需要软件上的支持。即在硬件上得到满足的同时,软件上也同时满足。下面将介绍一种编译软件Keil C51编译器。通过Keil C51编译软件可以把用C或者汇编编写的源程序转化为机器码供CPU执行。Keil C51是Keil Software公司出品的51系列兼容单片机C语言软件开发系统,是众多51系列单片机开发软件中应用最广泛之一,它集编辑、编译、仿真于一体,支持汇编、PLM语言和C语言的程序设计。界面直观,易学易懂。接下来具体介绍Keil C51程序的安装、卸载、Keil C51界面操作、工程文件建立和应用、程序后期编译、调试和如何将正确的程序写到单片机中。如图2-1所示为Keil C51μVision4的图标。

978-7-111-59182-5-Part01-5.jpg

图2-1 Keil C51μVision4

2.1.2 Keil C51μVision4软件的安装与卸载

1.Keil C51μVision4软件的安装

首先找到Keil C51μVision4的安装软件,可以通过网络下载软件978-7-111-59182-5-Part01-6.jpg和Keil序列生成器软件978-7-111-59182-5-Part01-7.jpg。若操作系统为XP,则可以直接双击978-7-111-59182-5-Part01-8.jpg;若操作系统为Win7,则可以选择以管理员身份运行;若操作系统为Win8,需要设置一下,右击978-7-111-59182-5-Part01-9.jpg,再单击属性里面的兼容性,看到兼容模式选择Win7打钩,并且“以管理员运行此程序”上打钩。软件安装步骤如下:

1)双击或管理员运行Keil C51μVision4的安装软件之后,会出现如图2-2所示的对话框。

2)鼠标单击978-7-111-59182-5-Part01-10.jpg,会出现如图

2-3所示的对话框。阅读相关内容之

后,确认无误,鼠标选择978-7-111-59182-5-Part01-11.jpg上打钩。3)鼠标单击978-7-111-59182-5-Part01-12.jpg,会出现如图2-4所示的对话框,安装路径可以自己选择,即D:\KEIL

(系统默认C:\Keil)。4)鼠标单击978-7-111-59182-5-Part01-13.jpg,接下来会出现如图2-5所示的对话框,这里的Firstname、Lastname、

Companyname以及E-mail中输入相应的信息。

978-7-111-59182-5-Part01-14.jpg

图2-2 Keil C51μVision4安装界面(1)

978-7-111-59182-5-Part01-15.jpg

图2-3 Keil C51μVision4安装界面(2)

978-7-111-59182-5-Part01-16.jpg

图2-4 Keil C51μVision4安装界面(3)

978-7-111-59182-5-Part01-17.jpg

图2-5 Keil C51μVision4安装界面(4)

5)鼠标单击978-7-111-59182-5-Part01-18.jpg,接下来会出现如图2-6所示的对话框。

6)等待安装完成后,接下来会出现如图2-7所示的对话框。

7)标单击978-7-111-59182-5-Part01-19.jpg,安装过程就全部结束。

为了保证软件能够正确编译和仿真,需要对软件进行许可号认证。打开刚刚安装好的Keil C51μVision4,会出现如图2-8所示的对话框。在该界面下单击File→License Management,则会

978-7-111-59182-5-Part01-20.jpg

图2-6 Keil C51μVision4安装界面(5)

978-7-111-59182-5-Part01-21.jpg

图2-7 Keil C51μVision4安装界面(6)

978-7-111-59182-5-Part01-22.jpg

图2-8 Keil C51μVision4软件工作界面

弹出Licens eManagement窗口如图2-9所示的对话框。复制computer ID的号码。然后打开978-7-111-59182-5-Part01-23.jpg,将复制ID号码粘贴到Keil序列生成器窗口,鼠标单击Generate会在其下方生成一串Keil许可号的序列978-7-111-59182-5-Part01-24.jpg,如图2-10所示的对话框。

978-7-111-59182-5-Part01-25.jpg

图2-9 License Management管理窗口

978-7-111-59182-5-Part01-26.jpg

图2-10 Keil序列生成器窗口

将该978-7-111-59182-5-Part01-27.jpg复制,粘贴到License Management管理窗口中的NewLicense ID(LIC)中,再单击Add LIC,若上方会出现978-7-111-59182-5-Part01-28.jpg,则Keil软件注册成功,如图2-11所示的对话框。若不成功,可多次进行生成许可号重新注册使用Keil编译软件。

978-7-111-59182-5-Part01-29.jpg

图2-11 License Management管理窗口

2.Keil C51μVision4软件的卸载

软件的卸载步骤如下:

1)在Win7系统下,单击开始菜单找到系统中的“控制面板”,如图2-12所示。

978-7-111-59182-5-Part01-30.jpg

图2-12 Win7开始窗口

2)在控制面板中找到“程序和功能”,如图2-13所示。

3)单击程序和功能选项则会弹出卸载或更改程序的窗口,如图2-14所示。

4)选中再右击KeilC51μVision4软件,接着单击978-7-111-59182-5-Part01-31.jpg,如图2-15所示。

978-7-111-59182-5-Part01-32.jpg

图2-13 控制面板

978-7-111-59182-5-Part01-33.jpg

图2-14 程序卸载和更改窗口(1)

5)选中Keil C51Development Tools,用鼠标单击Remove,Keil C51就会被卸载掉,完成后关闭Keil软件卸载界面,如图2-16所示。

2.1.3 Keil C51μVision4软件的操作流程

1.Keil C51μVision4软件操作界面选项介绍

安装完成后,启动Keil C51μVision4软件,则会弹出如图2-17所示界面。然后弹出Keil C51μVision4工作界面如图2-18所示。

在该界面里有File、Edit、View、Project、Flash、Debug、Peripherals、Tools、SVCS、Win-dow、Help等菜单命令。

1)File文件菜单,见表2-1。

978-7-111-59182-5-Part01-34.jpg

图2-15 程序卸载和更改窗口(2)

978-7-111-59182-5-Part01-35.jpg

图2-16 卸载的界面

978-7-111-59182-5-Part01-36.jpg

图2-17 Keil启动界面

978-7-111-59182-5-Part01-37.jpg

图2-18 Keil工作界面

2-1 文件菜单命令说明

978-7-111-59182-5-Part01-38.jpg

2)Edit编辑菜单,见表2-2。

2-2 编辑菜单命令说明

978-7-111-59182-5-Part01-39.jpg

(续)

978-7-111-59182-5-Part01-40.jpg

3)View视图菜单,见表2-3。

2-3 视图菜单命令说明

978-7-111-59182-5-Part01-41.jpg

4)Project工程菜单,见表2-4。

2-4 工程菜单命令说明

978-7-111-59182-5-Part01-42.jpg

5)Debug调试菜单,见表2-5。

2-5 调试菜单命令说明

978-7-111-59182-5-Part01-43.jpg

6)Help帮助菜单,见表2-6。

2-6 帮助菜单命令说明

978-7-111-59182-5-Part01-44.jpg

7)flash菜单,见表2-7。

2-7 flash菜单命令说明

978-7-111-59182-5-Part01-45.jpg

8)Tools工具菜单,见表2-8。

2-8 工具菜单命令说明

978-7-111-59182-5-Part01-46.jpg

9)SCVS菜单,见表2-9。

2-9 SCVS菜单命令说明

978-7-111-59182-5-Part01-47.jpg

10)Window菜单,见表2-10。

2-10 Window菜单命令说明

978-7-111-59182-5-Part01-48.jpg

2.Keil C51μVision4创建工程

通过单片机与程序设计语言的学习,如C语言程序设计和汇编程序设计。以下是通过一个编写简单C语言程序来创建工程。对工程文件进行编译和调试来引导用户学习KeilC51软件的基本使用方法。

1)首先打开Keil C51软件,再单击Project菜单,会下拉出现一个窗口,接着选择NewμVisionProject,如图2-19所示,就会弹出如图2-20所示的工程窗口,保存好要选择目标文件的路径,在文件名中写自己的目标名称如test。保存类型为“.uvproj”,最后单击保存。

978-7-111-59182-5-Part01-49.jpg

图2-19 建立工程菜单

2)单击保存之后,会弹出如图2-21所示,选择Atmel→AT89C51(这里选择AT89C51单片机的型号,用户可以根据实际使用的单片机型号来选择,常用的是AT89C51)。单击“OK”按钮就会弹出一个代码添加界面,如图2-22所示。此时,一个新的项目文件创建完成。现在这里面还没有任何源代码。所以下一步操作是建立源代码文件。

3.Keil C51μVision4建立源码文件

1)选择File→New命令,弹出如图2-23所示的空白文本框,可以在text1中编写C语言程序。如下面已编好一段流水灯移位的C语言程序,如图2-24所示。

978-7-111-59182-5-Part01-50.jpg

图2-20 创建一个新的工程

978-7-111-59182-5-Part01-51.jpg

图2-21 选择单片机类型

2)然后用鼠标单击保存978-7-111-59182-5-Part01-52.jpg,也可以选择File→save命令,弹出的对话框中要选择的保存路径,并且在文件名中输入正确的扩展名。注意一定要输入文件的扩展名。C语言程序的扩展名是(.c),汇编语言程序的扩展名为(.asm),如图2-25所示。Keil C51会自动识别关键字,并以不同的颜色提示用户注意,减少用户编写程序出现的错误,从而提高编程的效率。

3)用鼠标单击Target1前面的“+”号,用鼠标右击Source Group 1,会出现如图2-26所示的菜单,选择Add Filesto Group‘Source Group 1’选项。

4)单击Add Files to Group‘Source Group 1’选项之后,会弹出如图2-27所示的对话框,文件名选择添加test文件,然后单击“Add”,文件类型是(.c)。在source group 1中有刚刚添加的test.c文件,如图2-28所示。上述建立好源代码,接下来的是编译和调试。

978-7-111-59182-5-Part01-53.jpg

图2-22 工程创建后的工作界面

978-7-111-59182-5-Part01-54.jpg

图2-23 程序编写的工作界面(1)

4.Keil C51μVision4编译和调试

程序编译过程是检验编写的程序是否有错误。用鼠标单击Project菜单中的builttarget(也可以使用快捷方式),单击图标978-7-111-59182-5-Part01-55.jpg(快捷键F7)来进行编译,若编译的结果没有错误,则会出现如图2-29所示的结果。若编译有错误,会出现接下来可能出现的错误,如图2-30所示。若编译结果是没有错误,但是有警告,说明程序语句执行是没有错误的,但是有些程序没有用上或者其他原因。当编译的结果没有错误的时候,接下来进行调试。

调试是为了检查程序中看不见的错误。因为编译只能说明源程序语法上没有错误,检查不出源程序会不会正确的执行我们设定的功能。程序的调试是单片机操作流程中最重要的一环。对程序进行调试时,鼠标单击Debug菜单中的start/stop debug session或者单击图标978-7-111-59182-5-Part01-56.jpg,进入调试界面,如图2-31所示。

978-7-111-59182-5-Part01-57.jpg

图2-24 程序编写的工作界面(2)

978-7-111-59182-5-Part01-58.jpg

图2-25 程序编写的工作界面(3)

调试有单步执行和全速执行。调试单步执行时,有4个快捷选项978-7-111-59182-5-Part01-59.jpg

1)978-7-111-59182-5-Part01-60.jpg:单步执行命令。

2)978-7-111-59182-5-Part01-61.jpg:单步执行遇到循环子程序时,选择过程单步命令不会进入循环子程序内部。

3)978-7-111-59182-5-Part01-62.jpg:单次数很多的循环子程序中,选择单步执行到函数外命令。

978-7-111-59182-5-Part01-63.jpg

图2-26 程序编写的工作界面(4)

978-7-111-59182-5-Part01-64.jpg

图2-27 保存文件后缀为.c的窗口

978-7-111-59182-5-Part01-65.jpg

图2-28 程序编写的工作界面(5)

978-7-111-59182-5-Part01-66.jpg

图2-29 编译成功界面

978-7-111-59182-5-Part01-67.jpg

图2-30 编译出错界面

978-7-111-59182-5-Part01-68.jpg

图2-31 调试界面

4)978-7-111-59182-5-Part01-69.jpg:当次数很多的循环子程序中,运行到光标所在行命令跳出循环子程序。

全速执行时,鼠标单击Debug选项中的run选项,对编辑的程序进行调试运行,再单击stop选项,则停止编译调试结束。查看程序运行结果,可以通过观测窗口来观察变量P3值的变化。

注意:有时在调试程序时需要满足一些特定的条件才能执行。比如外部中断,需要外部的信号,所以需要设置断点才能调试。所谓的断点就是调试运行直到运行到设置的断点为止。设置断点首先选定某一行的程序才可以单击978-7-111-59182-5-Part01-70.jpg进行断点的设置或者是删除,如图2-32所示。

5.Keil C51μVision4程序下载

以上是KeilC51工程建立、源代码的建立以及编辑和调试。最后需要将调试好的程序下载到芯片当中,通过软件驱使单片机硬件工作。以下分为几个操作步骤,来实现该功能。

1)用鼠标单击Project菜单中的Options for target‘目标1’,则弹出Options for target窗口。如图2-33所示。

在图2-33窗口中名为Create HEX File中打钩。再单击OK,最后在对文件进行编译,就会在刚刚创建的工程路径中出现后缀名为.hex文件。

2)打开烧写软件,可以在网络中下载烧写软件978-7-111-59182-5-Part01-71.jpg这个图标。双击打开烧写软件,则会弹出如图2-34所示。

3)用USB接口把单片机与计算机连接,安装USB转接口程序。安装成功之后,就会显示在

978-7-111-59182-5-Part01-72.jpg

图2-32 断点的设置或者是删除的工作界面

978-7-111-59182-5-Part01-73.jpg

图2-33 生成.hex文件

计算机设备管理器中,如图2-35所示出现的端口。

4)在STC-ISP即烧写软件,左上脚中有单片机的型号的选择和串口号的选择。选择正确之后,单击“打开程序文件”,则会弹出如图2-36所示的窗口,选择刚刚建立的路径文件中的.hex文件。

978-7-111-59182-5-Part01-74.jpg

图2-34 烧写界面

978-7-111-59182-5-Part01-75.jpg

图2-35 安装驱动成功

978-7-111-59182-5-Part01-76.jpg

图2-36 选择烧写hex代码文件

5)单击“下载/编程”,首先会出现如图2-37所示的提示界面。接着给单片机上电,就会出现如图2-38所示的提示界面,说明程序下载成功。单片机就会有对应的元件进行工作,执行语句。

978-7-111-59182-5-Part01-77.jpg

图2-37 程序下载进程(1)

978-7-111-59182-5-Part01-78.jpg

图2-38 程序下载进程(2)