单片机开发与仿真软件keilc51的使用

合集下载

KEILC51和PROTEUS的使用

KEILC51和PROTEUS的使用

KEILC51和PROTEUS的使用KEILC51是一款针对51系列单片机的集成开发环境,可以方便地进行编译、调试和仿真。

PROTEUS是一款集成电路设计软件,可以用于电路图的设计、仿真和调试。

本文将介绍KEILC51和PROTEUS的使用方法。

一、KEILC51的安装和使用2. 安装完成后,打开KEIL C51,创建一个新项目。

选择新建一个“Project”。

在对话框中输入项目名称,并选择项目的存放路径。

3.在项目内部,可以添加源文件、库文件和头文件。

可以通过右键单击项目名称,选择“添加”,然后选择相应的文件类型进行添加。

4. 在源文件中编写C语言程序。

可以使用标准的C语法进行编写,也可以使用Keil C51提供的51系列特定的语法进行编写。

5. 进行编译和生成可执行程序。

在菜单栏中选择“Project”->“Build Target”,或者使用快捷键“Ctrl+F7”进行编译。

编译完成后,会在项目目录下生成相应的可执行程序。

6. 进行调试和仿真。

在菜单栏中选择“Debug”->“Start/Stop Debug Session”,或者使用快捷键“F5”进行调试。

可以设置断点、单步执行、查看变量值等进行调试。

二、PROTEUS的安装和使用2. 安装完成后,打开PROTEUS,创建一个新电路。

选择“Schematic Capture”->“Design”创建一个新的电路图。

在电路图中添加所需的元件,例如电阻、电容、晶体管等。

3.连接元件之间的引脚,可以使用连线工具进行连线。

在连线时,可以使用自动连接功能快速连接元件之间的引脚。

4.设置仿真属性。

在电路图中选择“P”工具,然后在对话框中选择相应的仿真模型和仿真参数,例如选择51系列单片机的仿真模型。

5. 进行仿真和调试。

在菜单栏中选择“Debug”->“Start Debugging”,或者使用快捷键“F5”进行仿真。

可以查看元件的工作状态,观察电路的波形等进行调试。

《单片机原理及应用》软件开发工具Keil与虚拟仿真平台Proteus的使用实验一

《单片机原理及应用》软件开发工具Keil与虚拟仿真平台Proteus的使用实验一

《单片机原理及应用》软件开发工具Keil与虚拟仿真平台Proteus的使用实验实验目的(1)了解Keil和Proteus软件的基本特点和功能。

(2)学会使用Keil软件进行单片机中断应用和定时器/计数器应用的编程。

(3)学会使用Proteus软件进行单片机中断应用和定时器/计数器应用的原理图的绘制和程序实现。

(4)学会使用Keil和Proteus两种软件的联调。

实验指导一、Keil C51的使用1.创建项目编写一个新的应用程序前,首先要建立项目(Project)。

(1)在编辑界面下,单击菜单栏中的[Project],出现下拉菜单,再点击选择中的“New Project”。

(2)单击“New Project…”选项后,就会弹出“Create New Project”窗口。

在“文件名(N)”中输入一个项目的名称,保存后的文件扩展名为“.uvx”,即项目文件的扩展名,以后可直接单击此文件就可打开先前建立的项目。

在“文件名(N)”窗口中输入新建项目文件的名字后,在“保存在(I)”下拉框中选择项目的保存目录,单击“保存(S)”即可。

(3)选择单片机,单击“保存(S)”后,会弹出“Select Device for Target”(选择单片机)窗口,按照提示选择相应的单片机。

搜索“AT89C52”并选择。

(4)单击“确定”按钮后,会出现对话框。

如果需要复制启动代码到新建的项目,选择单击“是”。

如选择单击“否”,启动代码项“STARTUP. A51”不会出现,这时新的项目已经创建完毕。

2.新建文件新的项目文件创建完成后,就需要将用户源程序文件添加到这个项目中,添加用户程序文件通常有两种方式:一种是新建文件,另一种是添加已创建的文件。

(1)单击快捷按钮,这时会出现一个空白的文件编辑画面,用户可在这里输入编写的程序源代码。

(2)单击中快捷按钮,保存用户程序文件,这时会弹出窗口“Save As”的对话框,在“保存在(I)”下拉框中选择新文件的保存目录,这样就将这个新文件与刚才建立的项目保存在同一个文件夹下,然后在“文件名(N)”窗口中输入新建文件的名字,如果使用C51语言编程,则文件名的扩展名应为“.c”。

实验一KeilC51集成开发环境的使用练习、仿真与调试

实验一KeilC51集成开发环境的使用练习、仿真与调试

实验一Keil C51 集成开发环境的使用练习、仿真与调试、实验目的1、熟悉Keil C51 集成开发环境的使用方法2、熟悉Keil C51集成开发环境调试功能的使用和DP-51PR0C单片机综合仿真实验仪的使用。

、实验设备及器件IBM PC 机一台DP-51PR0C单片机综合仿真实验仪一台、实验内容1、进行Keil C51 集成开发环境的安装和使用练习。

然后按照以下内容建立文件并编译产生HEX 文件。

0RG 0000HLJMP Main0RG 00F0HMain:M0V R7, #0Loop:M0V R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, LoopCPL P1.0 ; P 1 .0 取反CPL P1.1 ; P 1 .1 取反CPL P1.2 ; P 1 .2 取反CPL P1.3 ; P 1 .3 取反CPL P1.4 ; P 1 .4 取反CPL P1.5 ; P 1 .5 取反CPL P1.6 ; P 1 .6 取反CPL P1.7 ; P 1 .7 取反SJMP MainEND2、进行Keil C51 集成开发环境的仿真调试练习。

然后按照以下内容建立文件并编译仿真调试。

0RG 8000HLJMP Main0RG 80F0HMain:M0V R7, #0Loop:MOV R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, LoopCPL P1.0 ; P 1 .0取反CPL P1.1 ; P 1 .1取反CPL P1.2 ; P 1 .2取反CPL P1.3 ; P 1 .3取反CPL P1.4 ; P 1 .4取反CPL P1.5P 1 .5取反JCPL P1.6 ; P 1 .6取反CPL P1.7 ; P 1 .7取反SJMP Mai nEND四、实验要求1、熟练掌握Keil C51集成开发环境的工程建立、编辑与编译功能。

Keil C51的使用

