KeilC51语言软件开发系统基本知识

合集下载

单片机开发与仿真软件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 详细中文手册

Keil C51使用详解V1.0第一章 Keil C51开发系统基本知识 (6)第一节系统概述 (6)第二节Keil C51单片机软件开发系统的整体结构 (6)1. C51 for Dos 72. C51 for Windows的安装及注意事项: (7)第四节Keil C51工具包各部分功能及使用简介 (7)1. C51与A51. 72. L51和BL51. 83. DScope51,Tscope51及Monitor51. 84. Ishell及uVision. 9第二章 Keil C51软件使用详解 (10)第一节Keil C51编译器的控制指令 (10)1. 源文件控制类 (10)2. 目标文件(Object)控制类: (10)3. 列表文件(listing)控制类: (10)第二节dScope51的使用 (11)1. dScope51 for Dos 112. dScope for Windows 12第三节Monitor51及其使用 (13)1. Monitor51对硬件的要求 (13)2. Mon51的使用 (13)3. MON51的配置 (13)4. 串口连接图: (13)5. MON51命令及使用 (14)第四节集成开发环境(IDE)的使用 (14)1. Ishell for Dos的使用 (14)2. uVision for windows的使用 (15)第三章 Keil C51 vs 标准C.. 15第二节内存区域(Memory Areas): (16)1. Pragram Area: (16)2. Internal Data Memory: 163. External Data Memory. 164. Speciac Function Register Memory. 16第三节存储模式 (16)1. Small模式 (16)2. Compact模式 (17)3. large模式 (17)第四节存储类型声明 (17)第五节变量或数据类型 (17)第六节位变量与声明 (17)1. bit型变量 (17)2. 可位寻址区说明20H-2FH.. 18第七节Keil C51指针 (18)1. 一般指针 (18)2. 存储器指针 (18)3. 指针转换 (18)第八节Keil C51函数 (19)1. 中断函数声明: (19)2. 通用存储工作区 (19)3. 选通用存储工作区由using x声明,见上例。

[计算机软件及应用]Keil C51软件使用说明

[计算机软件及应用]Keil C51软件使用说明

* ——表示是指针类型,此处*不含取内容之意;
数据类型——声明指针所指变量的类型;
[存储器类型1]——声明指针所指变量的存储类型,若默认则定义
为一般指针;
[存储器类型2]——声明该指针变量本身的存储类型;
标识符——声明指针变量本身的数据类型和名称.
22
MCS-51单片机原理、接口及应用
第6章 单片机的C51语言编程
6
MCS-51单片机原理、接口及应用
第6章 单片机的C51语言编程
6.1.2 C51中常用的头文件
reg51.h、reg52.h、math.h、ctype.h、stdio.h、stdlib.h、 absacc.h和intrins.h. 〔1〕reg51.h和reg52.h
〔定义51或52子系列单片机特殊功能寄存器和特殊位〕 reg52.h比reg51.h多了几行定义T2寄存器的内容.
第6章 单片机的C51语言编程
汇编语言:
优点:面向机器、目标代码短、占用存储器空间少、运行
快. 缺点:指令助记符多、编程灵活性差.
C语言: 优点:具有面向机器和面向用户的特点,良好的可读性﹑易
维护性和可移植性,对硬件的控制能力也很强, C语言的数据类 型及运算符丰富,具有良好的程序结构.
缺点:代码效率稍低〔同汇编语言相比〕,占用存储空间较 大. 解决方法:单片机内部都嵌入了大容量的Flash ROM,有效的 弥补了这个缺陷.
{
局部变量说明
执行语句〔包括子函数的调用语句〕
}
4
MCS-51单片机原理、接口及应用
第6章 单片机的C51语言编程
func1<形式参数及说明>
//子函数1
{ 局部变量说明

第3章_C51语言编程基础

第3章_C51语言编程基础
机器码
.
3
2、Keil C51语言简介
对于51单片机,目前广泛使用的是Keil C51语言,简称C51语言。
Keil C51语言是在标准C的基础上,针对51单片机的硬件特点进行 扩展,并向51单片机上移植的高效、简洁的实用高级语言。
与汇编语言相比的特点: (1)可读性好。 (2)可模块化开发。 (3)可移植性好。 (4)生成的代码效率较低。
unsigned char j ;
for(j=0; j<8; j++) {
buffer[j]=0; }
}
.
8
33
3、C51的基本运算 C51语言的基本运算与标准C类似,主要包括算术运算、关系运算、 逻辑运算、位运算和赋值运算及其表达式等。
1)算术运算符
.
34
2)关系运算符
关系表达式
int x=3; int y=6; int R;
bit的值可以是1(true),或0(false)。
格式: bit 变量名;
例如:
bit
flag;
flag = 0;
.
8
(2)特殊功能寄存器sfr 地址单元80H——FFH之间的片内数据存储区; “sfr” 数据类型占用一个内存单元; 利用它可以访问51单片机内部的所有特殊功能寄存器。 格式: sfr 寄存器变量名 = 字节地址常数;
01000000 | 11111111
00001000 << 3
.
38
【例】以字节操作方式对I/O口P1的P1.5清0 ,P1.1置为1, 其他位保持不变。
例如:
sfr
PSW = 0xd0;
//定义PSW寄存器地址为0xd0

