收藏 分享(赏)

Keil μvision3编译器的使用.docx

上传人:scg750829 文档编号:7132701 上传时间:2019-05-06 格式:DOCX 页数:9 大小:441.17KB
下载 相关 举报
Keil μvision3编译器的使用.docx_第1页
第1页 / 共9页
Keil μvision3编译器的使用.docx_第2页
第2页 / 共9页
Keil μvision3编译器的使用.docx_第3页
第3页 / 共9页
Keil μvision3编译器的使用.docx_第4页
第4页 / 共9页
Keil μvision3编译器的使用.docx_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、10.2 Keil vision3 编译器的使用本书利用 Keil vision3 作为软件开发环境。该开发环境功能强大,代码编译效率高,可支持多种器件并支持软件仿真及在线调试等功能。10.2.1 Keil 工程文件的建立(1)软件启动双击桌面上的 Keil 图标,打开软件界面如图 10-1 所示。图 10-1 软件初始界面(2)建立新工程文件依次点击:ProjectNew Project,出现一个文件名对话框,输入名字(设为exam1),不需要扩展名,单击 “保存”按钮。出现选择目标 CPU(即所用芯片的型号)对话框,如图 10-2 所示,本书使用的 ST51/52 单片机,与 Atmel

2、公司的 89C51 芯片内部定义相同,所以点击 Atmel 前面的 “+”号,选择 Atmel 公司的 89C51 芯片,单击“确定”按钮,回到主界面,此时,在工程窗口的文件页中,出现了“Target1”,前面有“+”号,点击“+”号展开,可以看到下一层的“Source Group1 ”。器件的选择也可以在以后来进行修改,可依次点击:ProjectSelect device for target 来进行设置。图 10-2 选择目标 CPU(3)加入源文件和头文件源文件 就 是 一 般 的 文 本 文 件 , 可 以 使 用 任 意 文 本 编 缉 器 编 写 , 不 一 定 使 用 Keil

3、软 件 编写 。 在 Keil 软 件 中 的 编 写 方 法 为 : 在空白的项目界面中,选择 FileNew ,则自动生成一个空白的页面,在该页面中可以进行程序的输入。如果使用的是 C 语言,则需要以.C 为后缀保存该文件;如果使用汇编语言编程,文件的后缀应为.asm,如图 10-3 所示。图 10-3 添加文件名后缀Comment h1: 什么对话框?建议讲详细,谢谢。改Comment h2: 什么对话框?建议讲详细,谢谢。改Comment h3: 请确定。源文件如果要被当前工程所使用,必须将其包含进来,步骤是:在 Source Group1名上单击鼠标右键,在弹出的选项列表中选择“Ad

4、d Files to Group”,如图 10-4所示。双击源文件名,将文件加入项目,则源文件出现在 Group下面。添加源文件名后还要添加头文件,大多数头文件的添加是在产生新工程时,自动生成的。如果没有自动生成,则需要手工添加,添加方法和添加源文件相同。x52 的头文件是AT89X52.H。图 10-4 加入源文件注意:图 10-5中对话框下面的“ 文件类型”默认为*.c ,也就是以 C为扩展名,如果要加*.a51,*.asm的文件,点击对话框中“文件类型”后的下拉按钮,找到并选中“Asm Source File(),可以找到*.a51,*.asm文件,如图 10-5所示。图 10-5 文件

5、类型选择在文件加入项目后,图 10-5中的对话框并不消失,等待继续加入其他文件,如果该文件已经加入项目,再次点击同一文件,会出现如图 10-6所示的对话框,提示所选文件已在列表中,此时应单击“确定”按钮,返回前一对话框,然后单击“Close”按钮即可返回主界面。图 10-6 重复加入错误头文件中已经定义好了各种寄存器与物理地址的对应关系,因此在编写程序时,只要按照定义中的格式就能轻松对单片机的各个寄存器进行操作。10.2.2 工程设置程序要进行正确编译还要进行工程设置,依次点击:ProjectOption for target target1出现对工程设置的对话框,工程设置一共有 8 项,都有

6、默认值。1. 目标设置目标设置可以设置工程所用的晶振频率,RAM、ROM、操作系统,具体设置方法是点击设置对话框中的“Target ”,出现如图 10-7 所示页面。Comment h4: 与上面一致,建议再描述详细些。改Comment h5: 这样修改是否可以。可以图 10-7 目标设置图中各参数的具体含义如下: Xtal: 晶 振 频 率 值 , 默 认 值 是 所 选 目 标 CPU的 最 高 可 用 频 率 值 , 如 AT89C51是24M。 该 数 值 仅 用 于 软 件 模 拟 调 试 时 显 示 程 序 执 行 时 间 , 与 最 终 产 生 的 目 标 代 码 无关 。 一

7、般 将 其 设 置 成 与 硬 件 所 用 晶 振 频 率 相 同 , 正 确 设 置 该 数 值 可 在 调 试 时 显 示实 际 时 间 。 Memory Model:设置 RAM 使用情况。有三个选项:Small 、Compact 、Larget ,可按程序使用的 RAM空间和类型设置 。 Small:使用单片机的内部 RAM。 Compact:使用一页外部扩展 RAM。 Larget:使用全部外部的扩展 RAM。 Code Rom Size:设置 ROM 空间。有三个选项:Small 、Compact 、Larget ,可按程序需要的空间来设置。 Small:使用 00001FFF(共

8、 2K)的程序空间。 Compact:单个函数的代码量不能超过 2K,整个程序可以使用 64K程序空间。 Larget模式,可用全部 64K 空间。 Use on-chip ROM:确认是否仅使用片内 ROM。 Operating:操作系统选择。有三个选项:None、Rtx tiny 和 Rtx full。 Rtx tiny 、 Rtx full:是 Keil 提供了两种操作系统。 None:不使用任何操作系统,一般选用该项。 Off Chip Code memory:确定系统扩展 ROM 的地址范围。 Off Chip Xdatamemory:确定系统扩展 RAM 的地址范围。2. 输出设置

