KeilμVision4集成开发环境与C语言程序设计.docx

上传人:b****2 文档编号:23000960 上传时间:2023-04-30 格式:DOCX 页数:60 大小:790.34KB
下载 相关 举报
KeilμVision4集成开发环境与C语言程序设计.docx_第1页
第1页 / 共60页
KeilμVision4集成开发环境与C语言程序设计.docx_第2页
第2页 / 共60页
KeilμVision4集成开发环境与C语言程序设计.docx_第3页
第3页 / 共60页
KeilμVision4集成开发环境与C语言程序设计.docx_第4页
第4页 / 共60页
KeilμVision4集成开发环境与C语言程序设计.docx_第5页
第5页 / 共60页
点击查看更多>>
下载资源
资源描述

KeilμVision4集成开发环境与C语言程序设计.docx

《KeilμVision4集成开发环境与C语言程序设计.docx》由会员分享,可在线阅读,更多相关《KeilμVision4集成开发环境与C语言程序设计.docx(60页珍藏版)》请在冰豆网上搜索。

KeilμVision4集成开发环境与C语言程序设计.docx

KeilμVision4集成开发环境与C语言程序设计

附录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库管理器允许从由编译器或汇编器生成的目标文件创建目标库。

库是一种被特别地组织过并在以后可以被连接重用的对象模块。

当连接器处理一个库时,仅仅那些被使用的目标模块才被真正使用。

3.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所示。

图A-1KeilμVision4欢迎界面

单击“Next”按钮,弹出“LicenseAgreement”对话框,如图A-2所示。

这里显示了一些用户安装的协议和许可的要求,选择“IagreetoallthetermsoftheprecedingLicenseAgreement”即可,否则无法进入下一步。

图A-2“LicenseAgreement”对话框

单击“Next”按钮,弹出“FolderSelection”对话框,如图A-3所示。

系统默认安装在“C:

\Keil”文件夹下。

在这里,单击“Browse”按钮,可以选择安装的目录。

图A-3“FolderSelection”对话框

单击“Next”按钮,弹出”CustomerInformation”对话框,如图A-4所示。

此时,用户需要输入用户名、公司名称和E-mail,缺一不可。

图A-4用户信息输入

单击”Next”按钮,下面便开始自动安装。

Keilμ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所示。

图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菜单

菜单命令

工具条

快捷键

功能说明

New

Ctrl+N

创建一个新的空白文件

Open

Ctrl+O

打开一个已存在的文件

Close

关闭当前打开的文件

Save

Ctrl+S

保存当前打开的文件

Saveas

当前文件另存为

Saveall

保存所有打开的文件

DeviceDatabase

打开器件库

LicenseManagement

产品注册管理

PrintSetup

设置打印机

Print

Ctrl+P

打印当前文件

PrintPreview

打印预览

1..10

列出最近打开的源文件或文本文件

Exit

退出KeilμVision4

2.Edit菜单

Edit菜单提供了常用的代码编辑操作命令。

Edit菜单各个命令的功能如表A-2所示。

表A-2Edit菜单

菜单命令

工具条

快捷键

功能说明

Undo

Ctrl+Z

取消上次操作

Redo

Ctrl+Y

重复上次操作

Cut

Ctrl+X

剪切选定的内容

Copy

Ctrl+C

复制选定的内容

Paste

Ctrl+V

粘贴已复制的内容

NavigateBackwards

Ctrl+Shift+-

光标移动到使用Find或gotoline命令的前一行

NavigateForwards

Ctr+-

光标移动到使用Find或gotoline命令的后一行

Insert/RemoveBookmark

Ctrl+F2

设置/取消当前行的标签

GotoNextBookmark

F2

光标移动到下一个标签

GotoPreviousBookmark

Shift+F2

光标移动到上一个标签

ClearAllBookmarks

Ctrl+Shift+F2

清除当前文件的所有标签

Find

Ctrl+F

在当前文件中查找

Replace

Ctrl+H

替换

FindinFiles

Ctrl+Shift+F

在多个文件中查找

IncrementalFind

Ctrl+I

渐进式寻找

Outlining

源代码概要显示模式

Advanced

各种高级编辑命令

Configuration

颜色、字体等高级配置

3.View菜单

View菜单提供了在源代码编辑和仿真调试过程中,各个窗口和工具栏的显示和隐藏命令。

View菜单各个命令的功能如表A-3所示。

表A-3View菜单

菜单命令

工具条

功能说明

StatusBar

显示/隐藏状态条

Toolbars

显示/隐藏工具栏

ProjectWindow

显示/隐藏项目管理窗口

BooksWindow

显示/隐藏参考书窗口

FunctionsWindow

显示/隐藏函数窗口