Keil C51的使用
程序。
编辑课件
16
5、移除文件
要把某个文件从工程中移除,可在此文件上单击右键, 然后单击“Remove File ’ ’ ”。
移除不是删除,文件依然存在。
编辑课件
17
我来演示
1、打开一个已有的工程项目(不是默认项目)。 2、打开一个已有的工程项目,修改单片机型号。
3、打开一个已有的工程项目,删除原有的文件,装 入一个已有的C语言文件。
此时光标在编辑窗口里闪烁,就可以输入用户的应 用程序了。
或者把已有的程序从其他地方直接复制到程序编辑 窗口内。
文件的建立也可以用Windows环境的附件中的记 事本或写字板等纯文本编辑软件完成。
参见教材《单片机的C5编1辑应课件用程序设计》第 309 页 27
新建文件时,建议首先保存空白文件。
编辑课件
11
如果在选择了目标器件后,想更改器件,可选择 Project菜单中的Select Device for Target‘Tartet 1’。
由于不同厂家的许多型号性能相近,因此,如果找不 到用户要求的芯片信号,可以选择其他公司的相近型 号。
参见教材《单片机的C5编1辑应课件用程序设计》第 308 页 12
uVision2支持的所有CPU器件的型号根据生产厂家 形成器件组。
用户可根据需要选择相应的器件组并选择相应的器 件型号。
编辑课件
10
通过滚动条,选择生产厂商、目标CPU。
如:Atmel器件组内的AT89C51单片机。首先找到 Atmel公司,然后单击左边的“+”号展开该组。选择 AT89C51之后,单击“确定”。
程序输入完毕后别忘了再次保存。
参见教材《单片机的C5编1辑应课件用程序设计》第 309 页 28

Keil C51使用详解

Keil C51使用详解

Keil C51使用详解keilc51使用详解v1.0电子设计世界!版权所有,热烈欢迎贴文,切勿修正并标明原文。

留存一切权利。

第一章keilc51开发系统基本知识 (6)1第一节系统概述 (6)第二节keilc51单片机软件开发系统的整体结构...6第三节keilc51工具包的加装...71.c51fordos72.c51forwindows的安装及注意事项:...7第四节keilc51工具包各部分功能及使用简介...71.c51与a51.72.l51和bl51.83.dscope51,tscope51及monitor51.84.ishell及uvision.9第二章keilc51软件使用详解 (10)第一节keilc51编译器的控制指令...101.源文件掌控类 (10)2.目标文件(object)控制类:...103.列表文件(listing)控制类:...10第二节dscope51的使用...111.dscope51fordos112.dscopeforwindows12第三节monitor51及其使用...131.monitor51对硬件的要求...132.mon51的使用...133.mon51的配置...134.串口连接图:...135.mon51命令及使用...14第四节集成开发环境(ide)的使用...141.ishellfordos的使用 (14)22.uvisionforwindows的使用 (15)第三章keilc51vs标准c..15第一节keilc51扩展关键字...15第二节内存区域(memoryareas):...161.pragramarea:...162.internaldatamemory:163.externaldatam emory.162.可位串行区表明20h-2fh..18第七节keilc51指针...181.通常指针...182.存储器指针...183.指针切换...18第八节keilc51函数...191.中断函数声明:...192.通用型存储工作区 (19)3.选通用存储工作区由usingx声明,见上例。

《单片机原理与应用》KeilC51软件使用实验

《单片机原理与应用》KeilC51软件使用实验

《单片机原理与应用》KeilC51软件使用实验
一、实验目的和要求
熟悉51单片机的基本输入输出应用,掌握Proteus ISIS模块原理图绘图方法及单片机系统仿真运行方法。

二、实验内容和原理
(1)观察Proteus模块的软件结构,熟悉菜单栏、工具栏、对话框等基本单元功能。

(2)学会选择元件、画导线、画总线、修改属性等操作。

(3)学会可执行文件加载及程序仿真运行。

(4)验证计数显示器的功能。

三、主要仪器设备
电脑、keil c51、Proteus
四、操作方法与实验步骤
(1)提前阅读与实验1相关的阅读材料;
(2)参考实验1电路原理图和元件清单,在ISIS中完成电路原理图的绘制;(3)加载可执行文件,观察仿真结果,检验电路图绘制的正确性。

五、实验数据记录和处理
代码:
电路图:
六、实验结果与分析运行结果:
实验分析:
由实验结果可知,这是通过开关控制计数器显示,按一次开关计数器计一次数,即加一。

七、讨论和心得
通过本次数码管进行51计数器显示实验,让我知道了对教材应该熟悉,因为教材是基础的,只有把基础的搞好了才能够进行其它层次的学习。

其次,此次实验我还懂得了有时候可以通过软件的仿真来验证书上的一些理论性的东西。

通过C语言的编程,对数码管及51的应用让我对单片机理解更加明了。

Keil C51软件使用说明

Keil C51软件使用说明

}
10
MCS-51单片机原理、接口及应用
第6章 单片机的C51语言编程
(3)其它头文件
math.h:数学运算函数,如求绝对值、平方根、指数、正弦等
函数。 ctype.h:提供两类重要的函数:字符测试函数和字符大小转化 函数。 例如,判断一个整型变量是数字、字母、换行符、控制符等。 stdio.h:标准输入输出函数头文件,用于从标准输入设备读取 字符、数字,或向标准输出设备输出字符、字符串等。
整型
signed int
unsigned int singed long
2B
2B 4B
-32768~+32767
0~65535 -2147483648~+2147483647
unsigned long
实型
14
4B
4B
0~4294967295
1.176E-38~6.40E+38
MCS-51单片机原理、接口及应用
17
MCS-51单片机原理、接口及应用
第6章 单片机的C51语言编程
(2)compact模式
所有参数及局部变量都放在外部RAM区的一页(最大256B), 这和用pdata定义变量的作用相同。 具体哪一页,可由P2口定义,并在STARTUP.A51文件中说明。 一般默认的是外部RAM的低256B。
特点:存储器空间比small 模式大,但速度较small 模式慢,却比
reg52.h比reg51.h多了几行定义T2寄存器的内容。
7
MCS-51单片机原理、接口及应用
第6章 单片机的C51语言编程
sfr P1=0x90; /*定义P1口的地址为90H*/ sfr TCON=0x88; sfr TMOD=0x89; sfr TL0=0x8A; sfr16 T2=0xCC; T2L=0CCH,T2H=0CDH*/ sbit ET0=IE^1; /*指定ET0为中断允许控制寄存器IE的第1位*/ sbit ET0=0xaa;/*指定ET0为可寻址位0AAH,即IE.1。*/

KEIL C51 的使用

KEIL C51 的使用

KEIL的使用
1、安装KEIL C51
2、安装完后打开KEIL,进入KEIL界面
3、进入KEIL工作界面
4、新建工程点击Project→New µVsion Project
5、然后选择你要保存的路径,输入工程文件的名字,如下所示:
5、选择单片机类型,如A TC8951,然后点击是
6、完成以上步骤后,展开Taget 1,如下图所示:
7、用记事本输入如下程序:
9、输入完后保存后缀为.asm 的格式(汇编语言)(注意:如果是C语言的,就保存后缀为.C 格式)。

10、把刚才编写好程序添加到soursce group 1,过程如下所示:
11、展开soursce group 1,如下所示:
12、双击打开KEIL C51,工作界面如下:
13、单击“Project”菜单,再在下拉菜单中单击“” 在下图中,单击“Output”中单击“Create HEX File” 选项,使程序编译后产生HEX代码,供下载
器软件使用。

