1附录AKeilμVision4集成开发环境与C语言程序设计Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联合运营,分别是德国慕尼黑的KeilElektronikGmbH和美国德克萨斯的KeilSoftwareInc。Keil公司制造和销售种类广泛的开发工具,包括ANSIC编译器、宏汇编程序、调试器、连接器、库管理器、固件和实时操作系统核心(real-timekernel)。有超过10万名微控制器开发人员在使用这种得到业界认可的解决方案。其KeilC51编译器自1988年引入市场以来成为事实上的行业标准,并支持超过500种80C51变种。Keil公司在2007年被ARM公司收购。其两家公司分别更名为ARMGermanyGmbH和ARMInc和。2009年2月,Keil公司发布了KeilμVision4,KeilμVision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,提供可在虚拟接口上随意放置窗口的完整控制能力。新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。新版本支持更多最新的80C51兼容芯片及ARM芯片,还添加了一些其他新功能,如系统查看器(SystemViewer)窗口、多项目工作空间(Multi-ProjectWorkspace)等。附A.1KeilμVision4集成开发环境附A.1.1简介KeilμVision4集成开发环境(IntegratedDevelopmentEnvironment,IDE)是一个基于Windows的开发平台,它包含高效的源代码编辑器、项目(Project)管理器和程序生成(MAKE)工具。KeilμVision4支持所有的80C51嵌入式应用工具,它包括C/C++编译器宏汇编器、连接/定位器和一个HEX文件生成器。KeilμVision4通过以下特性加速MCU嵌入式应用系统的开发过程:★全功能的源代码编辑器;★器件库用来配置开发工具设置;★项目管理器用来创建和维护项目;★集成的MAKE工具可以汇编、编译和连接用户的嵌入式应用;★所有开发工具的设置都是以对话框的形式出现的;★具有真正的源代码级的对CPU和外围器件的调试器;★高级GDI接口用来在目标硬件上进行软件调试以及和Monitor-51进行通信;★与开发工具手册、器件数据手册和用户指南有直接的链接。1.C51编译器和A51汇编器源代码由μVision4创建,并被C51编译成A51汇编。编译器和汇编器从源代码生成可重定位的目标文件。KeilC51编译器完全遵照ANSIC语言标准,支持C语言的所有标准特性。另外,直接支持80C51结构的几个特性被添加里面。KeilA51宏汇编器支持80C51及其派生系列的全部指令集。2.LIB51库管理器LIB51库管理器允许从由编译器或汇编器生成的目标文件创建目标库。库是一种被特别地组织过并在以后可以被连接重用的对象模块。当连接器处理一个库时,仅仅那些被使用的目标模块才被真正使用。23.BL51连接器/定位器BL51连接器/定位器利用从库中提取的目标模块和由编译器或汇编器生成的目标模块创建一个绝对地址的目标模块。一个绝对地址目标模块或文件包含不可重定位的代码和数据。所有的代码和数据被安置在固定的存储器单元中。此绝对地址目标文件可以用来:写入EPROM或其他存储器件。通过μVision4调试器来模拟和调试。通过仿真器来测试程序。4.OH51目标文件转换器OH51目标文件转换器可以把前面编译连接好的目标文件转换成能写入EPROM中的HEX文件。5.μVision4调试器μVision4源代码级调试器是一个理想的快速、可靠的程序调试器。此调试器包含一个高速模拟器,能够模拟整个8051系统,包括片上外围器件和外部硬件。当从器件库中选择器件时,这个器件的特性将自动配置。μVision4调试器为在实际目标板上测试程序提供了以下2种方法:安装MON51目标监控器到目标系统并且通过Monitor-51接口下载程序;利用高级的GDI(AGDI)接口,把μVision4调试器绑定到目标系统。6.Monitor-51μVision4调试器支持用Monitor-51进行目标板调试。此监控程序驻留在目标板的存储器里,它利用串口和μVision4调试器进行通信。利用Monitor-51,μVision4调试器可以对目标硬件实行源代码级的调试。7.RTX-51实时操作系统RTX-51实时操作系统是一个针对8051系统的多任务核。RTX-51实时内核从本质上简化了对实时事件反应速度要求高的复杂应用系统的设计、编程和调试。RTX-51实时内核是完全集成到C51编译器中的,从而方便使用。任务描述表和操作系统的连接由BL51连接器/定位器自动控制。附A.1.2安装了解了KeilμVision4的一些基本概况后,下面开始在计算机上搭建MCU的集成开发环境。操作步骤如下:首先准备KeilμVision4安装源文件,双击μVision4的Setup安装文件,弹出KeilμVision4安装的欢迎界面,如图A-1所示。3图A-1KeilμVision4欢迎界面单击“Next”按钮,弹出“LicenseAgreement”对话框,如图A-2所示。这里显示了一些用户安装的协议和许可的要求,选择“IagreetoallthetermsoftheprecedingLicenseAgreement”即可,否则无法进入下一步。图A-2“LicenseAgreement”对话框单击“Next”按钮,弹出“FolderSelection”对话框,如图A-3所示。系统默认安装4在“C:\Keil”文件夹下。在这里,单击“Browse”按钮,可以选择安装的目录。图A-3“FolderSelection”对话框单击“Next”按钮,弹出”CustomerInformation”对话框,如图A-4所示。此时,用户需要输入用户名、公司名称和E-mail,缺一不可。图A-4用户信息输入单击”Next”按钮,下面便开始自动安装。5KeilμVision4安装完成后,弹出安装完成对话框,如图A-5所示。这里的几个选项的含义如下。图A-5完成安装ShowReleaseNotes:显示安装的版本注释信息。AddExampleprojectstotherecentlyusedprojectlist:添加一个示例程序到当前项目列表中。RetaincurrentμVisionconfiguration:保持当前的设置(如果是第一次安装,则不存在这个选项)。最后,单击Finish按钮,便可以结束KeilμVision4集成开发环境的安装。需要注意的是,刚刚安装完的版本是试用版(EvaluationVersion),代码长度有2KB限制。如果代码长度超过2KB,可与Keil公司()联系,购买LIC(LicenseIDCode)。附A.1.3KeilμVision4集成开发环境界面安装完成后,会在桌面上出现KeilμVision4程序的图标,并在“开始”程序里增加“KeilμVision4”程序项。从“开始”程序里选择“KeilμVision4”程序项或者直接双击桌面上的KeilμVision4程序图标,即可启动KeilμVision4。启动KeilμVision4后,如果是第一次运行,则打开工程项目“Hello”,如图A-6所示。6图A-6KeilμVision4集成开发环境界面这里可以看到,KeilμVision4集成开发环境具有典型的Windows界面风格。整个编程界面主要包括菜单栏、工具栏、项目管理区、源代码工作区和输出信息窗口。另外,还有一些功能窗口将在后面逐步介绍。下面我们将带领读者逐一认识KeilμVision4集成开发环境的主要组成部分。附A.1.4KeilμVision4菜单命令KeilμVision4的菜单栏提供了项目操作、编辑操作、编译调试及帮助等各种常用操作。所有的操作基本上都可以通过菜单命令来实现。为了快速执行KeilμVision4的许多功能,有些菜单命令在工具栏上还具有工具条。为了更快速执行一些功能,KeilμVision4提供了比工具栏上的工具条更为快捷的操作,即快捷键。在KeilμVision4集成开发环境中不仅提供了常用功能的默认快捷键,同时用户也可以根据自己的需要自定义快捷键。下面就菜单命令、工具条、快捷键分别进行介绍。1.File菜单File菜单和标准的Windows软件的File菜单类似,提供了项目和文件的操作功能。File菜单各个命令的功能如表A-1所示。表A-1File菜单菜单命令工具条快捷键功能说明NewCtrl+N创建一个新的空白文件OpenCtrl+O打开一个已存在的文件Close关闭当前打开的文件SaveCtrl+S保存当前打开的文件Saveas当前文件另存为Saveall保存所有打开的文件7DeviceDatabase打开器件库LicenseManagement产品注册管理PrintSetup设置打印机PrintCtrl+P打印当前文件PrintPreview打印预览1..10列出最近打开的源文件或文本文件Exit退出KeilμVision42.Edit菜单Edit菜单提供了常用的代码编辑操作命令。Edit菜单各个命令的功能如表A-2所示。表A-2Edit菜单菜单命令工具条快捷键功能说明UndoCtrl+Z取消上次操作RedoCtrl+Y重复上次操作CutCtrl+X剪切选定的内容CopyCtrl+C复制选定的内容PasteCtrl+V粘贴已复制的内容NavigateBackwardsCtrl+Shift+-光标移动到使用Find或gotoline命令的前一行NavigateForwardsCtr+-光标移动到使用Find或gotoline命令的后一行Insert/RemoveBookmarkCtrl+F2设置/取消当前行的标签GotoNextBookmarkF2光标移动到下一个标签GotoPreviousBookmarkShift+F2光标移动到上一个标签ClearAllBookmarksCtrl+Shift+F2清除当前文件的所有标签FindCtrl+F在当前文件中查找ReplaceCtrl+H替换FindinFilesCtrl+Shift+F在多个文件中查找IncrementalFindCtrl+I渐进式寻找Outlining源代码概要显示模式Advanced各种高级编辑命令Configuration颜色、字体等高级配置3.View菜单View菜单提供了在源代码编辑和仿真调试过程中,各个窗口和工具栏的显示和隐藏命令。View菜单各个命令的功能如表A-3所示。表A-3View菜单菜单命令工具条功能说明StatusBar显示/隐藏状态条Toolbars显示/隐藏工具栏ProjectWindow显示/隐藏项目管理窗口BooksWindow显示/隐藏参考书窗口FunctionsWindow显示/隐藏函数窗口TemplatesWindow显示/隐藏模板窗口SourceBrowserWindow显示/隐藏资源浏览器窗口8BuildOutputWindow显示/隐藏输出信息窗口FindinFilesWindow显示/隐藏在所有文件中查找文本窗口FullScreen显示/隐藏全屏显示窗口调试模式下的菜单命令CommandWindow显示/隐藏命令行窗口DisassemblyWindow显示/隐藏反汇编窗口SymbolsWindow显示/隐藏字符变量窗口RegistersWindow显示/隐藏寄存器窗口CallStackWindow显示/隐藏堆栈窗口WatchWindows显示/隐藏变量子菜单观察窗口MemoryWindows显示/隐藏存储器子菜单窗口SerialWindows显示/隐藏串行口观察子菜单窗口AnalysisWindows显示/隐藏分析子菜单窗口Trace显示/隐藏跟踪子菜单窗口Sys