网站大量收购独家精品文档,联系QQ:2885784924

C51单片机的.ppt

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

使用C语言有以下的优点: C 语言具有结构化和模块化特点,便于阅读和维护。 C 语言可移植性好,很多微控制器都支持C 编译器。 C 语言编写的程序比汇编语言编写的程序更符合人们的思考习惯,开发者可以更专心的考虑算法,而不是考虑一些细节问题。这样可以减少编程出错的机率,从而提高开发效率,减少调试的时间。 C 语言和微控制器是相对独立的,开发者不必知道处理器的具体内部结构和处理过程。当基于新型的微控制器开发程序时,可以很快上手,减少学习时间和程序开发时间。;C51数据类型;位运算符;例: unsigned char x=0x55 ; 0101 0101B unsigned char y=0x37 ; 0011 0111B unsigned char z; z=xy ; 则 z=0x15 0001 0101B z=x|y ; 则 z=0x77 0111 0111B z=x^y ; 则 z=0x62 0110 0010B z=~x; 则 z=0xAA 1010 1010B z=x2; 则 z=0x54 0101 0100B z=x1; 则 z=0x2A 0010 1010B;C51中的特殊数据类型;位变量;可位寻址的对象;可位寻址的对象的位可以单独访问和更改。可以用sbit声明位变量来访问bdata声明的变量的指定位。如: sbit mybit0 = ibase ^ 0; /* bit 0 of ibase */ sbit mybit15 = ibase ^ 15; / * bit 15 of ibase */ sbit ary07 = bary[0] ^ 7; /* bit 7 of bary[0] */ sbit ary37 = bary[3] ^ 7; /* bit 7 of bary[3] */ ’^’后的表达式定义了位的位置,必须是一个常量。取值范围由基变量的数据类型来决定。 对char 和unsigned char 类型,范围为0-7; 对int, unsigned int, short, unsigned short,为0-15; 对long 和unsigned long 为0-31。;特殊功能寄存器;sfr:定义8位特殊功能寄存器 SFR的声明和C变量的声明格式一样,只不过使用的修饰符不是char 或int 而是sfr。例如: sfr P0 = 0x80; /* Port-0, address 80h */ sfr P1 = 0x90; /* Port-1, address 90h */ sfr P2 = 0xA0; /* Port-2, address 0A0h */ sfr P3 = 0xB0; /* Port-3, address 0B0h */ P0,P1,P2,P3是sfr声明的特殊功能寄存器的名称。特殊功能寄存器名称是一个合法的C标识符。等号后的地址必须是数值常量,不允许使用带运算符的表达式。;特殊功能寄存器;特殊功能寄存器;位地址声明的三种方法;存储区域;存储区域的划分;程序存储区(program memory);内部数据存储区(internal data memory);内部数据存储区的data区又可以细分为三个子段: 四个工作寄存器组(00-1FH),每个寄存器组包含8个寄存器,四个寄存器组共32 个字节。由PSW 的RS1 和RS0选择四组寄存器的任意一组作为当前工作寄存器组。 位寻址段bdata(20-2FH), 包括16 个字节,共128 位,每一位都可单独寻址。也可以按字节进行寻址。 一般数据存储器(30H-7FH),仅能按字节寻址,共80个字节。;说明:某些系列的单片机(如8052) 有额外的128 字节的内部RAM, 同样位于从80H 开始的内部数据存储地址空间中,称为idata区。idata 区的地址和sfr的地址是重叠的,必须使用不同的寻址方式的指令来解决地址重叠问题。sfr区只能通过直接寻址来访问, idata区只能通过间接寻址来访问。;外部数据存储区(external data memory);C51使用两种修饰符来表示外部数据区:xdata , pdata xdata :说明外部数据空间的所有64KB的地址空间。 pdata :指向外部数据空间中的大小为一页(256字节)的数据存储空间。 注意:某些新型的8051芯片有更大的XRAM(如16M的XRAM),一般用far类型来描述这些区域。可以分别用 far 和const far 来访问位

文档评论(0)

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

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

1亿VIP精品文档

相关文档