(或右键打开Targe 1 再选择)
14、这里还可以改变晶振的周期,如下所示:
15、设置完以上的设置后,然后单击“Project”菜单,再在下拉菜单中单击“Buid target”(创建目标文件)。

16、如有语句错误,则不能创建成功,如下所示,直到把错误排除,才能创建成功。

以上是KEIL C51 的入门教程。

KEli C51软件入门

KEli C51软件入门

keil软件的使用有关“Keil uVision2”软件的使用:开发单片机的第一步就是用Keil软件编写汇编程序,并形成最终的“*.hex”目标文件,然后用编程器将该文件烧写到单片机中就行了,最后将烧写好的单片机插到电路板上,一接通电源就可以工作了。

下面以编写小灯闪烁的程序为例介绍KILL软件的使用方法:1、双击桌面上的图标,打开以下窗口:点“工程”,新建工程:给工程起一个名字,我用“xiaodeng”就是小灯的意思,然后点保存:选择你使用的芯片型号,我用的是Atmel公司生产的89s51,双击Atmel:在下面找到At89S51后,点击它,然后确定:点击确定后,接下来再为你的工程新建一个文件弹出以下窗口:在弹出的窗口里面写入你的汇编程序:然后点文件,另存为:为你的文件起一个名字,我这里名字为“xiaodeng.asm”。

注意文件的扩展名不能省略,而且必须是“.asm”:点击保存,出现以下界面:将左边Target 1前面的“+”号展开,在它下面的字符“Source Group 1”上点击鼠标右键,再点击增加文件到组:在文件类型中点击asm源文件:在文件中找到你刚才新建的xiaodeng.asm文件,然后点击Add加入:只需要加入一次就够了,如果再次加入,将出现以下画面,不要紧,点确定就好了:这时候,左边的文件夹“Source Group 1”前面就有了一个“+”号:点击该“+”号展开后,下面就出现了一个名为“Xiakdeng.asm”的文件,说明已经将文件加进来了。

接下来将鼠标移到“Target 1”上,点击右键,再点击“目标‘Target 1’属性”:弹出以下窗口:点“输出”,在新弹出的窗口中,一定要确保“E生成 HEX文件”前面的小方格内有一个勾“√”,即选中该项,然后再点击“确定”:最后点击下面的符号:即“构造所有目标文件夹”,当出现以下画面时,说明目标文件“xiaodeng.hex”文件已经生成了:。

KeilC51使用教程

KeilC51使用教程

Keil C语言程序设计示例教程(开发C8051F310)使用汇编语言或C语言要使用编译器,以便把写好的程序编译为机器码,才能把HEX可执行文件写入单片机内。

KEIL uVISION是众多单片机应用开发软件中最优秀的软件之一,它支持众多不同公司的MCS51架构的芯片,甚至ARM,它集编辑,编译,仿真等于一体,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。

因此很多开发51应用的工程师或普通的单片机爱好者,都对它十分喜欢。

在这里以51单片机并结合C程序为例(汇编操作方法类似,唯一不同的是汇编源程序文件名后缀为“.ASM ”),图文描述工程项目的创建和使用方法。

1.首先我们要养成一个习惯:最好先建立一个空文件夹,把您的工程文件放到里面,以避免和其他文件混合,如下图, 创建了一个名为“PRJ_C8051”文件夹2.点击桌面上的Keil uVision4图标,出现启动画面:3.点击“project --- New uVision Project”新建一个工程:4.在对话框,选择放在刚才建立的“PRJ_C8051”文件夹下,给这个工程取个名为Test_C8051F310, 然后保存,工程的后缀为uvporj。

5.弹出一个框,在CPU类型下我们找到并选中“Silicon Laboratories. Inc.”下的C8051F3106.加入C8051起动码7.建立一个源程序文本8.在下面空白区别写入或复制一个完整的C程序:9.输入源程序文件名名称,示例输入“Test_C8051F310.c”,然后保存:10.把刚创建的源程序文件加入到工程项目文件中。

11.设置---目标(第1步~ 第4步)15.工程项目创建和设置全部完成!点击保持并编译16.在C8051F310中的C语言程序示例//-----------------------------------------------------------------------------// Includes// 在c8051f310.h在头文件中定义了C8051F310的寄存器、输入/输出的端口//-----------------------------------------------------------------------------#include <c8051f310.h> // SFR declarations//-----------------------------------------------------------------------------// 16-bit SFR Definitions for 'F30x//-----------------------------------------------------------------------------sfr16 TMR2RL = 0xca; // Timer2 reload valuesfr16 TMR2 = 0xcc; // Timer2 counter//-----------------------------------------------------------------------------// Global CONSTANTS//-----------------------------------------------------------------------------#define SYSCLK 24500000 / 8 // SYSCLK frequency in Hzsbit LED = P0^0; // LED='1' means ON//-----------------------------------------------------------------------------// Function PROTOTYPES//-----------------------------------------------------------------------------void SYSCLK_Init (void);void PORT_Init (void);void Timer2_Init (int counts);void Timer2_ISR (void);//-----------------------------------------------------------------------------// MAIN Routine//-----------------------------------------------------------------------------void main (void){// disable watchdog timerPCA0MD &= ~0x40; // WDTE = 0 (clear watchdog timer// enable)SYSCLK_Init (); // Initialize system clock to// 24.5MHzPORT_Init (); // Initialize crossbar and GPIOTimer2_Init (SYSCLK / 12 / 10); // Init Timer2 to generate// interrupts at a 10Hz rate.EA = 1; // enable global interruptswhile (1) // spin forever{}}//-----------------------------------------------------------------------------// SYSCLK_Init//-----------------------------------------------------------------------------//// This routine initializes the system clock to use the internal 24.5MHz / 8// oscillator as its clock source. Also enables missing clock detector reset.//void SYSCLK_Init (void){OSCICN = 0x80; // configure internal oscillator for// its lowest frequency RSTSRC = 0x04; // enable missing clock detector }//-----------------------------------------------------------------------------// PORT_Init//-----------------------------------------------------------------------------//// Configure the Crossbar and GPIO ports.// P3.3 - LED (push-pull)//void PORT_Init (void){// assignmentsXBR0 = 0x00; // no digital peripherals selectedXBR1 = 0x40; // Enable crossbar and weak pull-ups//P3MDOUT |= 0x08;P0MDOUT |= 0x03; // enable LED as a push-pull output}//-----------------------------------------------------------------------------// Timer2_Init//-----------------------------------------------------------------------------//// Configure Timer2 to 16-bit auto-reload and generate an interrupt at// interval specified by <counts> using SYSCLK/48 as its time base.//void Timer2_Init (int counts){TMR2CN = 0x00; // Stop Timer2; Clear TF2;// use SYSCLK/12 as timebase CKCON &= ~0x60; // Timer2 clocked based on T2XCLK;TMR2RL = -counts; // Init reload valuesTMR2 = 0xffff; // set to reload immediatelyET2 = 1; // enable Timer2 interruptsTR2 = 1; // start Timer2}//-----------------------------------------------------------------------------// Interrupt Service Routines//-----------------------------------------------------------------------------//-----------------------------------------------------------------------------// Timer2_ISR//-----------------------------------------------------------------------------// This routine changes the state of the LED whenever Timer2 overflows.//void Timer2_ISR (void) interrupt 5{TF2H = 0; // clear Timer2 interrupt flagLED = ~LED; // change state of LED}17.KEIL C语言与汇编语言的混合编程方法C语言中加入汇编语言模块的方法:例子:void func(){C语言代码……#pragma asmMOV R6,#23DELAY2: MOV R7,#191DELAY1: DJNZ R7,DELAY1DJNZ R6,DELAY2RET#pragma endasmC语言代码……}汇编部分需要用#pragma asm和#pragma endasm包起来18.KEIL C混合编程中的错误与解决方法1)Keil提示“asm/endasm”出错的解决方法如果只是像1中那样直接加入汇编代码的话,编译将会报错,错误如下:compiling sendata.c...sendata.c(81): error C272: 'asm/endasm' requires src-control to be active sendata.c(87): error C272: 'asm/endasm' requires src-control to be active Target not created解决方法如下:首先project workspace窗口右键单击包含有汇编部分的c语言文件名,然后在如上图所示的菜单中选择带有红色方框的选项在弹出的对话框中,将上图中红色方框选中的两项打上勾(默认的情况下,前面的勾是灰色的,要让这两项前的勾变为黑色的),点击确定。