9、输出设置可以设置工程编译后输出的结果,具体设置方法是点击设置对话框中的“OutPut”,出现如图 10-8所示页面。Comment h6: 此项与图中不一致,请确定。图是这样的,是讲的最下面一行(也不一致哦)的选项吗?那是因为程序显示时,没全部显示完Comment h7: 此处这样修改是否正确?请确定。正确图 10-8 输出设置图中各参数的具体含义如下: Creat Hex file:生成可执行代码文件,文件的扩展名为.HEX,默认未被选中。如果要写片做硬件实验,就必须选中该项。 Debug Informatio:产生调试信息,该信息可以选择菜单 viewBrowse 来查看。 Browse

10、Informati:产生浏览信息,取默认值。 Select Folder for Objects: 选 择 最 终 的 目 标 文 件 所 在 的 文 件 夹 , 默 认 是 与 工 程 文 件 相同 。 Name of Executable:指定最终生成的目标文件的名字,默认与工程的名字相同。3. 其他设置工程设置对话框中的其他各页面与 C51编译选项、A51 的汇编选项、BL51 连接器的连接选项等用法有关,这里均取默认值,不做任何修改。如果有需要可参考相关文献。设置完成后单击“确认”按钮返回主界面,工程文件设置完毕。10.2.3 编译、连接编译和连接的步骤如下:(1)选择菜单“Proje

11、ctBuild target ”对当前工程进行连接,如果当前文件已修改,会先编译再连接。(2)选择菜单“ProjectRebuild All target files”对当前工程中的所有文件重新进行编译后再连接。(3)选择菜单“ProjectTranslate .”进行编译,不进行连接 。以上操作也可以通过工具栏按钮直接进行。工具栏如图 10-9所示,工具栏按钮从左到右分别是:编译、编译连接、全部重建、停止编译和对工程进行设置。图 10-9 编译连接工具栏编译过程中的信息将出现在输出窗口中的 Build 页中,如果源程序中有语法错误,会有错误报告,双击错误报告行,可以定位到出错位置,正确编译会

12、得到如图 10-10所示的结果,提示获得了名为 exam1.hex的文件,可以进行程序固化,同时还产生了一些其他相关的文件,可被用于 Keil的仿真与调试。图 10-10 正确编译的结果10.2.4 仿真调试利用 Keil 的仿真与调试命令,可以实现对工程的软件仿真与调试。常见的调试命令、断点设置和调试窗口如下:1)常用调试命令Keil 内建了仿真 CPU 用来模拟执行程序,按快捷键“Ctrl+F5”或者选择菜单“DebugStart/Stop DebugSession”即可进入调试状态,进行程序的调试。这种调试只是功能调试,与真实的硬件执行还有区别,所以只能辅助调试逻辑关系等,不能模仿时序和

13、接口性能。软件调试后可固化到单片机内进行硬件调试。运行和调试的工具条,如图 10-11 所示,从左到右依次是复位、运行、暂停、单步、过程单步、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1串行窗口、内存窗口、性能分析、工具按钮等命令。图 10-11 运行和调试的工具条调试中最常用的是单步和过程单步。 单步:是指每次执行一行程序,执行完该行程序后停止等待命令执行下一行程序。选择菜单“STEP”或按快捷键“F11”可以单步执行程序。 过程单步:将汇编语言中的子程序或高级语言中的函数作为一个语句来执行。选择菜单“STEP OVER ”或按快捷

14、键“F10”可以执行过程单步命令。通过单步执行和过程单步执行,并观察执行结果,可以方便的找到程序中问题所在。2)断点设置断点设置:在某一程序行设置断点。运行程序时,一旦执行到断点程序行即停止,可在此观察有关变量值,以确定问题所在。选择菜单“DebugInsert/Remove BreakPoint”设置或移除断点(也可以用鼠标在该行双击实现)。选择菜单“DebugEnable/Disable Breakpoint”:开启或暂停光标所在行的断点功能。选择菜单“DebugDisable All Breakpoint”:暂停所有断点。选择菜单“DebugKill All BreakPoint”:清除

15、所有的断点设置。此外还可以通过表达式设定,选择菜单“DebugBreakpoints”,即出现该对话框,如图 10-12 所示。Comment h8: 请确定是否与图对应?对应图 10-12 断点表达式设定对话框3)常用调试窗口Keil软件在调试程序时提供了多个窗口,主要包括输出窗口(Output Windows)、观察窗口(Watch and Call Statck Windows)、存储器窗口(Memory Window)、反汇编窗口(Dissambly Window )、串行窗口(Serial Window)等。进入调试模式后,可以通过选择菜单“View” 下的相应命令打开或关闭这些窗口。主要窗口的内容如下: 存储器窗口:显示系统中各种内存中的值。 工程窗口寄存器页窗口:包括了当前的工作寄存器组和系统寄存器,如A、B、DPTR、 SP、PSW、PC 、Status 等。按 F2 键,即可修改该值。 观察窗口:显示寄存器的值或者在高级语言编程时需要直接观察变量。如图 10-13所示,从左到右分别是输出窗口、存储器窗口和观察窗口。图 10-13 调试窗口如图 10-14所示,通过选择外设菜单( peripherals)下面的子菜单,可以打开 I/0端口窗口、中断串口和串口窗口等。具体操作可参考相应生产厂商的手册。图 10-14 调试菜单图

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报