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 的基础上扩展了许多增强功能。
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声明,见上例。
第11章 Keil C51 软件的使用
3."Listing"标签属性 Listing"标签属性 "Listing"标签页用于调整生成的列表文件选项,一般常设置成如 图11-17所示.
图11-17 "Listing"属性标签
Select Folder for Listings:选择列表文件存放的目录, 默认为工程文件所在的目录. *.lst *.m51文件对了解程序用到了那些idata,data,bit, xdata,code,RAM,ROM,Stack等有很重要的作用. Assembly Code生成汇编的代码,根据需要决定是否选择. 4."C51"标签页 C51"标签页 "C51"标签页用于对Keil的C51编译器编译过程进行控制,其 中比 较常用的是"Code Optimization"组,如图11-18所示. 该组中"Level"是优化等级,C51在对源程序进行编译时可 以对代码多至9级优化,默认使用第8级,一般不必修改.如果在 编译中出现一些问题可以降低优化级别试一试. "Emphasis"是选择编译优先方式,第一项是代码量优化(最 终生成的代码量小),第二项是速度优先(最终生成的代码速度 快),第三项是默认的,是速度优先,可根据需要更改.
第11章 Keil C51 软件的使用 11章
11.1 工程文件的建立及设置 11.2 程序调试 11.3 Keil 程序调试窗口
Keil C51 uVision2是目前最流行的C51集成开发环境(IDE),集 编辑,编译,仿真于一体,支持C51及汇编编程,界面友好,易学易 用.下面通过简单的编程,调试,说明Keil C51软件的基本使用方法 和基本的调试技巧. 进入Keil C51后,屏幕如图11-1所示.几秒后出现Keil C51应用程 序界面,如图11-2所示.
Keil C51实用操作
Keil C51实用操作(使用汇编语言)一、建立一个工程项目、选择芯片并确定选项1、可先在D盘上建立一个名为“mytest”的文件夹。
2、进入Keil C51界面,如图1所示。
(图1)3、单击【工程】\【新建工程】选项。
在弹出的【新建工程】窗口中的【文件名】中输入一个文件名如:“test1”,再单击【保存】按钮。
4、在弹出的【为目标’目标1’选择设备】对话框中,选择单片机的型号,此处选【Atmel】\【AT89C51】,如图2所示,再单击【确定】按钮。
(图2)5、在打开的窗口中,单击【工程】\【目标’目标1’属性】选项。
在【目标’目标1’属性】窗口中,设置【目标】\【X晶振频率】选项的晶振频率。
此处设置晶振频率为:11.0592,其它选项可选择默认设置,如图3所示。
(图3)7、选择【输出】\【E生成HEX文件】选项,其它选项可选择默认设置,如图4所示,单击【确定】按钮。
(图4)二、建立源程序文件8、单击【文件】\【新建】选项,在打开的窗口中输入源程序文件。
9、单击【文件】\【另存为】选项,此处设置文件名为:“test1.asm”,注意扩展名为“.asm”。
单击【保存】按钮,将输入的源程序文件保存下来。
三、添加文件到当前项目组中10、单击【目标1】前面的【+】号,再右击【源程序组1】,如图5所示,在弹出的快捷菜单中单击【增加文件到组’源程序组1’】选项。
(图5)11、在打开的【增加文件到组’源程序组1’】窗口中,选择【文件类型】为【Asm 源文件】,【文件名】处选择上面建立的“test1.asm”文件,如图6所示,单击【Add】按钮,再单击【关闭】按钮。
(图6)四、编译(汇编)文件12、单击【工程】\【重新建造所有目标文件】选项,编译源程序。
此时窗口显示编译结果,如图7所示。
(图7)五、软件模拟仿真调试13、单击【调试】\【开始/停止调试】选项,进入软件模拟仿真调试界面,此处并选择【外围设备】\【I/O-Ports】\【Port 1】选项,打开P1输出窗口。
Keil C51 使用
Keil 软件的使用一、软件启动在桌面上双击,或在开始→程序→。
二、界面图1、首先建立一个工程点击Project→New Project 如下图所示。
则会出现如下图。
注意工程保存在什么位置(要方便自己查找),输入文件,保存类开会自动生成,不用管,然后点保存,则会出如下图则会出现。
则出现可点是或否,影响不大。
则会出现:这样应建立了一个新的工程。
可在保存的位置找工程文件名。
2、建立一个汇编语言文件。
点击File→New,如下图所示则出现Text1为文件名,先要保存一下。
选为文件保存的位置,文件名要注意一下,用汇编语言编写则后缀(扩展名)为.ASM,如果用C 语言编写则为.C。
设置好后点击保存,则程序文件应建立好了。
在保存的位置可找到该文件。
3、程序录入编辑及编译(1)在程序编辑区录入程序(2)将程序文件添加到工程文件中右键单击Source Group1如下图则出现点击,Add Files to Group Source Group 1 则出现如下图选好文件类型为C Source file (*.C),再在保存位置中找到刚才编辑好的程序文件,然后点Add 即可。
(3)必要的参数设置点击Project→Option for Target则会出现如下图:在Target 选项卡中设置好晶振频率。
再选Output选项卡,如下图:设置好各项后点击确定,必要的参数应设置完毕。
(4) 程序编译检查点击Project→Build target files 如下图所示则在界面的最下面出现指示:如果有错误要改正程序的错误,再进行编译,一直到没有错误为止,要生成HEX文件,我们才能下载到单片机中。
程序下载到单片机的程序应用1、启动软件:在桌面找到图,双击将会出现如下图必须要选择正确的端口及单片机型号,然后调入从KEIL C51编译生成的HEX文件。
2、调入HEX文件:左键单击调入FLASH,如下图所示:将会出现HEX文件选择窗口:选择正确文件后,点打开,则出现如下图3、将HEX文件下载到单片机芯片选择正确后,检查单片机是否连接好,准备好后就点击自动,则会出现如下图,程序下载完成后,就会看到单片机板上LED灯在点亮了。
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的使用
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 的入门教程。
KEILC51的使用
KEILC51的使用
1.环境搭建
2.创建一个新项目
打开KEIL C51后,首先点击"File" -> "New" -> "Project"来创建一个新项目。
在弹出的对话框中,选择合适的项目名称和存储位置,然后点击"OK"。
3.添加源代码文件
在新建的项目中,右键点击"Source Group 1" -> "Add New Item"来添加源文件。
用户可以选择C语言或汇编语言来编写源代码文件。
4.编写代码
5.编译代码
当代码编写完成后,用户可以点击"Project" -> "Build Target"来编译代码。
KEIL C51会自动将代码转换为相应的机器码,并生成可执行文件。
7.调试代码
8.仿真和模拟
9.代码优化
10.版本管理
在KEILC51中,用户还可以使用版本控制工具来管理项目代码的版本。
这些工具可以帮助用户跟踪代码的修改历史,并提供代码版本的回退和合
并功能。
KeilC51的使用
Kei使用说明
1. 软件的安装
2. 安装完之后打开“Keil uVision2”
3. 建立一个“Project”
点击“Project”->“New Project…”,选择工程文件要存放的路径,输入工程文件名LED,单击保存。
4. 弹出选择CPU 厂商和型号的对话框
5. 我们这里使用的是Atmel 公司的AT89C51
6. 下面的对话框,选择“是”
7. 如下图,新建一个51文件;
8. 点击保存后,如下图:
9. 接下来就是将ASM文件添加到这个Project中
点击“Source Group1”使其反白显示,然后,点击鼠标右键,出现一个下拉菜单,如下图所示,选中其中的“Add file to Group”Source Group1”,出现一个对话框,要求寻找源文件。
10. 将刚才新建的“LED.ASM”文件“Add”进来
11. 参数设置
◆单击“Option for Target”按钮
◆弹出如下下图所示对话
12. 在编辑框里面输入以下代码
13. 编译
14. 调试
15. 调试时常用的窗口
存储器窗口
存储器窗口中可以显示系统中各种存储器中的值,通过在Address后的编辑框内输入“字母:数字”即可显示存储器某一单元中的值。
其中字母可以是C(可以省略)、D和X,分别代表程序存储器空间、片内数据存储器空间和片外数据存储器空间;数字代表想要查看单元的地址。
工程窗口寄存器页
外围接口。
keilc51使用说明
3)移走项目:在欲移走的文件上点击鼠 标右键,会弹出一菜单,执行其中的 “Remove File ‘***’”命令即可。 4)对文件分组:可以按功能对项目管理 器中的文件分成组,如图4-7所示。先使用 图4-9中的“Manage Components”命令建立 组,然后用鼠标直接在组之间移动文件即 可。
九、视窗(Windows)菜单
1)Cascade: 以相互重叠方式排列文件窗口 2)Tile Horizontally: 以不重叠方式水平排列文件窗口 3)Tile Vertically: 以不重叠方式垂直排列文件窗口 4)Arrange Icons:在窗口的下方排列图标 5)Split:将当前窗口分成几个窗格 6)Close All:关闭所有窗口
14)Serial Windows #1: 显示或隐藏串行口窗口1 15)Serial Windows #2: 显示或隐藏串行口窗口2 16)Toolbox:显示或隐藏工具箱 17)Periodic Windows Update: 在调试运行程序时,周期刷新调试窗口 18)Workbook Mode: 显示或隐藏工作簿窗口的标签 19)Option…: 设置颜色、字体、快捷键和编辑器选项
14)Enable/Disable Trace Recording: 使能/禁止跟踪记录 15)View Trace Records: 显示执行过的指令 16)Memory Map…: 打开存储空间配置对话框 17)Performance Analyzer…: 打开性能分析设置窗口 18)Inline Assembly…:对某一行重新汇编, 且可以修改汇编代码 19)Function Editor…: 编辑调试函数和调试配置文件
通过串行口,PC机与目标板进行通信,利 用 Monitor51,在PC机上显示程序的运行情况
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使用详解 (一)(2009-04-21 14:10:43)标签:keil单片机it分类:资源查询第一章 Keil C51开发系统基本知识第一节系统概述Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
用过汇编语言后再使用C来开发,体会更加深刻。
Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
下面详细介绍Ke il C51开发系统各部分功能和使用。
第二节 Keil C51单片机软件开发系统的整体结构C51工具包的整体结构,如图(1)所示,其中uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。
开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。
然后分别由C51及A51编译器编译生成目标文件(.OBJ)。
目标文件可由LI B51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。
ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。
第三节 Keil C51工具包的安装1. C51 for Dos在Windows下直接运行软件包中DOS/C51DOS.exe然后选择安装目录即可。
完毕后欲使系统正常工作须进行以下操作(设C:/C51为安装目录):修改Autoexec.bat,加入path=C:/C51/BinSet C51LIB=C:/C51/LIBSe t C51INC=C:/C51/INC然后运行Autoexec.bat2. C51 for Windows的安装及注意事项:在Windows下运行软件包中WIN/Setup.exe,最好选择安装目录与C51 for Dos相同,这样设置最简单(设安装于C:/C51目录下)。
Keil C51使用详解
第二章 Keil C51软件使用详解... 10
第一节 Keil C51编译器的控制指令... 10
1. 源文件控制类... 10
2. 目标文件(Object)控制类:... 10
3. 列表文件(listing)控制类:... 10
第三章 Keil C51 vs 标准C.. 15
第一节 Keil C51扩展关键字... 15
第二节 内存区域(Memory Areas):... 16
1. Pragram Area:... 16
2. Internal Data Memory: 16
3. External Data Memory. 16
2. C51 for Windows的安装及注意事项:... 7
第四节 Keil C51工具包各部分功能及使用简介... 7
1. C51与A51. 7
2. L51和BL51. 8
3. DScope51,Tscope51及Monitor51. 8
3. MON51的配置... 13
4. 串口连接图:... 13
5. MON51命令及使用... 14
第四节 集成开发环境(IDE)的使用... 14
1. Ishell for Dos的使用... 14
2. uVision for windows的使用... 15
3. STDIO.H.. 28
4. STDLIB.H.. 28
5. STRING.H.. 28
第六章 Keil C51例子:Hello.c.. 29
第一节 uVision for Windows的使用步骤... 29
单片机仿真软件KeilC51软件的使用教程
单片机仿真软件KeilC51软件的使用教程单片机仿真实验步骤第一步:双击Keil uVision2的桌面快捷方式,启动Keil集成开发开发软件。
第二步:新建文本编辑窗。
点击工具栏上的新建文件快捷按键,即可在项目窗口的右侧打开一个新的文本编辑窗。
第三步:输入源程序。
在新的文本编辑窗中输入源程序,可以输入C语言程序,也可以输入汇编语言程序。
第四步:保存源程序。
保存文件时必须加上文件的扩展名,如果你使用汇编语言编程,那么保存时文件的扩展名为“.asm”,如果是C语言程序,文件的扩展名使用“*.C ”。
注:第3步和第4步之间的顺序可以互换,即可以先输入源程序后保存,也可以先保存后输入源程序。
第五步:新建立Keil工程。
点击"工程" →"新建工程" 命令,将出现保存对话框。
在保存工程对话框中输入你的工程的文件名,Keil工程默认扩展名为".uv2",工程名称不用输入扩展名,一般情况下使工程文件名称和源文件名称相同即可,输入名称后保存,将出现"选择设备"对话框,在对话框中选择CPU的型号。
第六步:选择CPU型号。
为工程选择CPU型号,本新建工程选择了ATMEL公司的AT89C51单片机.第七步:加入源程序到工程中。
在选择好CPU 型号后,点击"确定"按钮返回主界面,此时可见到工程管理窗中出现“Target 1”,点击“Target 1”前面的“+”号展开下一层的“Source Group 1”文件夹,此时的新工程是空的,“Source Group 1”文件夹中什么文件都没有,必须把刚才输入的源程序加入到工程当中。
如图9所示,右击工程管理窗中的“Source Group 1”,出现下拉菜单,点击“增加文件到组'Source Group 1'”命令,将出现添加文件对话框。
在添加文件对话框中,找到要添加到工程中的源程序文件。
KEILC51使用说明
2015-2-3 4
图 1-6 把文件加入到项目文件组中
2015-2-3 5
(5)编译运行。看图 1-7 ,图中 1、2、3 都是编译按钮,
不一样是 1 是用 于编译单个文件。2 是编译链接当前项目,如 果先前编译过一次之后文件没有做动编辑改动, 这个时候再点 击是不会再次重新编译的。3 是重新编译,每点击一次均会再次 编译链接一次,不 管程序是否有改动。在 3 右边的是停止编译 按钮,只有点击了前三个中的任一个,停止按钮 才会生效。5 是菜单中的它们。在 4 中能看到编译的错误信息和使用的系统 资源情况等, 以后我们要查错就靠它了。6 是有一个小放大镜 的按钮,这就是开启\关闭调试模式的按钮, 它也存在于菜单 Debug-Start\Stop Debug Session,快捷键为 Ctrl+F5。
附:keil C51 使用简介
(1)点击 Project 菜单,选择弹出的下拉式菜单中 的 New Project,如图 1-2。
图 1-2 New Project 菜单
2015-2-3 1
(2)选择所要的单片机,这里选择常用的 Ateml 公 司的 AT89c52。此时屏幕如图 1-4 所示。
这个操作也能通过菜单 File-New 或 快捷键 Ctrl+N 来实现。好了, 现在能编写程序了。
图 1-5 新建程序文件 2015-2-3
3
(4)保存文件,程序命名为 test1.c,保存在项目所 在的目录中,这个时候您会发现程序单词有了不一样的 颜色,说明 KEIL的C语言语法检查生效了。如图 1-6 鼠标在屏幕左边的 Source Group1 文件夹图标上右击弹 出菜单,在这里能在项目中增加减少文件等操作。选 “Add File to Group ‘Source Group 1’” 弹出文件窗口, 选择刚刚保存的文件,按 ADD 按钮,关闭文件窗,程 序文件已加到项目中了。这个时候在 Source Group1 文 件夹图标左边出现了一个小+号说明,文件组中有了文 件,点击它能展开查看。
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 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步)。
Keil C51使用和操作步骤
Keil软件安装完毕后,会在桌面上生成Keil uVision4图标,双 击该图标,或选择“开始”-“程序”-Keil uVision4,卽 可进入Keil软件的集成开发环境。
1、工程项目的建立 (1)点击 “Project->NewProject ”菜单,出现一个对 话框,要求给将要建立的工程起一个名字,你可以在编缉框中 输入一个名字(设为 exam1),不需要扩展名。点击“保存” 按钮,将你的项目文件名存入指定的路径下的文件夹里,此时 会出现第二个对话框。 (需要预先/或即时在指定的路径下建立一个文件夹) (2)选择你所用CPU芯片的型号。 (3)选择 Atmel 公司的 AT89C51 芯片。 (4)点击“OK”确认 (5)点击“否”后建立项目完成
(2)给源文件起个名,请记住,文件名后面一定要加上后缀“.C”,点击快捷键“保存”,将 文件保存在指定的文件夹里。
3、给工程加入源文件
(1)在项目管理窗里,用右键点击“Source Group 1”
出现下一个提示: (2)点击“ (3)选择刚建立的源程序,点击“Add”
4、工程项目的设置
(1)点击项目管理窗中的 出现一个新的对话窗:在Greate HEX File HEXFomat选项上打上勾
” 出现一个新的对话框。
2、源文件的建立
(1)使用菜单“File ->New”或者点击工具栏的新建文件按钮,即可在项目窗口的右侧打开一个 新的文本编缉窗口,在该窗口中输入以下C语言源程序。
#include <reg51.h> //包含头文件REG51.H,定义了51单片机的 特殊功能寄存器。 sbit P2_0=P2^0; //定义位名称 void delay(unsigned char i); //延时函数声明 void main() //主函数 { while(1) { P2_0=0; //点亮信号灯 delay(255); //调用延时函数,实际变量为255 P2_0=1; //熄灭信号灯 delay(255); //调用延时函数,实际变量为255 } } //函数名:delay //函数功能:实现软件延时 void delay(unsigned char i) //延时函数,无符号字符型变量i为形式参数 { unsigned char j,k; //定义无符号字符型变量j和k for(k=0;k<i;k++) //双重for循环语句实现软件延时 for(j=0;j<255;j++); }
单片机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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
KeilC51使用说明首先启动Keil μVision2程序,首次进入 Keil μVision2的编辑界面如图1所示,否则,会打开用户前一次处理的工程。
图1 首次进入Keil μVision2的编辑界面下面通过简单的编程、调试,引导大家学习Keil μVision2软件中Keil Monitor-51 Driver仿真器的基本使用方法和基本调试技巧。
1 工程的建立单击“项目->新建项目…”菜单,弹出创建新工程对话框,如图2所示。
选择你要保存的路径,输入工程文件的名字, 不需要输入扩展名。
比如保存到JY_E2X00目录里,工程文件的名字为Test1,如图(2)所示,然后点击“保存”,保存后的文件扩展名为.uv2,这是KeilμVision2项目文件扩展名。
以后我们可以直接点击此文件来打开已创建的工程。
图2 创建新工程对话框这时会弹出一个对话框,要求选择目标CPU(即用户所用单片机的型号),Keil μVision 几乎支持所有的51内核的单片机,我们以AT89S52芯片为例,如图3所示, 在左侧的Data base列表框中点击Atmel前面的“+”号,展开该层,选中AT89S52,在其右边的Description显示区域。
中是对这个单片机的基本描述,然后再点击“确定”按钮.图3 为工程选择目标CPU窗口会出现询问是否添加startup.a51,如图4:请选择“否”。
图4此时,在工程窗口的文件页中,出现了“Target 1”,前面有“+”号,点击“+”号展开,可以看到下一层的“Source Group1”,这时的工程还是一个空的工程,里面什么文件也没有,需要为这个工程添加文件。
如图5所示。
图5新建立的工程2 源文件的添加如果用户没有现成的程序,那么就要新建一个程序文件。
在Keil中有一些程序代码,在这里我们以一个汇编程序为例,介绍如何新建一个asm程序和如何将它添加到工程中。
单击“文件->新建”菜单,如图6所示,新建一个源文件。
此时在项目窗口的右侧打开一个新的文本编辑窗口,如图7所示:图7 新建文件后的屏幕此时光标在编辑窗口里闪烁,可以键入用户的应用程序了。
但我们建议首先保存该空白的文件,单击菜单上的“文件”,在下拉菜单中选中“另存为”,屏幕如下图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名,注意,必须键入正确的扩展名。
如果用C语言编写程序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名为(.asm或.a51)。
然后,单击“保存”按钮。
图8 保存源文件对话框在创建源文件后,就可将这个文件添加到工程中。
回到编辑界面,在“项目工作区”页中,单击“Target 1”前面的“+”号,然后在“Source Group 1”上单击右键,弹出如图9所示的下拉菜单。
图9文件组快捷菜单选择“Add File to Group ‘Source Group 1’”,出现如图10所示对话框。
图10 加入文件对话框双击led.asm或选中led.asm后单击“Add ”按钮, 将文件加入到工程中,然后点击“Close”按钮即可返回主界面,这时在Source Group1文件夹图标左边出现了一个小“+”号,说明文件组中有了文件,点击它可以展开查看到文件“led.asm”已加入其中,双击文件名,即打开该源程序,如图11所示。
图11 加入了文件的工程注意:Keil默认加入C源文件,因此,在图10中未显示该文件夹下的汇编 文件,如果要加入汇编语言源文件,需单击“文件类型”下拉列表框右侧的下三角按钮,弹出下拉列表,选择“Asm Source file(*.a*;*.src)”,这时才会将文件夹下的“*.asm”文件显示出来;现在,请输入如下的asm语言源程序:org 0000hjmp startorg 0030h ;主程序从这个地址开始存放start:mov dptr,#table ;将表格的首地址送DPTRloop: clr amovc a,@a+dptr ;读取表格首地址的内容cjne a,#01h,loop1 ;查看是否是01H.如果是01H,重新开始循环jmp startloop1:mov P0,a ;将要显示的代码送P0口mov r4,#20 ;延时200ms(0.2S)call delay ;调用延时inc dptr ;DPTR加1,为读取下一个地址的内容作准备jmp loop;************** 延时子程序 ****************delay:mov r1,#20 ;延时10ms子程序d1: mov r2,#200djnz r2,$djnz r1,d1djnz r4,delayrettable:db 0feh,0fdh,0fbh,0f7h ;左移db 0efh,0dfh,0bfh,07fhdb 0feh,0fdh,0fbh,0f7h ;左移db 0efh,0dfh,0bfh,07fhdb 7fh,0bfh,0dfh,0efh ;右移db 0f7h,0fbh,0fdh,0fehdb 7fh,0bfh,0dfh,0efh ;右移db 0f7h,0fbh,0fdh,0fehdb 00h,00h,0ffh,0ffh,00h,00h,0ffh,0ffh ;闪烁2次db 01h ;结束码END在输入上述程序时,我们就可以体会到事先保存待编辑的文件的好处了,即Keil μVision 会自动识别关键字,并以不同的颜色提示用户加以注意,这样会使用户少犯错误,有利于提高编程效率。
程序输入完毕后,如图12所示 。
图12 编辑源程序3 工程的设置工程建好后,还要对工程进行进一步的设置,才能使用Monitor-51仿真器进行硬件仿真。
有三种打开工程设置对话框的方法:A)点击工具栏上的按钮,如图13所示。
图13 使用工具栏图标按钮打开工程设置对话框B)单击工程窗口下的Target1,使其高亮显示,再点击菜单“项目->目标‘target1’选项”C)鼠标右键点击工程窗口下的“Target1”,出现一个下拉菜单,如图14所示,选中“目标‘target1’选项”。
图14使用下拉菜单打开工程设置对话框打开的工程设置对话框如图15所示。
图15 Target选项对话框单击“”标签进入输出设置页面卡,如图16所示,选中“”,使程序编译后产生HEX代码,供仿真和烧录使用。
同时也可选中“”和“”,生成Hex 代码文件调试信息和浏览信息。
图16 Output选项对话框单击“”标签进入调试器设置页面卡,按图17所示进行设置。
选中“”和“”这两项是为了进行Monitor-51的硬件实时仿真。
单击“” 按钮,进入 “参数设置”对话框,按默认设置就行。
如果选中“”,是进行软件仿真。
图17注:串口的波特率必须与之一致.4 编译、链接设置好工程后,即可进行编译、链接。
图18所示的是有关编译的工具栏按钮和菜单,图中1、2、3都是编译按钮,1是编译单个文件。
2是编译当前项目,如果先前编译过一次之后文件没有被编辑、改动,这时再点击是不会重新编译的。
3是重新编译,每点击一次均会再次编译链接,不管文件是否有改动。
在3右边的是停止编译按钮,只有点击了前三个中的任一个,停止按钮才会生效。
4是信息输出窗口。
5是菜单的相应操作。
这个项目只有一个文件,你按1、2、3中的任一个都可以编译。
图18 有关编译的工具栏按钮和菜单按1、2、3中的任意一个进行编译。
在4中的Build页可以看到编译的错误信息和使用的系统资源情况等,以后我们要查错就靠它了,如果用户程序和工程设置没有错误,编译和链接将能顺利完成。
如图19所示,提示获得了名为led.hex的文件,该文件即可被编程器读入并写到芯片中,同时还可看到,该程序的代码量(code=120),内部RAM的使用量(data=8),外部RAM的使用量(xdata=0)等一些信息。
除此之外,编译、链接还产生了一些其它相关的文件,可被用于Keil的仿真与调试,这时可进入下一步的调试。
图19 编译和链接顺利完成我们前面的程序经过验证后没有错误,但是用户在开始编写程序时容易出现错误,现在我们故意将“mov dptr,#table”改为“mov dptr,table”,我们再次进行编译和链接编译/链接,因源程序中有语法错误,在信息输出窗口中有错误报告出现:“led.asm(5): error A40: INVALID REGISTER”。
双击该行,定位到出错的位置,如图20所示,将错误改正后,再进行编译,程序编译和链接能顺利完成。
如图19所示。
图20 编译后的错误定位5 进入仿真编译成功后,启动调试模式,进入仿真状态。
启动调试模式有以下几种方法:◆点击工具栏上的按钮◆单击“调试->开始/停止调试模式”◆使用快捷键“Ctrl+F5”启动调试模式后,代码便开始下载到仿真器中,如果出现如图21:图21请检查以下因素:·仿真器电源是否正确连接·仿真器与PC是否正常连接·串口是否选择正确,或被其它程序占用,或者已经损坏如果都不是,请按一下你目标板的复位键,再按“”。
代码下载完后,如图22所示,用户可以根据需要进行单步、断点、全速运行,观察/修改变量值、观察/修改存储区数据等操作。
图22 代码下载完毕进入调试状态后,调试菜单项中的命令可以使用了,有关编译的工具栏按钮消失了,出 现了一个用于运行和调试的工具栏,Debug菜单上的大部份命令都有相应的快捷按钮,如图23所示,从左到右依次是复位、运行、暂停、单步跟踪、单步、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令;图23 运行和调试的工具栏点击工具栏上的按钮,将反汇编窗口关闭,可看到源程序窗口了。
6 调试程序⒈ 单步跟踪运行使用菜单调试->单步进入或相应的命令按钮或使用快捷键F11可以单步跟踪执行程序,在这里我们按下F11键,即可执行该箭头所指程序行,每按一次F11,可以看到源程序窗口的左边黄色调试箭头指向下一行,当箭头指向“call delay”行时,再次按下F11,会发现,箭头指向了延时子程序“delay”的第一行,不断按F11键,即可逐步执行延时子程序,如图24所示,图24 单步跟踪运行⒉ 单步运行如果delay程序有错误,可以通过单步跟踪执行来查找错误,但是如果delay程序已正确,每次进行程序调试都要反复执行这些程序行,会使得调试效率很低,为此,可以在调试时使用F10来替代F11(也可使用菜单单步跳过或相应的命令按钮),在执行到“call delay”时将该行作为一条语句快速执行完毕.为了更好的进行对比,我们重新进入仿真环境,将反汇编窗口关闭,不断按F10键,可以看到在源程序窗口中的左边黄色调试箭头不会进入到延时子程序。