Keilc51单片机仿真机使用说明

Keilc51单片机仿真机使用说明

K51U/Keil_CPU单片机仿真机使用说明K51U/Keil_CPU是一个支持keil c51 设计软件的软件断点仿真机。

使用一片SST89C58 单片机和一片AT90S8515 单片机来实现仿真功能(主CPU 和用户CPU),两片CPU 之间通过一根I/O 引脚通讯(通讯速率在33 兆晶振时约100KBPS),主CPU 负责跟keil c51 通讯,用户CPU 只跟主CPU 通讯.结构框图:一,主要功能和特性:1 支持串口的仿真功能2 串口中断用户可以使用3 不占用定时器24 完全仿真p0 p2 口5 支持89C52 等嵌入式CPU 仿真6 占用1 条I/O : P3.57 ISP 在线编程,在线下载8 仿真频率最高33 兆9 支持同时最多10 个断点10 支持单步,断点,全速运行11 支持汇编,c 语言,混合调试12 支持KEIL C51 的IDE 开发仿真环境UV1 UV2(V5.20 V6.02 V6.10 V6.12 V6.14)13 单步执行时间(60 毫秒)14 程序代码载入(可以重复装载,无需预先擦除用户程序空间)15 SFR 读取速度(128 个)200 毫秒16 跟踪记录(trace record)256 条17 可以仿真标准的89c51 89c52 89c58 等51 内核的单片机仿真二,如何使用:1 如何接仿真机的接线把K51U/Keil_CPU按CPU正视方向插入用户板CPU/实验仪CPU插卡区。

系统通信口:要接到你的电脑的串口,这是跟keil c51 进行通讯的接口,keil c51 通过这个串口发命令到仿真机。

(实验仪通信开关:KB6->51)用户通信口:是连接到你的仿真CPU 的串口的,用来监视你的CPU 的串口发出的数据的.如果你的程序没有用到串口,就不用接到电脑的串口. 如果你想看你的单片机的串口发出的数据,就要连接到你的电脑的串口(这时需要使用你的电脑的两个串口.)2 如何设置Keil C51 仿真机的工作参数?这里拿keil c51 V6.14 来说明keil c51,v6.02,v6.10,v6.12 的设置跟v6.14是一样的.1.先打开一个工程文件,如果你没有工程文件就要先建立一个,这里拿keil c51提供的hello.prj 为例子说明用鼠标点击菜单的project 选择open project 如图:2.选择keil\c51\examples\hello\hello,点击打开如图:3 选择菜单的Project->Option for Target 'Simulator',如图:3.1,选择C51 栏的设置如图:删掉define:里的MONITOR51 这几个字母,如果define 栏是空的可以跳过这一步:删掉MONTOR51 之后的设置如下图,不要点击确定,因为还要进行其他设置:附注:3.1 的步骤是调试keil 提供的这个Hello 工程才需要做的,对你自己建立的工程不需要这个设置,你自己的工程可以跳过这步,直接进行下一个设置.在这里用红色来写这个说明,是需要引起用户注意,一些用户买回仿真机之后,然后说调试到第二步就死机了.把仿真机退回换一个新的,结果还是这样,我检查了退回的仿真机,仿真机没有问题.而是忽略了要做这一步的设置.这是我的说明文件漏掉了这一步的说明,特此更正.4 选择debug 栏的设置项目Us e:Keil Monitor-51 DriverLoad Application at Star t:选择这项之后keil 才会自动装载你的程序代码Go till mai n:调试c 语言程序时可以选择这一项,pc会自动运行到main 程序处点击上图的Settings,打开新的窗口,Port:设置你的串口号为仿真机的串口连接线所连接的串口Baudrate:设置为57600 仿真机固定使用57600bps 跟keil 通讯Serial Interrupt:选中它Cache Options: 可以选也可以不选,推荐选它这样仿真机会运行的快一点,最后点击ok 和确定关闭你的设置5 编译你的程序选择Project -> Rebuild all target files6.编译完毕之后选择Debug->Start/Stop Debug Session,就进入仿真了7 装载代码之后在左下角显示如图Connected to Monitor-51 V1.0表示连接到仿真机仿真机的版本号为1.0 这是我的第一个版本Load "C:\\Keil\\C51\EXAMPLES\\HELLO\\HELLO"表示代码装载成功8 其他的调试方法跟软件仿真是一样的三,K51U/Keil_CPU开关设置1,如何使用用户板的晶振答:板上有一个拨码开关是8 路的默认的设置如上图设置的位置如下1 ON2 OFF3 OFF4 OFF5 OFF6 OFF7 OFF8 ON拨码开关拨到右边为ON, 左边为OFF其中的123 路拨码开关是设置使用仿真板的晶振还是用用户板的晶振默认是用仿真板上的晶振为11059200 hz 的要使用用户板的晶振请将123 路设置为1 OFF2 ON3 ON2,如何使用用户板的复位其中的第4 路拨码开关是设置使用仿真板的复位RESET 还是用用户板的复位(RESET),默认是用仿真板上的复位,就是SST89C58 的RESET 脚不连到用户板,要使用用户板的复位就是SST89C58 的RESET 脚连到用户板,请将第4 路设置:4 ON使用看门狗复位时最好设置为OFF .3,如何在仿真板脱机运行用户程序1 ON2 OFF3 OFF4 OFF5 OFF6 OFF7 ON8 ON4,如何使用板上的电平转换电路其中的第5 6 路拨码开关是设置使用仿真板的MAX232 做为电平转换还是用用户板的电平转换,默认是用用户板上的转换,要使用仿真板的串口将第5 6 路设置为5 ON6 ON这时才可以通过我提供的第二条串口线来查看串口的输入输出5, 我的程序可以使用P3.5 吗答:由于监控系统要使用P3.5 来进行通讯,最好不要使用。