TemplatesWindow

显示/隐藏模板窗口

SourceBrowserWindow

显示/隐藏资源浏览器窗口

BuildOutputWindow

显示/隐藏输出信息窗口

FindinFilesWindow

显示/隐藏在所有文件中查找文本窗口

FullScreen

显示/隐藏全屏显示窗口

调试模式下的菜单命令

CommandWindow

显示/隐藏命令行窗口

DisassemblyWindow

显示/隐藏反汇编窗口

SymbolsWindow

显示/隐藏字符变量窗口

RegistersWindow

显示/隐藏寄存器窗口

CallStackWindow

显示/隐藏堆栈窗口

WatchWindows

显示/隐藏变量子菜单观察窗口

MemoryWindows

显示/隐藏存储器子菜单窗口

SerialWindows

显示/隐藏串行口观察子菜单窗口

AnalysisWindows

显示/隐藏分析子菜单窗口

Trace

显示/隐藏跟踪子菜单窗口

SystemViewer

显示/隐藏外设子菜单窗口

ToolboxWindow

显示/隐藏自定义工具条窗口

PeriodicWindowUpdate

在程序运行时刷新调试窗口

4.Project菜单

Project菜单提供了MCU项目的创建、设置和编译等命令。

Project菜单各个命令的功能如表A-4所示。

表A-4Project菜单

菜单命令

工具条

快捷键

功能说明

NewµVisionProject...

创建新项目

NewMulti-ProjectWorkspace...

创建多项目工作空间

OpenProject...

打开一个已存在的项目

CloseProject

关闭当前项目

Export

导出当前一个或多个项目为μVision3格式

Manage

管理项目的包含文件、库的路径及多项目工作空间

SelectDeviceforTargetname...

为当前项目选择一个MCU类型

Removeobject

从当前项目中移除选择的文件或项目组

Optionsforobject

Alt+F7

设置当前文件、项目或项目组的配置选项

Cleantarget

清除编译过程中创建的中间文件

Buildtarget

F7

编译文件并生成应用文件

Rebuildalltargetfiles

重新编译所有文件并生成应用文件

BatchBuild...

批量编译文件并生成应用文件

Translatefile

Ctrl+F7

编译当前文件

Stopbuild

停止编译当前项目

1..10

列出最近打开的项目(最多10个)

5.Flash菜单

Flash菜单提供了下载程序、擦除MCU程序存储器等操作。

这里的命令需要外部的编程器支持才可以使用。

Flash菜单各个命令的功能,如表A-5所示。

表A-5Flash菜单

菜单命令

工具条

功能说明

Download

下载MCU程序

Erase

擦除程序存储器

ConfigureFlashTools...

打开配置工具

6.Debug菜单

Debug菜单中的命令大多用于仿真调试过程中,提供了断点、调试方式及逻辑分析等功能。

Debug菜单各个命令的功能如表A-6所示。

表A-6Debug菜单

菜单命令

工具条

快捷键

功能说明

Start/StopDebugSession

Ctrl+F5

开始/停止仿真调试模式

ResetCPU

复位CPU(MCU)

Run

F5

运行程序,直到遇到一个断点

Stop

停止运行程序

Step

F11

单步执行程序,遇到子程序则进入

Stepover

F10

单步执行程序,跳过子程序

Stepout

Ctrl+F11

程序执行到当前函数的结束

RuntoCursorline

Ctrl+F10

程序执行到光标所在行

ShowNextStatement

显示下一条指令

Breakpoints

Ctrl+B

打开断点对话框

Insert/RemoveBreakpoint

F9

设置/取消当前行的断点

Enable/DisableBreakpoint

Ctrl+F9

使能/禁止当前行的断点

DisableAllBreakpoints

禁用所有断点

KillAllBreakpoints

Ctrl+Shift+F9

取消所有断点

OSSupport

打开查看事件、任务及系统信息的子菜单

ExecutionProfiling

打开一个带有配置选项的子菜单

MemoryMap

打开存储器空间配置对话框

InlineAssembly

对某一行进行重新汇编,可以修改汇编代码

FunctionEditor(OpenIniFile)

编辑调试函数和调试配置文件

DebugSettings

设置调试参数

7.Peripherals菜单

Peripherals菜单提供了MCU各种硬件资源的仿真对话框。

这里的所有命令都只在仿真调试环境下才显示并可以使用,而且显示的资源内容随用户选择的MCU型号的不同而不同。

这里列出一些常用到的Peripherals菜单命令的功能,如表A-7所示。

表A-7Peripherals菜单

菜单命令

功能说明

Interrupt

打开中断仿真对话框

I/OPorts

打开并行端口仿真对话框

Serial

