基于C语言的单片机应用2(续2)

基于C语言的单片机应用2(续2)

ID:44396896

大小:2.13 MB

页数:50页

时间:2019-10-21

基于C语言的单片机应用2(续2)_第1页
基于C语言的单片机应用2(续2)_第2页
基于C语言的单片机应用2(续2)_第3页
基于C语言的单片机应用2(续2)_第4页
基于C语言的单片机应用2(续2)_第5页
资源描述:

《基于C语言的单片机应用2(续2)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第二次课(续)AT89S52单片机硬件结构文件结构、数据的类型C51数据类型的取值范围NanjingcollegeofinformationTechnology数据类型长度(bit)长度(byte)值域bit110,1unsignedchar810~255signedchar81–128~127unsignedint1620~65535signedint162–32768~32767unsignedlong3240~4294967295signedlong324–2147483648~2147483647float324±1.176E–38~±3.40E+38(6位数字)数

2、据类型的选用由于51系列是8位机,它只能直接处理8位无符号数的运算,单片机C语言编程和程序存储器资源结合起来,只有bit和char等数据类型是是机器语言直接支持的数据类型,用此类数据类型的语句所生成的代码较短;而其它的数据类型如整型、浮点型等数据要有一定的内部程序或内部函数的支持,相对来说用该类数据类型的语句生成的代码要长。因此我们应尽可能地使用bit,char等机器语言直接支持的数据类型.在程序设计中,都尽量采用无符号数以提高运算速度,以此避免进行多余运算。在运算时,可以进行定点运算的尽量进行定点运算,避免进行浮点运算。如*2或/2,就可以使用移位操作来代替除法运算。这样

3、不仅可以减少代码量,同时,还能大大提高程序执行效率,变量类型的选用实例三请改正下列程序中的错误#definepi=3.1415926;Main(){inta=b=v=5,d;charch=‘a’;floatenum,pi;d=a+1=b;}一、C51数据的存储类型与存储器模式C51是面向51系列单片机及其硬件控制系统的开发语言,它定义的任何变量必须定位在单片机的某一个区域中,否则便没有意义。存储器程序存储器数据存储器程序存储器和数据存储器的寻址空间是分开的,属于哈佛存储结构。片内存储器片外存储器片内存储器片外存储器四个物理上独立的空间(一)MCS-51的存储器(一)MCS-

4、51的存储器存储器数据存储器RAM程序存储器ROM,4KB/8KB(8051/52)通用存储器RAM,128B/256B(8051/52)特殊功能寄存器,21/26个(8051/52)存放运算中间或临时数据等可扩展至64KB专用寄存器每个不得随便定义用途,如累加器A,定时器/计数器等。不能扩展存放用户程序、常数及表格等。可扩展至64KB1、数据存储器配置数据存储器配置图数据存储器用于存放运算的中间结果、数据暂存及数据缓冲等。数据存储器RAM也包括:一个片内数据存储器和一个片外数据存储器可寻址空间。片内数据存储器工作寄存器区(00H-1FH)位寻址区(20H-2FH)通用区(

5、30H-7FH)特殊功能寄存器区(80H-FFH)通用区(80H-FFH):直接寻址间接寻址直接寻址和间接寻址仅52子系列有位寻址区位地址分配表2、片外数据存储器片外数据存储器可寻址空间是指MCS-51单片机对片外扩展数据存储器的最大寻址能力。51单片机是64KB。片外扩展的数据存储器与片内数据存储器不是统一编址的,逻辑上、物理都是独立的两个空间。3、专用寄存器(SFR)特殊功能寄存器的地址离散的分布在80H~FFH的空间中。MCS-51系列单片机有21个可字节寻址特殊功能寄存器。52子系列比51子系列多了一个定时器/计数器T2,增加了5个特殊功能寄存器。符号名称地址ACC

6、累加器0E0HBB寄存器0F0HPSW程序状态字0D0HSP堆栈指针81HDPTR数据指针(包括高位DPH和低位DPL)83H(高位)82H(低位)P0P0口锁存寄存器80HP1P1口锁存寄存器90HP2P2口锁存寄存器0A0HP3P3口锁存寄存器0B0HIP中断优先级控制寄存器0B8HIE中断允许控制寄存器0A8HTMOD定时/计数器工作方式、状态寄存器89HT2CON*定时/计数器2控制寄存器0C8HTCON定时/计数器控制寄存器88H符号名称地址TH0定时/计数器0(高字节)8CHTL0定时/计数器0(低字节)8AHTH1定时/计数器1(高字节)8DHTL1定时/计数

7、器1(低字节)8BHTH2*定时/计数器2(高字节)0CDHTL2*定时/计数器2(低字节)0CCHRCAP2H*定时/计数器2记录寄存器(高字节)0CBHRCAP2L*定时/计数器2记录寄存器(低字节)0CAHSCON串行口控制寄存器98HSBUF串行数据缓冲器99HPCON电源控制寄存器97H这些特殊功能寄存器,可以以字节寻址,部分也可以位寻址。可位寻址的寄存器,是该寄存器的地址是8的整倍数。有11个可位寻址寄存器等。在位寻址时,某特殊功能寄存器的字节地址,就是该特殊功能寄存器最低位(D0)的位地址,其它位地址

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

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

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