单片机开发与仿真软件keilc51的使用

单片机开发与仿真软件keilc51的使用

单片机开发与仿真软件Keil C51的使用一、Keil C51 操作入门Keil C51 简介Keil C51 是德国知名软件公司Keil(现已并入ARM 公司)开发的基于8051 内核的微控制器软件开发平台,是目前开发8051 内核单片机的主流工具。

Keil 51支持汇编语言、C语言等各种开发语言。

其中,uVision2集成开发环境包含项目管理、源代码编辑和强大的程序调试环境。

uVision2调试器是一个强大的全特性调试器,允许用户在PC机上完全模拟目标程序、指令集和片内外围功能。

实验所用的是Keil C51 评估版。

Keil C51 的启动双击桌面上的“Keil uVision2”图标,启动Keil C51程序,启动界面如图1所示。

图1 Keil C51的启动界面建立第1 个Keil C51 程序Keil C51 是一个功能很强大的软件,但是使用起来并不复杂。

现在就通过建立一个简单的LED(发光二极管)闪烁发光的实例来初步掌握Keil C51的基本用法。

硬件电路参见图2,单片机I/O 输出低电平可点亮LED。

图2 LED 闪烁发光电路●新建工程。

执行Keil C51 软件的菜单“Project | N ew Project…”,弹出一个名为“Create New Project”的对话框。

先选择一个合适的文件夹准备来存放工程文件,比如“E:\Project\LedFlash”,其中“LedFlash”是新建的文件夹。

建议:今后每新建一个工程都要在适当的磁盘位置新建一个文件夹用来保存工程文件,以方便管理,并养成良好的习惯。

最后,为工程取名为“LedFlash”,并保存。

参见图3。

图3 新建Keil C51 工程●选择CPU。

紧接着,Keil C51 提示选择CPU 器件。

8051 内核单片机最早是由鼎鼎大名的Intel 公司发明的,后来其他厂商如Philips 、Atmel 、Winbond 等先后推出其兼容产品,并在8051 的基础上扩展了许多增强功能。

单片机仿真件KeilC51软件的使用教程(中文版)

单片机仿真件KeilC51软件的使用教程(中文版)

单片机仿真软件Keil C51 软件的使用教程(中文版)keil uvision2 C51 软件是当前功能最强盛的单片机 c 语言集成开发环境,本软件及视频教程能够本站下载。

下边我们经过图解的方式来Keil C51 软件的使用教程,学习最简单的,怎样输入源程序→ 新建工程→ 工程详尽设置→ 源程序编译获取目标代码文件。

第一步:双击 Keil uVision2 的桌面快捷方式(图 1),启动 Keil 集成开发开发软件。

软件启动后的界面如图 2 所示。

图 1:启动 Keil uVision2单片机集成开发环境图 2:软件启动后的界面第二步:新建文本编写窗。

点击工具栏上的新建文件快捷按键,即可在项目窗口的右边翻开一个新的文本编写窗,见图 3 所示。

图 3:新建文本编写窗第三步:输入源程序。

在新的文本编写窗中输入源程序,能够输入 C 语言程序,也能够输入汇编语言程序,见图 4。

图 4:输入源程序第四步:保留源程序。

保留文件时一定加上文件的扩展名,假如你使用汇编语言编程,那么保留时文件的扩展名为“ .asm”,假如是 C 语言程序,文件的扩展名使用“ *.C ”。

图 5:保留源程序注:第 3 步和第 4 步之间的次序能够交换,即能够先输入源程序后保留,也能够先保留后输入源程序。

第五步:新成立 Keil 工程。

如图 6 所示,点击 " 工程 " → " 新建工程 " 命令,将出现保留对话框(图 7)。

图 6:新建工程图 7:保留工程对话框在保留工程对话框中输入你的工程的文件名, Keil 工程默认扩展名为 ".uv2" ,工程名称不用输入扩展名(见图 7),一般状况下使工程文件名称和源文件名称同样即可,输入名称后保留,将出现 " 选择设施 " 对话框(图 8),在对话框中选择CPU的型号。

第六步:选择 CPU型号。

如图 8 所示,为工程选择 CPU型号,本新建工程选择了 ATMEL企业的 AT89C51单片机。

KeilC51开发系统知识

KeilC51开发系统知识

KeilC51开发系统知识简介KeilC51是一款基于Keil公司开发的微处理器开发系统。

它是针对Intel 8051系列单片机的集成开发环境(IDE),提供了丰富的工具和功能,方便开发人员进行单片机软件的编写、调试和仿真。

开发环境搭建要开始使用KeilC51开发系统,需要按照以下步骤搭建开发环境:1.下载和安装KeilC51软件,可以从Keil官方网站上下载安装程序。

2.安装所需的编译器和调试器。

KeilC51集成了多个编译器和调试器,用户可以根据需要选择合适的版本安装。

3.连接目标硬件。

将开发板或嵌入式系统与电脑连接,确保硬件的正常工作。

KeilC51的主要功能KeilC51提供了以下主要功能:1. 编辑器KeilC51内置了一个强大的文本编辑器,支持多种编程语言的语法高亮显示、代码自动补全和代码折叠等功能。

开发人员可以通过编辑器编写和修改单片机的软件代码。

2. 编译器KeilC51集成了多个编译器,可以将高级语言(如C语言)编译为可执行的机器码。

编译器还提供了丰富的编译选项,可以对代码进行优化,以提高程序的性能和效率。

3. 调试器KeilC51的调试器功能强大,可以帮助开发人员定位程序中的错误和问题。

调试器可以实时监测程序的执行状态,包括变量的值、寄存器的状态和内存的使用情况等。

开发人员可以通过调试器来查看和修改程序的运行状态,以便进行调试和测试。

4. 仿真器KeilC51还提供了仿真器的功能,可以模拟目标设备的行为,以便在不连接实际硬件的情况下进行程序的调试和测试。

仿真器可以模拟外部设备的输入和输出,以及处理器的执行过程,方便开发人员进行程序的验证和优化。

5. 项目管理KeilC51具有强大的项目管理功能,开发人员可以将相关的文件组织为一个项目,并进行版本控制和管理。

项目管理功能还可以帮助开发人员生成可执行文件和固件,方便部署和测试。

小结KeilC51开发系统是一款功能强大、易于使用的微处理器开发环境。

Keil C51软件的安装与使用

Keil C51软件的安装与使用

Keil C51软件的安装与使用一、系统要求安装Keil C51集成开发软件,必须满足一定的硬件和软件要求,才能确保编译器以及其他程序功能正常,必须具有:Pentium、Pentium-II或兼容处理器的PC;Windows95、Windows98、WindowsNT4.0、 Windows2000、Windowsxp;至少16MRAM;至少20MB硬盘。

