单片机C51语言课件.ppt

  1. 1、本文档共109页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机C51语言课件

单片机的C51语言 ;51汇编语言能直接操作单片机的系统硬件,指令执行速度快。但其程序可读性差,且编写、移植困难。 ;C51是为51系列单片机设计的一种C语言,其特点:;C51与标准C语言对比 相同之处: 语法规则、程序结构、编程方法 差异之处: 数据类型、存储模式、中断处理 教学安排: ① 介绍C51语言的数据结构及C51编程手段; ② 介绍单片机I/O口的初步应用及C51编程方法。;1 C51的程序结构 2 C51的数据结构 3 C51仿真开发环境 4 C51初步应用编程 ;C51单片机软件系统结构;① 程序由函数组成(一个主函数,或一个主函数和若干自定义函数); ② 利用预处理命令对变量或函数进行集中定义或说明; ③ 函数和变量都需遵循先定义后使用的基本原则; ④ 主函数中的所有语句执行完毕,则程序结束。 ;举例:LED闪烁控制功能;预处理命令---------;1 C51的程序结构 2 C51的数据结构 1. C51的变量 2. C51的指针 3 C51仿真开发环境 4 C51初步应用编程 ;在程序执行过程中,数值可以发生改变的量称为变量。 ;【存储种类】 数据类型 【存储类型】 变量名; ① 自动变量(auto)——在函数内部定义的变量,退出函数后,分配给该变量的存储单元即自行消失(局部变量)。;数据的不同格式叫做数据类型 ;C51扩充数据类型:bit、sfr或sfr16、sbit ;Sfr或sfr16型;例如,sfr P0 = 0x80; //定义P0口地址80H sfr PCON = 0x87; //定义PCON地址87H sfr16 DPTR=0x82; //定义DPTR的低端地址82H;sbit型; 1)sbit bit_name = 位地址常数; 将位于SFR字节地址内的绝对位地址定义为位变量名。 例如,sbit CY = 0xD7; ;2)sbit bit_name = sfr_name ^ 位位置; 将已有定义的SFR的0~7位定义为位变量名。 例如: sfr PSW = 0xD0; sbit CY = PSW^7; ;3)sbit bit_name = sfr字节地址 ^ 位位置; 将SFR字节地址的相对位地址定义为位变量名。 例如: sbit CY = 0xD0^7; ;C51编译器在头文件“reg51.h”中定义了全部sfr/sfr16和sbit变量。;应用举例:;51系列单片机有三个逻辑存储空间:;建立C51存储类型与存储空间的对应关系;C51的存储类型与存储空间对应关系表 ;C51编译器指定了三种默认存储类型:;变量名可以由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线,变量名长度随编译系统而定。 ;C51扩展的若干关键字一览表 ;unsigned char data system_status = 0; ;unsigned char bdata status_byte; ;1 C51的程序结构 2 C51的数据结构 1. C51的变量 2. C51的指针 3 C51与汇编语言的混合编程 4 C51仿真开发环境 5 C51初步应用编程 ;C51的指针与标准C的指针几乎是一样的,都可以简单理解为“存储地址的变量”,例如:;在C51里定义指针,还需要额外指明两个问题: 1)指针变量自身位于哪个存储区域; 2)该指针的值代表的是哪个存储区域里的地址。;解: unsigned char idata a = ‘A’;;C51提供两种指针:通用指针和具体指针 通用指针 占用3字节 而对于data idata pdata 数据类型,实际只需要2字节。通用指针代码比具体指针代码的执行速度要慢。 具体指针 使用者规定指针指向存储区段的指针: Char data *str; 指针指向data区中的char型数据 1字节 int xdata *prt; 指针指向xdata区中的int型数据 2字节 使用具体指针可节省存储空间,代码执行速度快。 ;1 C51的程序结构 2 C51的数据结构 3 C51仿真开发环境 1、Keil的编译环境 μVision3 2、

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档