计算机课件第二课--C51KEIL C51的应用

上传人:woxinch****an2018 文档编号:44671171 上传时间:2018-06-14 格式:PPT 页数:21 大小:125.50KB
返回 下载 相关 举报
计算机课件第二课--C51KEIL C51的应用_第1页
第1页 / 共21页
计算机课件第二课--C51KEIL C51的应用_第2页
第2页 / 共21页
计算机课件第二课--C51KEIL C51的应用_第3页
第3页 / 共21页
计算机课件第二课--C51KEIL C51的应用_第4页
第4页 / 共21页
计算机课件第二课--C51KEIL C51的应用_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《计算机课件第二课--C51KEIL C51的应用》由会员分享,可在线阅读,更多相关《计算机课件第二课--C51KEIL C51的应用(21页珍藏版)》请在金锄头文库上搜索。

1、KEIL C51的应用nC语言是一种编译型程序设计语言,它兼顾 了多种高级语言的特点,并具备汇编语言 的功能。目前,使用C语言进行程序设计已 经成为软件开发的一个主流。用C语言开发 系统可以大大缩短开发周期,明显增强程 序的可读性,便于改进和扩充。而针对8051 的C语言日趋成熟,成为了专业化的实用高 级语言。C语言作为一种非常方便的语言而得到广泛的支持 ,国内最通用的是Keil C51.C语言程序本身不依赖于机器硬件系统,基本上不 作修改就可将程序从不同的单片机中移植过来。C提供了很多数学函数并支持浮点运算,开发效率 高,故可缩短开发时间,增加程序可读性和可维护 性。 C-51的特点C-51

2、与ASM-51相比,有如下优点:1. 对单片机的指令系统不要求了解,仅要求 对8051 的存贮器结构有初步了解;2. 寄存器分配、不同存贮器的寻址及数据类 型等细节可由编译器管理;3. 程序有规范的结构,可分成不同的函数, 这种方式可使程序结构化;4. 具有将可变的选择与特殊操作组合在一起 的能力,改善了程序的可读性;5. 提供的库包含许多标准子程序,具有较强 的数据处理能力;6. 由于具有方便的模块化编程技术,使已编 好程序可容易地移植;C51存储类型存储类型寻址空间数据长度 值域范围data片内直接寻址 RAM80127idata片内间接寻 址 RAM80255pdata分页寻址 片外 R

3、AM80255存储类型寻址空间数据长度值域范围xdata片外数据存 储 (64K)16065535code片内统一编 址ROM( 64K)16065535bdata片内可位寻 址的RAM( 16byet)10127nC51的数据声明的一般格式如下n类型说明符修饰符 标识符=初值n例如:unsigned char code Flag = 0x0f;就是声明一个无符号的char型变量Flag,并给 他赋初值为0x0f;并且声明他所在的存储空间 在片内统一编址的ROM中。 n声明中,如果没有修饰符,则数据默认的存 储空间为data型,也就是在片内RAM中。 C51的程序结构与一般C语言的结构相同,以

4、main()函数为程序人 口,程序体中包含若干语句还可以包含若干函数。C51函数的一般格式类型 函数名(参数表)数据说明部分语句执行部分 C51的数据类型 基本数据类型类型符号关键字数的表示范围所占位数整型字符型实型有无(signed) int16-3276832767 (signed) short16-3276832767 (signed) long32-21474836482147483647 16unsigned int0655353204294967295unsigned long intunsigned short int16065535有float323.4e-383.4e38有d

5、ouble641.7e-3081.7e308 有char8-128127无unsigned char80255C语言中的基本数据类型类型符号关键字数的表示范围所占位数整型字符型实型有无(signed) int16-3276832767 (signed) short16-3276832767 (signed) long32-21474836482147483647 16unsigned int0655353204294967295unsigned long intunsigned short int16065535有float323.4e-383.4e38有double641.7e-3081.7

6、e308 有char8-128127无unsigned char80255(续) C51的数据类型扩充定义sfr:特殊功能寄存器声明 sfr16:sfr的16位数据声明 sbit:特殊功能位声明 bit:位变量声明 例:sfr SCON = 0X98;sfr16 T2 = 0xCC;sbit OV = PSW2; C-51数据的存储类型名 存储空间位置 长度 数据范围 data 直接寻址片内RAM 8位 0255 bdata 可位寻址片内RAM 1位 0/1idata 间接寻址片内RAM 8位 0255pdata 片外页RAM 8位 0255xdata 片外RAM 16位 065535code

7、 程序ROM 16位 065535 C-51数据的存储类型(续)例:数据类型 存储类型 变量char data var1; bit data flags; unsigned char xdata vextor10; C-51数据的存储类型 C-51的包含的头文件通常有:reg51.h math.h ctype.h stdio.h stdlib.h absacc.h常用有:reg51.h (定义特殊功能寄存器和 位寄存器);math.h (定义常用数学运算); C-51的运算符与C语言基本相同:+ - * / (加 减 乘 除) = #define prot xbyte0x1000 或 用指针定

8、义例:清零程序 (将2000H20FFH的内容清零) 汇编语言程序ORG 0000H SE01: MOV R0,#00H MOV DPTR,#2000H ;(0000H)送DPTR LOO1: CLR AMOVX DPTR,A ;0送(DPTR)INC DPTR ;DPTR+1INC R0 ;字节数加1CJNE R0,#00H,LOO1 ;不到FF个字节再清 LOOP: SJMP LOOP清零程序 (将2000H20FFH的内容清零) C51程序#include main( ) int i;unsigned char xdata *p=0x2000;/* 指针指向2000H单元 */for(i=0;i main ( ) unsigned char xdata *p=0x2000;/*指针p指向2000H单元*/int n=0,i;for(i=0;i16;i+) if(*p=0) n+; /* 若该单元内容为零,则n+1 */p+; /* 指针指向下一单元 */p=0x2100; /* 指针p指向2100H单元 */*p=n; /* 把个数放在2100H单元中 */ KEIL的使用n掌握KEIL工程的建立和软件的开发;n掌握KEIL中软件仿真的基本应用;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号