二、软件的安装下面以Keil C51 V7.10版为例,介绍如何安装Keil uVision3集成开发环境。

2.1拿出随机赠送的系统光盘放入光驱中(假设E盘),进入E:\单片机开发工具\Keil_setup\目录,这时你会看到Setup.EXE文件,双击该文件即可安装。

2.2 这时会出现如图2.1所示的安装初始画面,稍后弹出一个安装向导对话框如图2.2所示,询问用户是安装评估版(Eval Version)还是完全版(Full Version),可以选Full Version。

图2.1图2.2在此后弹出的几个对话框中选择Next,这时会出现一个如图2.4 所示的安装路径设置对话框,默认路径是C:\KEIL,图2.3 当然用户点击Browse 选择适合自己的安装目录,如D:\Keil C51。

2.5在接下来的询问确认对话框如图2.4中选择Next命令按钮加以确认即可继续安装。

图2.42.6 接下来就是等待安装,安装完毕后单击Finish 加以确认,此时您可以在桌面上看到Keil uVision3软件的快捷图标,双击它就可以进入Keil C51集成开发环境。

3) Keil C51软件的使用Keil C51集成开发环境是以工程的方法来管理文件的,而不是单一文件的模式。

所有的文件包括源程序(包括C程序、汇编程序)、头文件、甚至说明性的技术文档都可以放在工程项目文件里统一管理。

在使用Keil C51前,您应该习惯这种工程管理方式,对于刚刚使用Keil C51的用户来说,一般按照以下步骤来创建一个自己的Keil C51应用程序。

KEIL C51使用说明

KEIL C51使用说明

20.1 工程项目的建立、源程序文件的建立及加载Keil C51软件UVision打开后,程序窗口的左边有一个项目工作区管理窗口,该窗口有3个标签,分别是Files、Regs和Books,这3个标签页分别显示当前项目的文件结构、CPU的寄存器及部分特殊功能寄存器的值(调试时才出现)和所选CPU的附加说明文件,如果是第一次启动Keil C51,那么这3个标签页全是空的(图20-1)。

图20-1 Keil C51打开后界面20.1.1 建立工程文件在单片机开发项目中,有时有多个的源程序文件,并且还要为项目选择CPU以确定编译、汇编、连接的参数,指定调试的方式等。

为便于管理,Keil C51使用工程项目(Project)的方法,将这些参数设置和所需的所有文件都放在一个工程项目中,只能对工程项目而不能对单一的源程序进行编译(汇编)和连接等操作。

一、先在硬盘上建立一个需保存工程文件的目录(例如在“我的文档” 中建立一个test的文件夹),为便于管理及使用,目录名称可与工程名称一致。

二、1、选择“工程>新工程”菜单(图20-2)。

弹出对话框,要求给将要建立的工程起一个名字,可以在编辑框中输入一个名字(例如test),扩展名不必输入(默认的扩展名为.uv2)。

点击“保存”按钮(图20-3)。

2、随后弹出一个“为目标target选择设备”(Select Device for Target “Target1”)对话框,这个对话框要求选择目标CPU(即你所用单片机开发板芯片的型号),Keil C51支持的CPU很多,我们选择Atmel公司的AT89C51(或AT89S51)芯片,用鼠标单击Atmel前的“+”号,选择“AT89C51(或AT89S51)”单片机后按确定(图20-4)。

随即系统弹出是否拷贝8051启动代码到工程项目并添加到当前项目组的提示(Copy Standard 8051 Startup Code to Project Folder and Add File to Project ?),我们选否。

Keil C51仿真器的使用说明

Keil C51仿真器的使用说明

Keil C51仿真器的使用说明一、Keil uVison3编程软件的安装(1)如计算机中已经安装此软件,无须再安装。

(2)打开随箱的软件安装光盘,在keil750AHK(3000TC)\setup 目录下,双击setup图标,显示如图2,点击Full V ersion,顺序点击Next、Y es等,在图3中,输入序列号:k1dzp-5iush-a01ue,其他任意。

安装完成后,默认安装目录为C:\Keil,此目录下还包括一些实验例程。

图2图3二、Keil C51仿真器的使用(1)仿真器的连接:将仿真器的40孔插头插入图4所示的插座中,另一端的USB口插入计算机的USB插孔中。

(2)仿真器驱动程序的安装:打开实验箱电源开关,在计算机上将显示“未知硬件”,按照图5、6的指示,安装硬件驱动(驱动程序在随箱的软件光盘中)。

驱动安装后,在计算机硬件属性串口中可以看到如图7所示的新USB接口设备ProlificUSB-to-Serial Bridge(COM5),COM5表示此设备占用了5号COM口(注:不同的计算机安装后占用的COM口可能不同)。

在图7中点击上端的“端口设置”,可看到如图8所示,此窗口用于设置串口的的波特率等信息,设置的各项参数要与Keil uVision软件中串口设置的一样,方能保证通讯正常。

图4图5图6图7图8(3)K eil uVision2软件中对仿真器的设置:启动Keil uVision2软件,在主界面中,点击工具栏Project(项目)选项中的New Project(新项目),如图9,文件名任意,点保存后出现图10,在器件目录的Atmel目录中选择所要仿真的芯片(如:A T89S51)后确认。

点击主界面的工具栏Project(项目)选项中的“为目标1设置选项”,出现如图11所示,此界面用于设置项目的各项参数,在“目标”选项中设置单片机的晶振时钟,在“调试”选项中,选择使用“Keil Monitor-51 Driver”仿真器,点击框后的“设置”按钮,弹出仿真器通讯参数设置选项,这里的参数要设置与计算机中串口设置的参数一致(见第2步)。

使用keilc51软件的开发流程

使用keilc51软件的开发流程

