1 / 59
文档名称:

清华大学版第9章.ppt

格式:ppt   大小:726KB   页数:59页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

清华大学版第9章.ppt

上传人:花开花落 2019/2/20 文件大小:726 KB

下载得到文件列表

清华大学版第9章.ppt

相关文档

文档介绍

文档介绍:本章共六节,主要介绍:、采用C51的优点编译器能自动完成变量的存储单元的分配,编程者可以专注于应用软件的设计,可以对常用的接口芯片编制通用的驱动函数,对常用的功能模块和算法编制相应的函数,可以方便地进行信号处理算法和程序的移植,从而加快单片机应用系统的开发速度。当代码长度超过4KB以上时,C51比汇编语言更具有明显的优势。、;函数1说明;…………函数n说明;main(){局部变量说明;执行语句;函数调用(实际参数表);}函数1(形式参数说明){局部变量说明;执行语句;函数调用(实际参数表);}…………函数n(形式参数说明){局部变量说明;执行语句;函数调用(实际参数表);}(位)取值范围字符型signedchar8-128~127unsignedchar80~255整型signedint16-32768~32767unsignedint160~65535长整型signedlong32-21474883648~21474883647unsignedlong320~4294967295浮点型float32±-38~±+38位型bit10,1sbit10,1访问SFRsfr80~255sfr16160~(变量和常量)必须以一定的存储器类型定位于单片机的相应的存储区域中。存储器类型长度(位)对应单片机存储器bdata1片内RAM,位寻址区,共128位。(亦能字节访问)data8片内RAM,直接寻址,共128字节。idata8片内RAM,间接寻址,共256字节。pdata8片外RAM,分页间址,共256字节。(******@Ri)xdata16片外RAM,间接寻址,共64k字节。(******@DPTR)code16ROM区域,间接寻址,共64k字节。(******@DPTR)访问片内RAM比访问片外RAM的速度要快得多,所以对于经常使用的变量应该置于片内RAM中,即用bdata、data、idata来定义;对于不经常使用的变量或规模较大的变量应该置于片外RAM中,即用pdata、xdata来定义。例如:bitbdataflags;/*位变量flags定位在片内RAM的位寻址区*/chardatavar;/*字符变量var定位在片内RAM区*/floatidatax,y,z;/*实型变量x,y,z定位在片内间址RAM区*/sfrP1=0x90;/*定义P1口地址为90H*/如果用户不对变量的存储器类型进行定义,C51编译器采用默认的存储器类型。默认的存储器类型由编译控制命令中的存储模式指令限制。例如:charvar;/*在SMALL模式时,var定位data存储区*//*在COMPACT模式时,var定位pdata存储区*//*在LARGE模式时,var定位xdata存储区*/存储模式默认存储类型特点SMALLdata直接访问片内RAM;PACTpdata用R0和R1间址片外分页RAM;栈在片内RAM中。LARGExdata用DPTR间址片外RAM,代码长,效率低。、特殊功能寄存器的定义80C51单片机内部有21个特殊功能寄存器,为了对它们能够进行直接访问,C51编译器利用扩充的关键字sfr和sfr16对这些特殊功能寄存器进行定义。sfr的定义方法为:sfr特殊功能寄存器名=地址常数;例如:sfrSCON=0x90;/*定义串行口控制寄存器,地址为0x90*/sfrP0=0x80;/*定义P0口,地址为0x80*/sfr16T2=;/*,T2H地址为0xCD*/二、特殊功能寄存器中特定位的定义在C51中利用关键字sbit定义可独立寻址访问的位变量,如定义80C51单片机SFR中的一些特定位。定义方法分别为:1、sbit位变量名=特殊功能寄存器名^位的位置(0~7),如:sfrPSW=0xD0;/*定义PSW寄存器地址为0xD0*/sbitOV=PSW^2;/*,地址为0xD2*/sbitCY=PSW^7;/*,地址为0xD7*/