单片机C语言ppt课件.ppt

单片机C语言ppt课件.ppt

ID:58818898

大小:99.50 KB

页数:45页

时间:2020-10-01

单片机C语言ppt课件.ppt_第1页
单片机C语言ppt课件.ppt_第2页
单片机C语言ppt课件.ppt_第3页
单片机C语言ppt课件.ppt_第4页
单片机C语言ppt课件.ppt_第5页
资源描述:

《单片机C语言ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机原理与应用C51简介C51基本数据类型C5l的数据类型有位型(bit)、无符号字符(unsignedchar)、有符号字符(signedchar)、无符号整型(unsignedint)、有符号整型(signedint)、无符号长型(unsignedlong)、有符号长型(signedlong)、浮点(float)和指针类型等。其中short与long属整型数据、float与double型属浮点型数据。C51的数据类型数据类型长度值域范围bit1bit0,1sbit1bit0,1unsignedchar1byte0~

2、255signedchar1byte-128~127sfr1byte0~255unsignedint2byte0~65536signedint2byte-32768~32767sfr162byte0~65536*1~3byte对象的地址unsignedlong4byte0~4294967295signedlong4byte-2147483648~2147483647float4byte+1.175494E-38~+3.402823E+38变量的存储变量的存储器类型是指该变量在8051单片机硬件系统中所使用的存储区域,并在

3、编译时准确的定位。定义变量时应指定变量的存储器类型,在编译时将根据指定类型定义到相应的存储区。KEILuVision2所能支持的存储器类型:存储器类型说 明data直接访问内部数据存储器(128字节),访问速度最快bdata可位寻址内部数据存储器(16字节),允许位与字节混合访问idata间接访问内部数据存储器(256字节),对于51子系列,只允许访问低128B,对于52子系列,允许访问全部256B地址pdata分页访问外部数据存储器(256字节),相当于用MOVX@Ri指令访问xdata外部数据存储器(64KB),相当

4、于用MOVX@DPTR指令访问code程序存储器(64KB),相当于用MOVC@A+DPTR指令访问例:数据类型存储类型变量chardatavar1;bitbdataflags;unsignedcharxdatavextor;定义变量时如果省略存储器类型,系统则会按编译模式SMALL、COMPACT或LARGE所规定的默认存储器类型去指定变量的存储区域。无论什么存储模式都可以声明变量在任何的8051存储区范围,然而把最常用的变量、命令放在内部数据区可以显著的提高系统性能。C51支持的主要编译模式存储模式说明SMALL函数

5、参数及局部变量放在片内RAM(默认变量类型为DATA,最大128字节)。另外所有对象包括栈都优先放置于片内RAM,当片内RAM用满,再向片外RAM放置。COMPACT参数及局部变量放在片外RAM(默认的存储类型是PDATA,最大256字节);通过R0、R1间接寻址,栈位于8051片内RAM。LARGE参数及局部变量直接放入片外RAM(默认的存储类型是XDATA,最大64KB);使用数据指针DPTR间接寻址。因此访问效率较低且直接影响代码长度.特殊功能寄存器的C51定义8051单片机的内部高128个字节为专用寄存器区,其中

6、51子系列有21个(52子系列有26个)特殊功能寄存器(SFR),它们离散的分布在这个区中,分别用于CPU并行口、串行口、中断系统、定时/计数器等功能单元及控制和状态寄存器。对SFR的操作,只能采用直接寻址方式。为了能直接访问这些特殊功能寄存器,KeilC51扩充了两个关键字“sfr”、“sfr16”,可以直接对51单片机的特殊寄存器进行定义,这种定义方法与标准C51语言不兼容,只适用于对8051系列单片机C51编程。定义方法如下:sfr特殊功能寄存器名=特殊功能寄存器地址常数;sfr16特殊功能寄存器名=特殊功能寄存器

7、地址常数;对于8051片内I/O口,定义方法如下:sfrP1=0x90;//定义P1口,地址90HsfrP2=0xA0;//定义P1口,地址A0Hsfr后面是一个要定义的名字,要符合标识符的命名规则,名字最好有一定的含义等号后面必须是常数,不允许有带运算符的表达式,而且该常数必须在特殊功能寄存器的地址范围之内(80H-FFH)。sfr是定义8位的特殊功能寄存器,sfr16用来定义16位特殊功能寄存器,如数据指针DPTR,可以定义为:sfr16DPTR=0x82;//这里定义数据指针DPTR,地址为DPL=82H,DPH=

8、83H用sfr16定义16位特殊功能寄存器时,等号后面是它的低位地址,高位地址一定要位于物理低位地址之上。注意的是,sfr16不能用于定时器0和1的定义。对于需要单独访问SFR中的位,C51的扩充关键字‘sbit’可以访问位寻址对象。‘sbit’定义某些持殊位,并接受任何符号名,“=”号后将绝对地址赋给变量名这种地址

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。