使用Keil C51软件的开发流程1. 准备工作在使用Keil C51软件进行开发之前,需要进行以下准备工作: - 下载并安装Keil C51软件 - 确保计算机上安装了相应的驱动程序 - 准备所需的硬件设备和器件2. 创建新项目•打开Keil C51软件,选择“File”菜单,点击“New Project”选项•在弹出的对话框中,选择项目保存的文件夹和名称,点击“Save”•在弹出的对话框中,选择“8051”系列的芯片类型,点击“OK”•在弹出的对话框中,选择芯片型号,点击“OK”3. 配置项目选项•在项目窗口中,点击鼠标右键,选择“Options for Target”选项•在弹出的对话框中,可以进行各项项目选项的配置,如存储器映射、优化选项等•配置完成后,点击“OK”按钮保存配置4. 编写程序代码•在项目窗口中,选择“Source Group”文件夹,点击鼠标右键,选择“Add Files to Group”选项•在弹出的对话框中,选择要添加的代码文件,点击“Add”•在代码编辑器中编写程序代码5. 编译程序•点击Keil C51软件界面的“Build”按钮,开始编译程序•若编译过程中出现错误提示,需要根据错误信息进行代码修改•编译无误后,将生成的目标文件保存在指定的文件夹中6. 调试程序•连接硬件设备到计算机上•在Keil C51软件界面的“Debug”选项中,选择“Start/Stop Debug Session”选项•在弹出的对话框中,选择调试使用的硬件接口,点击“OK”•进入调试模式,可以进行单步调试、断点设置等操作,查看程序运行情况7. 烧写程序•在Keil C51软件界面的“Flash”选项中,选择“Download”选项•在弹出的对话框中,选择要烧写的目标芯片和烧写方式,点击“OK”•点击“Start”按钮开始烧写程序到目标芯片中•烧写完成后,断开硬件连接,程序即可在目标芯片上运行8. 测试与调试•将目标芯片插入到目标系统中•针对项目的需求,进行测试和调试工作•根据测试结果进行代码的优化和修改,重新编译、烧写程序9. 打包与发布•最终确定程序无误后,可以将程序进行打包•打包后的程序可以发布到目标设备或进行产品交付以上就是使用Keil C51软件的开发流程的基本步骤。

单片机KeilC51软件的使用方法

单片机KeilC51软件的使用方法

Keil C51软件的使用Keil C51 软件是众多单片机应用开发的优秀软件之一,它集编辑、编译、仿真于一体,支持汇编和 C 语言的程序设计,界面友好、易学易用。

下面介绍Keil C51软件的使用方法:1.启动Keil C51,界面如下图。

启动Keil C51时的屏幕进入Keil C51后的编辑界面2.建立一个新工程。

(1)单击工程菜单,在弹出的下拉菜单中选中新建工程选项。

(2)然后选择你要保存的路径,输入工程文件的名字,比如保存到C51目录里,工程文件的名字为C51,如下图所示,然后点击保存。

(3)这时会弹出一个对话框,要求你选择单片机的型号,你可以根据你使用的单片机来选择,Keil C51几乎支持所有的51核的单片机,我这里还是以大家用的比较多的Atmel 的89C51来说明,如下图所示,选择89C51之后,右边栏是对这个单片机的基本的说明,然后点击确定。

(4)完成上一步骤后,屏幕如下图所示。

(5)单击文件菜单,再在下拉菜单中单击新建选项,屏幕如下图所示。

此时光标在编辑窗口里闪烁,这时可以键入用户的应用程序了,建议首先保存该空白的文件,单击文件菜单,在下拉菜单中选中另存为选项单击,屏幕如下图所示,在文件名栏右侧的编辑框中,键入欲使用的文件名,同时,必须键入正确的扩展名。

编写程序,则扩展名必须为.asm。

然后,单击保存按钮。

回到编辑界面后,单击目标1前面的+号,然后在源程序组1上单击右键,弹出如下菜单,然后单击增加文件到组‘源程序组1’,屏幕如下图所示,选中c51.asm,然后单击Add,屏幕如下图所示,(7)输入如下的汇编语言源程序,程序输入完毕后如下图所示。

(8)单击工程菜单,再在下拉菜单中单击建造目标选项(或者使用快捷键F7),编译成功后,再单击调试菜单,在下拉菜单中单击开始/停止调试(或者使用快捷键Ctrl+F5),屏幕如下所示。

(9)调试程序,在上图中单击调试菜单,在下拉菜单中单击运行到选项(或者使用快捷键F5),然后再单击调试菜单,在下拉菜单中单击停止运行选项(或者使用快捷键Esc),通过寄存器窗口、存储器窗口以及外围设备窗口等就可以看到程序运行后的结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机开发与仿真软件Keil C51的使用一、Keil C51 操作入门Keil C51 简介Keil C51 是德国知名软件公司Keil(现已并入ARM 公司)开发的基于8051 内核的微控制器软件开发平台,是目前开发8051 内核单片机的主流工具。

Keil 51支持汇编语言、C语言等各种开发语言。

其中,uVision2集成开发环境包含项目管理、源代码编辑和强大的程序调试环境。

uVision2调试器是一个强大的全特性调试器,允许用户在PC机上完全模拟目标程序、指令集和片内外围功能。

实验所用的是Keil C51 评估版。

Keil C51 的启动双击桌面上的“Keil uVision2”图标,启动Keil C51程序,启动界面如图1所示。

图1 Keil C51的启动界面建立第1 个Keil C51 程序Keil C51 是一个功能很强大的软件,但是使用起来并不复杂。

现在就通过建立一个简单的LED(发光二极管)闪烁发光的实例来初步掌握Keil C51的基本用法。

硬件电路参见图2,单片机I/O 输出低电平可点亮LED。

图2 LED 闪烁发光电路●新建工程。

执行Keil C51 软件的菜单“Project | N ew Project…”,弹出一个名为“Create New Project”的对话框。

先选择一个合适的文件夹准备来存放工程文件,比如“E:\Project\LedFlash”,其中“LedFlash”是新建的文件夹。

建议:今后每新建一个工程都要在适当的磁盘位置新建一个文件夹用来保存工程文件,以方便管理,并养成良好的习惯。

最后,为工程取名为“LedFlash”,并保存。

参见图3。

图3 新建Keil C51 工程●选择CPU。

紧接着,Keil C51 提示选择CPU 器件。

8051 内核单片机最早是由鼎鼎大名的Intel 公司发明的,后来其他厂商如Philips 、Atmel 、Winbond 等先后推出其兼容产品,并在8051 的基础上扩展了许多增强功能。

在这里可以选择Philips 的第1 个器件“80/87C51”,该器件与Intel 的8051 完全兼容。

参见图4 。

图4 选择CPU●接下来弹出一个如图5 所示的对话框。

该对话框提示是否要把标准8051 的启动代码添加到工程中去。

Keil C51 既支持C 语言编程也支持汇编语言编程。

如果打算用汇编语言写程序,则应当选择“否(N)”。

如果打算用C 语言写程序,一般也选择“否(N)”,但是,如果用到了某些增强功能需要初始化配置时,则可以选择“是(Y)”。

在这里,我们选择“否(N)”,即不添加启动代码。

图5 选择是否要添加启动代码至此,一个空的Keil C51 工程建立完毕。

●执行菜单“File | N ew…”,出现一个名为“Text n”(其中n 表示序号)的文档。

●接着执行菜单“File | S ave”,弹出一个名为“Save As”的对话框。

将文件名改为“”,然后保存,参见图6 。

注意:扩展名“.c”不可省略。

图6 保存新建的源程序文件●添加源程序文件到工程中。

现在,一个空的源程序文件“”已经建立,但是这个文件与刚才新建的工程之间并没有什么内在联系。

我们需要把它添加到工程中去。

单击Keil C51 软件左边项目工作窗口“Target 1 ”上的“+”,将其展开。

然后右击“Source Group 1”文件夹,会弹出如图7 所示的选择菜单。

单击其中的“Add Files to Group 'Source Group 1' ”项,将弹出如图8 所示的对话框。

