补充C51程序设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
补充C51程序设计

用C语言进行单片机程序设计是单片机开发与应用的必然趋势。 单片机教学中的程序设计应以C语言为主,汇编语言为辅。对汇编语言掌握到只要可以读懂程序,在时间要求比较严格的模块中进行程序的优化即可。 采用C语言不必对单片机和硬件接口结构有很深入的了解,编译器可以自动完成变量的存贮单元的分配,编程者可以专注于应用软件部分的设计,大大加快软件的开发速度。 产品中的单片机重新选型后,C语言可以很容易地进行程序移植工作。 * 补充:C51程序设计 本讲重点: C51的数据类型和存储类型; 指针和中断的使用; 通过实例消化理解C51的编程方法; 尝试将实验课中的ASM51程序转为C51程序. 从1985年开始就有了8051单片机的C语言编译器,简称C51。 ㈠ C51简介 目前比较流行的C51编译器是Keil C51 其集成开发软件为Keil uVision 2,它集编辑、编译、仿真于一体,界面友好,易学易用。 C51与ASM51相比,有如下优点: 1.??对单片机的指令系统不要求了解,仅要求对8051 的存贮器结构有初步了解; 2.??寄存器分配、不同存贮器的寻址及数据类型等细节可由编译器管理; 3.??程序有规范的结构,可分成不同的函数,这种方式可使程序结构化; 4.???提供的库包含许多标准子程序,具有较强的数据处理能力; 6.??由于具有方便的模块化编程技术,使已编好程序可容量地植入新程序; C51扩展关键字 ㈢ C51的数据类型 基本数据类型: ㈡ C51的程序结构 与一般C语言的结构相同,以main()函数为程序人口,程序体中包含若干语句还可以包含若干函数。 位型 字符型 整型 长整型 浮点型 bit char int long int float 1位 1字节 2字节 4字节 4字节 构造类型:数组、结构体、共用体、枚举 指针类型(精华) (1)字符型:char、 unsigned char; (2)整型: int、 unsigned int、 long、unsigned long; (3)浮点与双精度型: float、 double; (4)C51中扩展的类型:bit、 sfr、 sfr16、 sbit (5)结构体、指针等 bit:位类型  如:bit run_flag; sfr:特殊功能寄存器类型, 如 sfr P0=0x80;(0x80为地址) sfr16:16位特殊功能寄存器类型,如 sfr16 DPTR=0x82;(即DPTR) sbit:特殊功能寄存器位类型    如 sbit EINT=0xAF; (0xAF为位地址。即EA) ㈢ C51的数据类型 bit型 bit型是C51编译器的一种扩充数据类型,利用它可定义一个位变量或位函数,但不能定义位指针,也不能定义位数组。它的值是一个二进制位,不是0就是1 sbit型 在51系列单片机中,经常要访问特殊功能寄存器中的某些位,用关键字sbit定义可位寻址的特殊功能寄存器的位寻址对象。定义方法有3种: (1)sbit位变量名=位地址 将位的绝对地址赋给位变量名,位地址必须位于0x80H~0xffH之间。例如: sbit CY=0xD7; (2) sbit位变量名=SFR名称^位位置 当可寻址位位于特殊功能寄存器中时,可采用这种方法。 sbit CY=PSW^7; (3) sbit位变量名=字节地址^位位置 sbit CY=0xD0^7; 注意sbit和bit的区别:sbit定义特殊功能寄存器中的可寻址位;而bit则定义一个普通的位变量,一个函数中可包含bit类型的参数,函数返回值也可为bit。 ㈣ C51数据的存储类型 常用于存放数据表格等固定信息 0000H~FFFFH 程序ROM code 常用于存放不常用的变量或等待处理的数据 0000H~FFFFH 片外64KRAM xdata 分页访问外部数据存储器 00H~FFH 片外页RAM pdata 间接访问的单片机内部数据区 00H~7FH 片内低128B存储区 idata 允许位与字节混合访问; 20H~2FH 片内可位寻址存储区 bdata 访问速度最快,可作为常用变量或临时性变量存储区 00H~FFH 片内256B存储区 data 说明 字节地址 存储空间位置 存储类型 定义格式:[存储种类] [存储类型] 数据类型 变量名; 也可写为:[存储种类] 数据类型 [存储类型] 变量名; 存储种类有: 自动(auto)、外部(extern)、静态

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档