|
3.6 Keil μVision3使用单片机汇编程序 |
讲完所有的单片机汇编程序知识后,下面看看如何在Keil μVision3集成开发环境中创建并运用单片机汇编程序。这里采用一个实际的单片机并口操作的例子进行讲解。
首先看如何在Keil μVision3集成开发环境中创建项目。操作步骤如下。
打开Keil μVision3软件,选择“Project”→“New”→“μVision Project”命令,弹出“Create New Project”对话框,如图3-10所示。选择需要保存的目录并输入项目的名称,这里作为本章的第7个例子,可以输入03-7,读者也可以选择其他名称。
图3-10 “Create New Project”对话框
单击“保存”按钮,此时弹出“Select Device for Target”对话框。在其中可以选择单片机的型号,由于前面搭建的单片机开发环境中使用了AT89S51单片机,因此这里选择Atmel公司的单片机AT89S51,如图3-11所示。
图3-11 选择CPU类型
单击“确定”按钮,此时弹出对话框,如图3-12所示。这里询问是否将8051的起始代码添加到项目中,对于汇编程序,这里一般不需要添加。
图3-12 询问是否添加起始代码
单击“否”按钮,项目建立完毕。此时,其中还没有任何源文件,属于一个空壳项目。
选择“File”→“New”命令,此时工作区中弹出一个新的文本编辑窗口。将其保存为03-7.asm。
在项目管理窗口中,右键单击“Source Group 1”,选择“Add Files to Group ‘Source Group 1’”命令,在弹出的对话框中选择刚才保存的汇编源文件,并加入项目中即可,如图3-13所示。
图3-13 项目建立完毕
项目建立完毕后,现在开始进行源文件的设计,输入如下的汇编源代码。
【范例3-7】 示例代码3-7是一个并口操作的单片机汇编语言程序。
示例代码3-7
【代码解析】在该程序中,采用了立即寻址的方式,为单片机P0~P3并行端口赋值。在实际的硬件电路中可以观察到引脚电平的变化。
下面开始编译项目并生成可下载执行的文件,操作步骤如下。
选择“Project”→“Options for Target ‘Target 1’”命令,此时弹出“Options for Target‘Target 1’”对话框,如图3-14所示。
在“Output”选项卡中,选择复选框“Create HEX File”,并单击“确定”按钮保存设置。这样,项目编译成功后便可以生成可供下载的HEX文件。
选择“Project”→“Build target”命令,对该项目进行编译,如果程序无误,则在输出窗口中显示编译结果,如图3-15所示。
图3-14 “Options for Target ‘Target 1’”对话框
图3-15 编译输出结果
可以将仿真调试下载到硬件开发系统中进行运行,观察各个引脚的电平变化。另外,也可以在Keil μVision3的集成开发环境中进行仿真,从而验证程序的正确性。
选择“Debug”→“Start/Stop Debug Session”命令,此时,Keil μVision3进入仿真调试模式。
选择“Peripherals”→“I/O-Ports”→“Ports 0”命令,打开并行端口P0的仿真界面。
按照同样的步骤可以打开其他几个并行端口仿真界面,如图3-16所示。
图3-16 并行仿真端口
按F11键一次,程序开始单步执行每一条指令。用户可以看到程序执行时并行I/O端口的电平变化,如图3-17所示。
图3-17 并行仿真端口电平变化
至此,我们便在Keil μVision3集成开发环境中完成了项目建立、编译和仿真等操作。