打开串口仿真对话框

Timer

打开定时器仿真对话框

Watchdog

打开看门狗仿真对话框

A/DConverter

打开A/D转换器仿真对话框

D/AConverter

打开D/A转换器仿真对话框

I²CController

打开I2C总线控制器仿真对话框

CANController

打开CAN总线控制器仿真对话框

8.Tools菜单

Tools菜单提供了一些第三方软件的支持,例如PC-Lint。

用户需要额外安装相应的软件才可以使用。

Tools菜单一般使用得比较少,这里仅列出各个命令的功能,如表A-8所示。

表A-8Tool菜单

菜单命令

功能说明

Set-upPC-Lint

配置PC-Lint程序

Lint

用PC-Lint程序处理当前编辑的文件

LintAllC-SourceFiles

用PC-Lint程序处理项目中所有的C源代码文件

CustomizeToolsMenu...

自定义工具菜单

9.SVSC菜单

SVSC菜单提供了程序的版本控制,该菜单下仅包括“ConfigureVersionControl”一个命令,用于配置软件版本。

另外,Windows菜单下提供了对工作区窗口布局的管理,Help菜单提供了一些帮助信息,这里不再具体介绍。

附A.2KeilμVision4汇编语言程序的调试方法

KeilμVision4集成开发环境中包括一个项目管理器,它可以使基于80C51内核的MCU应用系统设计变得简单。

要创建一个应用,需要按下列步骤操作:

1.启动KeilμVision4,新建一个项目文件并从器件库中选择一个器件;

2.新建一个源文件并把它加入到项目中;

3.设置目标硬件选项;

4.编译项目并生成可以编程到程序存储器的HEX文件;

5.软件模拟调试及下载到MCU中进行仿真调试。

下面通过一个实例,详细介绍如何在KeilμVision4集成开发环境中调试80C51系列MCU的汇编语言程序。

【例A-1】假设晶振频率为11.0592MHz,将MCU片外RAM中40H—5FH单元中的内容全部移到片内相同地址区域,并将原数据区全部清零。

附A.2.1启动KeilμVision4并创建一个项目

双击桌面KeilμVision4程序图标或单击开始菜单中的KeilμVision4程序项,启动KeilμVision4集成开发环境。

要新建一个项目文件,可以从KeilμVision4的Project菜单中选择“NewProject”项,打开“CreateNewProject”对话框,如图A-7所示。

图A-7“CreateNewProject”对话框

在此对话框的“文件名”栏中输入项目文件名。

建议为每一个项目建立一个独立的文件夹。

首先,在下拉列表中选择要保存的位置,最好选择逻辑盘D或E(不要保存在系统盘C,避免因系统重新安装而丢失文件)。

单击“新建文件夹”,,得到一个空文件夹,给该文件夹重命名为“test”(文件夹的名字最好能够体现项目名称)。

双击该文件夹,在“文件名(N)”栏中输入项目的名称,如“movedata”,创建一个文件名为“movedata.uvproj”的新项目文件。

单击“保存(S)”按钮,将弹出“SelectDeviceforTarget‘Target1’”对话框,提示为项目选择一个MCU。

在该对话框中,“Database”列表框中显示出各个MCU的生产商。

首先找到选用的MCU生产商,单击前面的“+”号,显示出KeilμVision4所支持的该公司的MCU型号列表,单击其中选定的MCU型号。

如本例中,选择Atmel公司的型号为AT89S52的MCU,如图A-8所示。

图A-8“SelectDeviceforTarget‘Target1’”对话框

单击“OK”按钮,弹出如图A-9所示的对话框,提示是否将标准8051启动代码复制到项目文件夹中并将该文件添加到项目中去。

图A-9复制启动代码提示对话框

在KeilμVision4中,启动代码在复位目标系统后立即被执行。

启动代码主要实现以下功能:

★清除内部数据存储器;

★清除外部数据存储器;

★清除外部页存储器;

★初始化small模式下的可重入栈和指针;

★初始化large模式下的可重入栈和指针;

★初始化compact模式下的可重入栈和指针;

★初始化8051硬件栈指针;

★传递初始化全局变量的控制命令或者在没有初始化全局变量时给main函数传递命令。

在每一个启动文件中,提供了可供用户自己修改有来控制程序执行的汇编常量。

如果只是调试简单程序,可以选择“否(N)”,如果项目复杂可选择“是(Y)”。

用户可根据需要修改启动代码,但一般不建议修改启动代码。

附A.2.2新建一个源文件并把它加入到项目中

从“File”菜单中选择“New”项新建一个源文件,或者单击工具栏上的按钮

,打开一个空白的编辑窗口,用户可以输入程序源代码。

输入以下程序源代码:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1