keil C51 应用入门

keil C51 应用入门

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

本章主要介绍keil C51的安装、开发环境和程序调试及仿真方法。

一keil C51软件的安装下面以keil C51 V7.50a版本为例,介绍如何安装keil µVision3集成开发环境。

先安装keil µVision2,然后安装升级版本keil µVision3。

图1-1安装初始化图1-2 安装向导对话框(1)把光盘放入光驱中(假定为F盘),进入F:keil 51V7.50a\setup目录下,这时会看到SETUP.EXE文件,双击该文件即可开始安装。

(2)这时会出现如图1-1所示的安装初始化画面,稍后弹出一个如图1-2所示的安装向导对话框,询问用户是安装、更新还是卸载软件,当然选择第一项“Install Support for Additional Microcontroller Architectures”安装该软件。

(3)单击Next钮,这时会出现如图1-3所示的安装询问对话框,提示用户是安装完全版还是评估版。

如果买了正版的keil C51就可选择Full V ersion,否则选择Eval V ersion。

图1-3 安装询问对话框(4)此后在弹出的几个确认对话框中选择Next,这是会出现如图1-4所示的安装路径设置对话框,默认路径是C:/KEIL。

当然用户可以单击选择适合自己安装的目录。

图1-4 安装路径设置对话框(5)在接下来的询问对话框中选择Next命令按钮加以确认,即可出现如图1-5所示的安装进度指示画面。

(6)接下来就是等待安装。

安装完成后单击Finish加以确认,此时可以在桌面上可看到keil µVision2软件的快捷图标,如图1-6所示。

双击它就可进入keil C51集成开发环境。

Keil-C51的使用ppt课件

Keil-C51的使用ppt课件
任务2 Keil C51的使用
1
我想知道
• Keil C51是什么? • 我们用它用来做什么? • 怎么用?
2
☺解答问题1
Keil C51是德国Keil 来自oftware公司出品的51系列兼容单片 机C语言软件开发系统。
该软件提供丰富的库函数和功能强大的集成开发调试工具, 全Windows界面。通过该软件可以完成编辑,编译,仿真, 连接,调试等整个开发流程。
参见教材《单片机的C51应用程序设计》第 310 页 14
弹出添加文件对话框,要求寻找源文件。 通过“查找范围”列表栏找到文件所在的文件夹,
再单击“文件类型”中下拉列表框,从中选取合 适的文件类型。 默认的“文件类型”为C Source file(*.c),也 就是以C为扩展名的C51文件。 若需要汇编语言文件,请点击对话框中“文件类 型”后的下拉列表,找到并选中Asm Source file (*.s*; *.src; *.a*)项。 在列表中找到需要的文件,选中文件再单击 “Add”,或双击文件也可添加成功。
要的所有文件都放在这个目录下。
参见教材《单片机的C51应用程序设计》第 308 页 9
3、选择器件
工程建立完毕,uVision2会立即弹出一个对话框, 要求选择单片机的型号。
器件选择的目的是告诉uVision2最终使用的单片机 芯片的型号是哪一个公司的哪一个型号,因为不同 型号的芯片内部资源是不同的;uVision2可根据选 择进行SFR的预定义,在软硬件仿真中提供易于操 作的外设浮动窗口等。
目前常使用的Keil C51开发系统是uVersion IDE版本,开 发人员可以用IDE或其他编辑器编辑汇编或C语言程序,然 后分别由A51或C51编译器编译生成目标代码(.OBJ)。 目标文件可以由LIB51创建生成库文件,也可以与库文件一 起经过L51连接定位生成绝对目标文件(.ABS)。ABS文 件由OH51转换称标准的HEX文件,以供调试器 (dScope51或tScope51)进行代码级调试,也可用仿真 器直接对目标般调试,还可以直接写入程序存储器中。

第6789次课第3章C51语言编程基础