●先选择文件类型为“C Source file (*.c)”,这时,对话框内将出现刚才保存过的“”。

单击文件“”,再按一次“Add”按钮(请不要多次点击“Add” 按钮),最后按“Close”按钮。

这时,源程序文件“ ”已经出现在项目工作窗口的“Source Group 1 ”文件夹内,可以单击左边的“+”展开后查看。

图7 准备添加源程序文件到工程中图8 向工程中添加源程序文件●现在开始输入源程序。

先最大化“”源程序窗口,然后请按以下程序清单输入程序代码。

程序清单: LED 闪烁发光程序/********************************************************************************程序名称:LED 闪烁发光硬件接法:控制LED,低电平点亮运行效果:LED 亮200ms ,灭800ms,反复循环*******************************************************************************/#include <>就表示程序没有问题了(至少是在语法上不存在问题了)。

如果存在错误或警告,则仔细检查程序是否与程序清单一致。

修改后,再编译,直到通过为止。

●编译后的结果会生成Intel HEX 格式的程序文件“”。

该文件可以被专门的芯片烧写工具载入并最终烧录到具体的芯片中。

芯片安装到自己的电路板上,通电,就可以运行里面的程序了。

还有一类叫做“ISP” (In SystemProgramming )的下载方法,也能够把程序文件烧录到芯片内,但是采用的是串行在线方式,芯片不必从电路板上取下。

ISP 方式编程速度较慢但操作要方便些。

Philips 的多款8051 内核单片机都能很好的支持ISP 下载功能,比如P89V51RB2 、P89V51RD2 等等。

新建A51 汇编工程Keil C51 软件也支持A51 汇编编程。

建立A51 工程的操作步骤与建立C51 工程基本相同,但有两个要点请注意:●新建的源程序文件名要以”.A51”或“.ASM”作为后缀。

● A51 源程序添加到工程中时,文件类型要选择“Asm Source file(*.s*; *.src;*.a*)”。

其它操作步骤都跟建立C51 工程相同。

二、在Keil C51 下调试程序Keil C51 的调试功能非常强大,现在仍然以LED 闪烁发光程序为例,来具体了解如何进行仿真操作。

进入仿真状态如果程序编译通过,就可以仿真了。

在仿真之前,有一项参数最好配置一下,仍然按“ ” 图标进入编译环境设置,找到“Xtal (MHz)”项,填入。

最后点击“确定”。

进入仿真状态很简单,直接点击工具栏红色的“ ”图标。

认识各个仿真窗口图10 Keil C51 源程序窗口1. 源程序窗口Keil C51 调试界面的中间是源程序窗口,参见图10 。

黄色箭头“ ”所指为当前即将执行但还没有执行的代码。

以深灰色标记的程序行是可以执行的代码(当然,在调试过程中未必一定要去执行)。

以浅灰色标记的程序行不可作为代码来执行,它们是注释、空行、标号或ROM 数据表。

以绿色标记的程序行表示曾经执行过的代码。

2. 寄存器窗口图11 Keil C51 寄存器窗口Keil C51 调试界面的左边是寄存器窗口,参见图11 。

8051 的工作寄存器(R0~R7)和系统寄存器(a、b、sp、dptr、PC、psw)都列出来了。

Value 栏显示的是寄存器的当前数值。

如果在调试过程中某个寄存器的值有变化,则会用蓝色的背景标记。

单击psw 寄存器左边的“+”,展开后还可以看到其每一位的情况。

3. 汇编窗口单击工具栏的“ ”图标,源程序窗口会自动切换成汇编窗口,参见图12。

在汇编窗口里,我们可以看到每条指令的存储地址和编码等信息。

再次单击“ ”,回到源程序窗口。

4. 存储器窗口单击工具栏的“ ”图标,将显示出存储器窗口,参见图13。

8051 单片机的存储器分为多个不同的逻辑空间。

如果要观察代码存储器的内容,就在地址栏“Address:”内输入“C: 地址”,例如:C:0080H 。

同理,观察内部数据存储器输入“I:地址”,观察外部数据存储器输入“X:地址”。

拖动存储器窗口右边的滚动条可观察其它存储单元。

存储器窗口有“Memory #1~Memory #4 ”共4 个观察子窗,可以用来分别观察代码存储器、内部数据存储器和外部数据存储器。

存储器的内容是可以修改的。

用鼠标右击打算要修改的存储单元,选择“Modify Memory at … ”项,弹出修改对话框,可以随意修改存储单元的内容。

图12 Keil C51 汇编窗口图13 Keil C51 存储器窗口图14 Keil C51 变量观察和堆栈窗口5、变量观察和堆栈窗口单击工具栏的“”图标,将显示变量观察和堆栈窗口(Watch & Call Stack Window),参见图 14。

在Locals 标签页,会自动显示局部变量的名称和数值。

在C 语言程序的函数中,每一对花括号“{}”内定义变量都是局部变量,能够自动显示。

在“Watch ”标签页内,先用鼠标点击一次“type F2 to edit”,再按功能键“F2”,输入所要观察的局部或全局变量的名称,回车后就能显示出当前数值。

在“Call Stack ”标签页内,可以实时地观察到堆栈的使用情况。

程序的运行控制Keil C51 能够实现程序单步和全速运行,具体由工具栏上的按钮来实现:●复位按钮:单击此图标,能够使程序复位,程序将从地址C:0000H 处执行。

●全速运行:单击此图标,能够使程序全速运行。

●停止运行:该图标原来是灰色(不可操作),在进入全速运行状态后会变成红色。

如果要停下来,则可以按此图标。

●单步进入:按此图标可以实现程序的单步执行。

在遇到函数调用时,会跟踪进入函数体。

●单步跳过:单步执行,遇到函数时视作1 条指令来执行,不会跟踪进入。

●单步跳出:在调试C 语言程序时,如果希望从某个函数中提前返回,则可以按此图标。

●执行到光标:用鼠标单击某条可执行的代码(深灰色标记的程序行)。

然后按此图标,则程序开始全速执行,当遇到光标所在的行时,会自动停下来。

如果单击不可执行的程序行(有浅灰色标记),试图让程序执行到该行,是不允许的,“ ” 图标也会立即变成灰色,不让操作。

●设置/清除断点:Keil C51 支持断点设置功能。

单击需要设置断点的行,再单击此图标,我们会看到该行被一个红色的小方块标记。

当程序全速运行时遇到断点,便会自动停下来。

Keil C51 允许在同一个程序里设置多个断点。

清除某个断点的方法是,将光标停在该行上,再按一次“ ”图标。

另外一种设置/清除断点的快捷方法是,用鼠标在目标程序行的空白处双击,不妨试一试。

●清除所有断点:如果设置了多个断点,想一并清除,则可以按此图标。

图15 外围设备中的P1 和T0 对话框外围设备访问Keil C51 的一大特色是在仿真调试时支持对外围设备的访问。

相关文档
最新文档