第6789次课第3章C51语言编程基础
data
※ 重 点 、 记 住
bdata
code xdata
pdata
格式: 数据类型 【存储类型】 变量名; (1)DATA区。
DATA区指片内RAM的低128字节的空间,可直接寻址; 寻址是最快的,应该把经常使用的变量放在DATA区。
例如: unsigned char data system_status=0; unsigned int data unit_id[8];
习题1: 往串行发送数据缓冲寄存器SBUF写入80
sfr
SBUF = 0x99;
SBUF = 80;
※ 难点、掌握
习题2: 从P0口寄存器读取数据,存放到任意一个变量X。
sfr P0 = 0x80;
char
x;
x = P0;
(3)特殊功能寄存器sfr16
“sfr16”数据类型占两个内存单元;
用于操作占两个字节的特殊功能寄存器。
#define PORTE XBYTE[0xFFC0] #define NRAM DBYTE[0x40]
/*将PORTE定义为外部I/O, 地址为0xFFC0*/ /*将NRAM定义为片内RAM, 地址为0x40*/
main( )
{ ※ 难点
PORTE=0x3D;
NRAM=0x01;
}
/*数据3DH写入地址0xFFC0的外部I/O PORTE */
/*将数据01H写入片内RAM的40H单元*/
习题6 使用绝对宏将片内RAM 20H的字节地址单元全部置1。
#include<absacc.h>
#define M DBYTE[0x0020]
main( ) {
M=0xff;

keil C51入门教程

keil C51入门教程

第三章 C51语言作者:彭保基 西安交通大学 电信学院 电子2002级 版本:V1.1 写作时间:2004年12月---2005年3月本章主要介绍在Keil 的集成环境下用C 语言编程,并对C51语言与标准的C 语言的异同进行比较。

由于篇幅有限并考虑到读者大部分已经学过标准的C 语言,不再对C 语言进行深入的讲解;如果读者想深入了解和掌握C 语言,则可查阅和参考其他相关资料。

第一节 C51简介汇编语言是编写单片机程序的常用语言之一,很多老的单片机开发者使用汇编语言已经成为了一种习惯;汇编语言编写的程序所生成的代码效率很高,能直接操作硬件,指令的执行速度快。

但其指令系统的固有格式受硬件结构的限制很大,且难于编写与调试,可移植性也差。

随着单片机硬件性能的提高,其工作速度越来越快,因此在编写单片机应用系统程序时,更着重于程序本身的编写效率。

与汇编语言相比,C 语言在功能、结构、可读性和可维护性上有明显的优势,因而易学易用;在开发大型软件时更能体现其高级语言的优势。

因此,近些年来越来越多地人喜欢用C 语言来编写单片机的应用程序。

本章所说的C51语言就是标准C 语言的变种,是标准C 语言的扩展;关于两者的区别,将在下一节中详细的介绍。

第二节 C51与ANSI C 的比较Keil C51编译器是一个完全支持ANSI 标准C 语言的编译器,除了少数关键的地方之外,Keil C51和标准ANSI C 语言是基本类似的;但由于51单片机的特殊性,Keil C51在标准C 语言基础上进行了扩展,使其能够更有效地利用单片机各种有限的资源。

深入理解和掌握C51对标准C 语言的扩展,是学好C51语言的关键。

一、 Keil C51扩展关键字关键字 用 途 说 明bit 声明一个位标量或位类型的函数sbit 位标量声明声明一个可位寻址变量 Sfr 声明一个特殊功能寄存器 Sfr16 特殊功能寄存器声明声明一个16位的特殊功能寄存器 data 直接寻址的内部数据存储器 bdata可位寻址的内部数据存储器idata 间接寻址的内部数据存储器 pdata 分页寻址的外部数据存储器xdata 外部数据存储器 code 存储器类型说明 程序存储器interrupt 中断函数说明 定义一个中断函数 reentrant 再入函数说明 定义一个再入函数 using 寄存器组定义定义芯片的工作寄存器_at_ 绝对定位_task_ alien small compact large存储模式附表3- C51编译器的扩展关键字二、 数据类型Keil C51编译器支持下表列出的数据类型。

keil C51的详解

keil C51的详解

Keil C51使用详解1作者:未知文章来源:21ic 点击数:3489 更新时间:2005-3-15 第一章 Keil C51开发系统基本知识 (6)第一节系统概述 (6)第二节 Keil C51单片机软件开发系统的整体结构 (6)第三节 Keil C51工具包的安装 (7)1. C51 for Dos 72. C51 for Windows的安装及注意事项: (7)第四节 Keil C51工具包各部分功能及使用简介 (7)1. C51与A51. 72. L51和BL51. 83. DScope51,Tscope51及Monitor51. 84. Ishell及uVision. 9第二章 Keil C51软件使用详解 (10)第一节 Keil C51编译器的控制指令 (10)1. 源文件控制类 (10)2. 目标文件(Object)控制类: (10)3. 列表文件(listing)控制类: (10)第二节 dScope51的使用 (11)1. dScope51 for Dos 112. dScope for Windows 12第三节 Monitor51及其使用 (13)1. Monitor51对硬件的要求 (13)2. Mon51的使用 (13)3. MON51的配置 (13)4. 串口连接图: (13)5. MON51命令及使用 (14)第四节集成开发环境(IDE)的使用 (14)1. Ishell for Dos的使用 (14)2. uVision for windows的使用 (15)第三章 Keil C51 vs 标准C.. 15第一节 Keil C51扩展关键字 (15)第二节内存区域(Memory Areas): (16)1. Pragram Area: (16)2. Internal Data Memory: 163. External Data Memory. 164. Speciac Function Register Memory. 16第三节存储模式 (16)1. Small模式 (16)2. Compact模式 (17)3. large模式 (17)第四节存储类型声明 (17)第五节变量或数据类型 (17)第六节位变量与声明 (17)1. bit型变量 (17)2. 可位寻址区说明20H-2FH.. 18第七节 Keil C51指针 (18)1. 一般指针 (18)2. 存储器指针 (18)3. 指针转换 (18)第八节 Keil C51函数 (19)1. 中断函数声明: (19)2. 通用存储工作区 (19)3. 选通用存储工作区由using x声明,见上例。

Keil-C51-基本使用方法 (1) 。。。。2

Keil-C51-基本使用方法 (1)  。。。。2

、Keil C51工程建立与仿真1、建立一个工程项目,选择芯片并确定选项双击Keil uVision2快捷图标后进入Keil C51开发环境,单击“工程”菜单,在弹出的下拉菜单选中“新工程”选项,屏幕显示为图1。

附录:一图1 建立一个工程项目在文件名中输入一个项目名“my-test”,选择保存路径(可在“我的文档”中先建立一个同名的文件夹),单击保存。

在随后弹出的“为目标target选择设备”(Select Device for Target “Target1”)对话框中用鼠标单击Atmel前的“+”号,选择“89C51”单片机后按确定,如图2所示。

图 2 选择单片机后按确定选择主菜单栏中的“工程”,选中下拉菜单中“Options for Target ‘Target1’”,出现图3所示的界面。

单击“target”页面,在晶体Xtal(MHz)栏中选择试验板的晶振频率,默认为24MHz,我们讲座试验板的晶振频率为11.0592MHz,因此要将24.0改为11.0592。

然后单击输出“Output”页面,在“建立hex格式文件”前打勾选中,如图3-4。

其它采用默认设置,然后点确定。

图3 选择Target页面图4 选择Output页面2、建立源程序文件图 5 建立源程序文件程序输入完成后,选择“文件”,在下拉菜单中选中“另存为”,将该文件以扩展名为.asm格式(如my-test.asm)保存在刚才所建立的一个文件夹中(my-test)。

3、添加文件到当前项目组中单击工程管理器中“Target 1”前的“+”号,出现“Source Group1”后再单击,加亮后右击。

在出现的下拉窗口中选择“Add Files to Group‘Source Group1’”,如图6所示。

在增加文件窗口中选择刚才以asm格式编辑的文件my-test.asm,鼠标单击“ADD”按钮,这时my-test.asm文件便加入到Source Group1这个组里了,随后关闭此对话窗口。

keil+c51工作原理

keil+c51工作原理

keil+c51工作原理
Keil C51是一种针对Intel 8051微控制器的集成开发环境(IDE),它的工作原理涉及以下几个方面:
1. 编译器,Keil C51集成了一款专门针对8051微控制器的C
语言编译器,它能够将高级C语言代码转换为8051微控制器可以执
行的机器语言代码。

编译器会对代码进行语法分析、优化和生成目
标代码。

2. 调试器,Keil C51提供了强大的调试功能,可以通过仿真
器或者连接实际的8051微控制器进行调试。

用户可以在IDE中设置
断点、单步执行、监视变量等操作,帮助定位和解决程序中的错误。

3. 集成开发环境,Keil C51提供了一个集成的开发环境,包
括源代码编辑器、项目管理工具、编译器、链接器、调试器等,使
得开发人员可以在一个统一的界面下完成整个软件开发过程。

总的来说,Keil C51的工作原理是通过将高级C语言代码转换
为8051微控制器可以执行的机器语言代码,并提供强大的调试功能
和集成开发环境,帮助开发人员进行嵌入式软件开发。

keil+c51工作原理

keil+c51工作原理

keil+c51工作原理(最新版)目录1.Keil 与 C51 的概述2.Keil uVision5 软件的安装与使用3.C51 编程语言的特点与应用4.Keil 与 C51 的工作原理与流程5.总结正文一、Keil 与 C51 的概述Keil 是一款集成开发环境(IDE)软件,主要用于 C 语言和 C++语言的编程。

而 C51 则是基于 Intel 8051 核心的一种 C 语言编程规范。

Keil 与 C51 的结合,使得开发者能够更方便地进行嵌入式系统开发。

二、Keil uVision5 软件的安装与使用Keil uVision5 是 Keil 公司的一款集成开发环境软件,适用于 Windows 操作系统。

在使用 Keil uVision5 之前,需要先安装软件并进行相关配置。

配置完成后,通过该软件可以进行 C51 程序的编写、编译和下载。

三、C51 编程语言的特点与应用C51 编程语言具有以下特点:1.适用于 8051 单片机,支持单片机的所有寄存器和指令。

2.支持 C 语言的语法,易于学习和使用。

3.支持浮点运算和硬件串行通信。

C51 广泛应用于嵌入式系统开发,如单片机控制、智能家居、自动控制等领域。

四、Keil 与 C51 的工作原理与流程Keil 与 C51 的工作原理主要是通过 Keil uVision5 软件进行程序的编写、编译和下载。

具体流程如下:1.编写程序:使用 Keil uVision5 软件编写 C51 程序代码。

2.编译程序:在 Keil uVision5 中编译 C51 程序,生成.hex 文件。

3.下载程序:将编译生成的.hex 文件通过串口下载器下载到单片机中。

4.运行程序:单片机运行下载的程序,实现所需功能。

五、总结Keil 与 C51 的结合为嵌入式系统开发提供了方便、高效的工具。

第1页共1页。

开发工具KeilC51介绍

开发工具KeilC51介绍
开发工具Keil C51介绍
目录
• Keil C51简介 • Keil C51开发环境 • Keil C51的编程语言 • Keil C51的实践应用 • Keil C51的未来发展
01 Keil C51简介
什么是Keil C
01
Keil C51是一款针对8051微控制器 的集成开发环境(IDE),由德国 Keil Software公司开发。
THANKS FOR WATCHING
感谢您的观看
制系统、工业控制系统等。
单片机应用开发
03
使用Keil C51开发工具进行单片机应用开发,如电子门锁、智
能仪表等。
常见问题及解决方案
01
编译错误
检查代码中是否有语法错误或拼 写错误,确保代码符合C语言规 范。
链接错误
02
03
调试错误
检查链接器设置是否正确,确保 目标硬件平台和编译器之间的兼 容性。
习和使用。
02 Keil C51开发环境
界面介绍
菜单栏
包含文件、编辑、工程、查看 、工具等常用菜单,方便用户
进行操作。
工具栏
提供常用操作按钮,如新建、 打开、保存、编译等,方便用 户快速执行操作。
工程管理器
展示工程文件和文件夹结构, 方便用户管理工程文件。
编辑器
提供代码编写和编辑功能,支 持语法高亮、自动缩进等功能
嵌入式C语言编程规范
内存管理
由于嵌入式系统资源有限,程序员需要谨慎管理内存,避免内存 泄漏和非法访问。
实时性
嵌入式系统通常要求实时响应,因此程序应尽量减少不必要的延 时和计算。
可靠性
程序应具备错误处理和异常处理机制,确保系统稳定可靠。

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开发系统是一款功能强大、易于使用的微处理器开发环境。

keilc51简介,lx51与BL51,AX51与A51,CX51与C51区别

keilc51简介,lx51与BL51,AX51与A51,CX51与C51区别

keilc51简介,lx51与BL51,AX51与A51,CX51与C51区别简介Keil C51集成开发环境的主要功能有以下几点:1.RTX-51实时操作系统:简化了复杂的实时应用软件项目的设计。

2.C51国际际准化C交叉编译器:从C源代码产生就可以重定位的目标模块。

3.LIB51库管理器:从目标模块生成连接器可以使用的库文件。

4.BL51链接器/定位器:组合由C51和A51产生的可重定位的目标模块,生成绝对目标模块。

5.A51宏汇编器:从89C51汇编源代码产生可重定位的目标模块。

6.OH51目标文件至HEX格式的转换器,从绝对目标模块生成Intel Hex文件。

7.μVision4 for Windows:是一个集成开发环境,它将项目管理、程序调试、源代码编辑等组合在一个功能强大的环境中。

μVision4支持所有的Keil 89C51的工具软件,其中包括C51宏汇编器、编译器、链接器/定位器和目标文件至HEX格式转换器,μVision4可以自动地完成编译、汇编、链接程序等基本的操作。

还可以在编译之后进行模拟仿真调试,清楚的显示出每个变量的变化。

区别详见A51手册的附录D:汇编器的差异<br /><br />A51与BL51:<br />针对传统8051单片机的开发工具,最大支持32×64KB Code Bank。

<br /><br />AX51与LX51:<br />针对传统8051单片机以及部分衍生型号的开发工具,最大支持外扩16 MB的xdata或code。

AX51汇编器是A51汇编器的超集,两者的主要差异包括:<br />1.AX51中的数值默认为32位,A51是16位;<br />2.AX51不包含8051的默认SFR定义;<br />3.AX51支持更多的特殊符号,例如ECALL等;<br />4.生成的目标文件不同。

KeilC51语言软件开发系统基本知识

KeilC51语言软件开发系统基本知识

Keil C51开发系统基本知识1. 第一节系统概述Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C来开发,体会更加深刻。

Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

下面详细介绍Keil C51开发系统各部分功能和使用。

2. 第二节 Keil C51单片机软件开发系统的整体结构C51工具包的整体结构,如图(1)所示,其中uVision与Ishell 分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。

然后分别由C51与A51编译器编译生成目标文件(.OBJ)。

目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。

ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。

图(1) C51工具包整体结构图3. 第三节 Keil C51工具包的安装1. 1. C51 for Dos在Windows下直接运行软件包中DOS\C51DOS.exe然后选择安装目录即可。

完毕后欲使系统正常工作须进行以下操作(设C:\C51为安装目录):修改Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后运行Autoexec.bat2. 2. C51 for Windows的安装与注意事项:在Windows下运行软件包中WIN\Setup.exe,最好选择安装目录与C51 for Dos一样,这样设置最简单(设安装于C:\C51目录下)。

Keil C51基本关键字

Keil  C51基本关键字

Keil C51基本关键字:一、由ANSI标准定义的共32个:auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if while static二、Keil Cx51扩展的关键字:•_at_•alien •bdata •bit •code •compact •data •far•idata•interrupt•large•pdata•_priority_•reentrant•sbit•sfr•sfr16•small•_task_•using•xdata三、标准C关键字说明:1数据类型关键字(12个):(1)char:声明字符型变量或函数(2)double:声明双精度变量或函数(3)enum:声明枚举类型(4)float:声明浮点型变量或函数(5)int:声明整型变量或函数(6)long:声明长整型变量或函数(7)short:声明短整型变量或函数(8)signed:声明有符号类型变量或函数(9)struct:声明结构体变量或函数(10)union:声明联合数据类型(11)unsigned:声明无符号类型变量或函数(12)void:声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)(2)控制语句关键字(12个):A循环语句(1)for:一种循环语句(可意会不可言传)(2)do:循环语句的循环体(3)while:循环语句的循环条件(4)break:跳出当前循环(5)continue:结束当前循环,开始下一轮循环B条件语句(1)if:条件语句(2)else:条件语句否定分支(与if连用)(3)goto:无条件跳转语句C开关语句(1)switch:用于开关语句(2)case:开关语句分支(3)default:开关语句中的“其他”分支Dreturn:子程序返回语句(可以带参数,也看不带参数)3存储类型关键字(4个)(1)auto:声明自动变量一般不使用(2)extern:声明变量是在其他文件正声明(也可以看做是引用变量)(3)register:声明积存器变量(4)static:声明静态变量4其它关键字(4个):(1)const:声明只读变量(2)sizeof:计算数据类型长度(3)typedef:用以给数据类型取别名(当然还有其他作用(4)volatile:说明变量在程序执行中可被隐含地改变四、C51扩展关键字说明1、_at_定义变量的绝对地址格式:<[>memory_type<]>type variable_name_at_constant;例:int xdata value_at_0x8000;/*int at xdata0x8000*/ 2、alien(PL/M-51)函数外部声明C函数调用PL/M-51必须先用alien声明例:extern alien char plm_func(int,char);char c_func(void){int i;char c;for(i=0;i<100;i++){c=plm_func(i,c);/*call PL/M func*/}return(c);}C函数要被PL/M-51调用必须先用alien声明例:alien char c_func(char a,int b){return(a*b);}3、Code data,bdata,pdata,idata,xdata C51存储器类型声明Code程序代码存储区Data直接寻址片内数据存储区(低128字节)Bdata位寻址片内数据存储区(16字节)Idata间接寻址片内数据存储区(256字节)Pdata分页寻址外部数据存储区(256字节)Xdata可寻址片外数据存储区(64KB)例:int bdata ibase;/*Bit-addressable int*/char bdata bary[4];/*Bit-addressable array*/4、bit位变量定义格式:bit name<[>=value<]>;例:static bit done_flag=0;/*bit variable*/5、sfr sfr16sbit C51扩展数据类型sfr用于定义8位特殊功能寄存器sfr16用于定义16位特殊功能寄存器sbit用于定义可位寻址对象例:sfr P0=0x80;/*Port-0,address80h*/sfr16T2=0xCC;/*Timer2:T2L0CCh,T2H0CDh*/sbit EA=0xAF; //将位绝对地址赋給位变量sfr PSW=0xD0; sbit OV=PSW^2; sbit OV=0xD0^2;int bdata ibase;/*Bit-addressable int*/sbit mybit0=ibase^0;/*bit0of ibase*/6、compact,large,small C51中变量的存储模式选择Small模式用于将所有未指明存储区的变量均保存在data存储区compact模式用于将所有未指明存储区的变量均保存在pdata存储区Large模式用于将所有未指明存储区的变量均保存在xdata存储区例:#pragma small/*Default to small model*/extern int calc(char i,int b)large reentrant;extern int func(int i,float f)large;extern void*tcp(char xdata*xp,int ndx)compact;int mtest(int i,int y)/*Small model*/{ return(i*y+y*i+func(-1,4.75)); }int large_func(int i,int k)large/*Large model*/{ return(mtest(i,k)+2); }7、far far存储区是指许多新的8051扩展地址空间。

使用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软件的开发流程的基本步骤。

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”文件已经生成了:。

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

Keil C51开发系统基本知识1. 第一节系统概述Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C来开发,体会更加深刻。

Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

下面详细介绍Keil C51开发系统各部分功能和使用。

2. 第二节 Keil C51单片机软件开发系统的整体结构C51工具包的整体结构,如图(1)所示,其中uVision与Ishell 分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。

然后分别由C51及A51编译器编译生成目标文件(.OBJ)。

目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。

ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。

图(1) C51工具包整体结构图3. 第三节 Keil C51工具包的安装1. 1. C51 for Dos在Windows下直接运行软件包中DOS\C51DOS.exe然后选择安装目录即可。

完毕后欲使系统正常工作须进行以下操作(设C:\C51为安装目录):修改Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后运行Autoexec.bat2. 2. C51 for Windows的安装及注意事项:在Windows下运行软件包中WIN\Setup.exe,最好选择安装目录与C51 for Dos相同,这样设置最简单(设安装于C:\C51目录下)。

然后将软件包中crack目录中的文件拷入C:\C51\Bin目录下。

4. 第四节 Keil C51工具包各部分功能及使用简介1. 1. C51与A511. (1) C51C51是C语言编译器,其使用方法为:C51 sourcefile[编译控制指令]或者C51 commandfile其中sourcefile为C源文件(.C)。

大量的编译控制指令完成C51编译器的全部功能。

包控C51输出文件C.LST,.OBJ,.I和.SRC文件的控制。

源文件(.C)的控制等,详见第五部分的具体介绍。

而Commandfile为一个连接控制文件其容包括:.C源文件及各编译控制指令,它没有固定的名字,开发人员可根据自己的习惯指定,它适于用控制指令较多的场合。

2. (2) A51A51是汇编语言编译器,使用方法为:A51 sourcefile[编译控制指令]或A51 commandfile其中sourcefile为汇编源文件(.asm或.a51),而编译控制指令的使用与其它汇编如ASM语言类似,可参考其他汇编语言材料。

Commandfile同C51中的Commandfile类似,它使A51使用和修改方便。

2. 2. L51和BL511. (1) L51L51是Keil C51软件包提供的连接/定位器,其功能是将编译生成的OBJ文件与库文件连接定位生成绝对目标文件(.ABS),其使用方法为:L51 目标文件列表[库文件列表] [to outputfile] [连接控制指令]或 L51 Commandfile源程序的多个模块分别经C51与A51编译后生成多个OBJ文件,连接时,这些文件全列于目标文件列表中,作为输入文件,如果还需与库文件(.LiB)相连接,则库文件也必须列在其后。

outputfile为输文件名,缺少时为第一模块名,后缀为.ABS。

连接控制指令提供了连接定位时的所有控制功能。

Commandfile为连接控制文件,其具体容是包括了目标文件列表,库文件列表及输出文件、连接控制命令,以取代第一种繁琐的格式,由于目标模块库文件大多不止1个,因而第2种方法较多见,这个文件名字也可由使用者随意指定。

2. (2) Bl51BL51也是C51软件包的连接/定位器,其具有L51的所有功能,此外它还具有以下3点特别之处:a. 可以连接定位大于64kBytes的程序。

b. 具有代码域及域切换功能(CodeBanking & Bank Switching)c. 可用于RTX51操作系统RTX51是一个实时多任务操作系统,它改变了传统的编程模式,甚至不必用main( )函数,单片机系统软件向RTOS发展是一种趋势,这种趋势对于186和386及68K系列CPU更为明显和必须,对8051因CPU较为简单,程序结构等都不太复杂,RTX51作用显得不太突出,其专业版软件PK51软件包甚至不包括RTX51Full,而只有一个RTX51TINY版本的RTOS。

RTX51 TINY适用于无外部RAM的单片机系统,因而可用面很窄,在本文中不作介绍。

Bank switching技术因使用很少也不作介绍。

3. 3. DScope51,Tscope51及Monitor511. (1) dScope51dScope51是一个源级调试器和模拟器,它可以调试由C51编译器、A51汇编器、PL/M-51编译器及ASM-51汇编器产生的程序。

它不需目标板(for windows也可通过mon51接目标板),只能进行软件模拟,但其功能强大,可模拟CPU及其外围器件,如部串口,外部I/O 及定时器等,能对嵌入式软件功能进行有效测试。

其使用方法为:DS51[debugfile][INIT(initfile)]其中debugfile是一个Hex格式的8051文件,即待调试的文件其为可选的,可在进入dScope51后用load命令装入。

Initfile为一个初使化文件,它在启动dScope51后,在debugfile装入前装入,装有一些dScope的初使化参数及常用调试函数等。

下面是一个dScope.ini文件(for dos)的容:Load ..\..\ds51\8051.iofMap 0,0xffffdScope51 for Windows则直接用鼠标进入,然后用load装入待调文件。

2. (2) tScope51与dScope51不同的是Scope51必须带目标板,目前它可以通过两种方式访问目标板。

(1) 通过EMul51在线仿真器,tScope51为该仿真器准备了一个动态连接文件EMUL51.IOT,但该方法必须配合该仿真器。

(2) 通过Monitov51监控程序,这种方法是可行的,tScope51为访问Monitor51专门带有MON51.IOT连接程序,使用时可通过串口及监控程序来调试目标板。

其使用方法为:TS51[INIT(file_name.ini)]其中file_name.ini为一个初使化文件。

进入TS51后,必须装入IOT文件,可用的有MON51.IOT及EMUL51.IOT两种,如装入MON51.IOT:Load.C:\C51\TS51\MON51.IOT CPUTYPE(80517)可惜的是tScope51只有for Dos的版本。

3. (3) Monitor 51Monitor51是一个监控程序通过PC机的串口与目标板进行通信,Monitor操作需要MON51或dScope51 for Windows,后面部分将对Monitor51做较为详细的介绍。

4. 4. Ishell及uVision1. (1) Ishell for Dos这是一个for Dos的IDE,直接在命令行键入Ishell,则进入该环境,它使用简单方便。

其命令行与DOS命令行具有同样的功能,对单模块的Project直接由菜单进行编译连接,对多模块的project。

则通过批处理,BAT文件进行编译连接,然后通过菜单控制由dScope51或tScope51对程序进行调试,因为是for dos的,不做太详细介绍。

2. (2) uVision for WindowsuVision for Windows是一个标准的Windows应用程序,它是C51的一个集成软件开发平台,具有源代码编辑、project管理、集成的make等功能,它的人机界面友好,操作方便,是开发者的首选,具体配置及使用见第五部分。

2. 第二章 Keil C51软件使用详解1. 第一节 Keil C51编译器的控制指令C51编译器的控制指令分为三类:源文件控制类,目标文件控制类及列表控制类。

1. 1. 源文件控制类NOEXTEND:C51源文件不允许使用ANSI C扩展功能。

DEFINE(DF):定义预处理(在C51命令行)。

2. 2. 目标文件(Object)控制类:COMPACT LARGE SMALL 选编译模式DEBUG(DB) 包含调试信息,以供仿真器或dSCope51使用。

NOAMAKE(NOAM) 禁止AutoMake信息记录NOREGPARMS 禁止用寄存器传递参数OBJECTEXTEND(OE) Object文件包含附加变量类型信息OPTIMIZE(OT) 指定优化级别REGFILE(RF) 指定一个寄存器使用的文件以供整体优化用REGISTERBANK(RB) 指定一个供绝对寄存器访问的寄存器区名SRC 不生成目标文件只生成汇编源文件其它控件不常用。

3. 3. 列表文件(listing)控制类:CODE(CD):向列表文件加入汇编列表LISTINCLUDE(LC):显示indude文件SYMBOLS(SB):列表文件包括模块所有符号的列表WARNINGLEVEL(WL):选择“警告”级别2. 第二节 dScope51的使用1. 1. dScope51 for Dos总的来说dScope51具有以下特性:l 高级语言显示模式l 集成硬件环境模拟l 单步或“GO”执行模式l 存储器、寄存器及变量访问l Watch表达式之值l 函数与信号功能下面,具体说明在进入dScope51 for Dos之后,如何实现上述功能,dScope51采用下拉菜单格式和窗口显示控制,共有language、serial、exe、register四个窗口,其中exe为命令行窗口,language 为程序窗口,serial为串口窗,register为寄存器窗。

相关文档
最新文档