C51存储结构.docx

上传人:时光煮雨 文档编号:11766749 上传时间:2021-09-05 格式:DOCX 页数:12 大小:183.95KB
返回 下载 相关 举报
C51存储结构.docx_第1页
第1页 / 共12页
C51存储结构.docx_第2页
第2页 / 共12页
C51存储结构.docx_第3页
第3页 / 共12页
C51存储结构.docx_第4页
第4页 / 共12页
C51存储结构.docx_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《C51存储结构.docx》由会员分享,可在线阅读,更多相关《C51存储结构.docx(12页珍藏版)》请在三一文库上搜索。

1、6章 C51存储结构本章内容Single Chip MicrocomputerS 8051存储空间5 8051存储单元士 存储横式说明; 相珠功能等存春 可依寻址目标6.1、 8051单片机的存储空间1. 中央处理器CPU: 8位,运算和控制功能2. 内部RAM:共256个RAM单元,用户使用前128个单元, 用于存放可读写数据,后128个单元被专用寄存器占用。3. 内部ROM: 4KB掩膜ROM,用于存放程序、原始数据和表( 格。4. 定时/计数器:两个16位的定时/计数器,实现定时或计数功 能。5. 并行I/O 口: 4个8位的I/O 口 P0、P1、P2、P3.6. 串行口: 一个全双工

2、串行口。7. 中断控制系统:5个中断源(外中断2个,定时/计数中断2:个,串行中断1个)L8. 时钟电路:可产生时钟脉冲序列,允许晶振频率6MHz和312MHZ(2理片机应用技术(1)程序的W内和EA-1外都EA-0程序存储器FFFFH(PC)中行口中新定时器1中断外部中断1定时器。中断外部中惭00000H是和序执行的起始单元, 在这三个通元存放一条 无条件轧移指令程序存储器资源分布PSW位地址 CY ACFO RSI RSO |Fl P工作寄存器区选择位RSO、RS1a a 单片m健伴系犹工理片机应用技术* 2-7构赛功存地址息宣小单元SFRMSB位越址/位定义LSB字W的处BF7F6F5F

3、1F32FlFOFOHACCE7E6E5E4E32ElEOtm I离散分布有21个P3WD71)6D5D4D3D2DIDODOHCYACFORSIRSOOVFlPIPWBEBDBCBBBAB9t特殊功能寄存器SFR。/PSTP1PX1PTOPXO158tlF3B7B6B5B3B2BlBOP3.7P3.6P3.5P3. P3.3P3. 2P3. 1P3.0tsutiIBAFAEADACABAAA9A8 11个可以进行 )EA/ESET1EXIETOEX。AKriF2MAO2A4A3AZAlAO位寻址。P2. 7P2.6P2.5P2.4P2.3P2.2P2.1P2.0AUF1SBUF(WH)SO:

4、)N9F9E9D9C9B9A9998QOM(SMOSMISM2RENTBSRB8T1RIF)97969594939291WT:.i(8BH)TLO(8 AH)可使用寄存器符号,* 也可用寄存器单元与 地址。 hTMODGATEC/TMlMOGATEC/TMlMO(89川TCDN8F8E8D8C8BBA89888811TF1TRITFOTROIE11T1ITOIEOPONSMOD/GF1GFOPD1DL(87HDPH2DHL铸sr(81)系FO8786S581828180P0.7P0.6P0.5PO. P0.3PO.2P0.1P0.0KrtiA已在匕加田田昉未?62、8051存储单元 6.2.1

5、 C51存储类型与MCS-51存储空间的对应带存储类型的变量的定义的一般格式为存储种类数据类型存储器类型变量名表带存储类型的变量定义举例:char data var1; bit bdata flags; float idata x5y5z; unsigned int pdata var2; unsigned char xdata vector34;8.2、 8051存储单元16.2.1 C51存储类型与MCS-51存储空间的对应存储类型与存储空间的对应关系1data直接寻址片内数据存储区,访问速度快(128字节)bdata可位寻址片内数据存储区,允许位与字节混合访问(16字节)idata间接寻

6、址片内数据存储区,可访问片内全部RAM地址空间(256字节pdata分页寻址片外数据存储区(256字节)由MOV Ri访问(i=0,1)xdata片外数据存储区(64 KB)由MOVX DPTR访问code程序存储器64 KB空间,由MOVC DPTR访问6.2、 8051存储单元6.3、 .1 C51存储类型与MCS-51存储空间的对应1.CODEK:代码段,用来存放可执行代码。16位寻址空间可以达到64KB。2.DATAK:数据段,低128内部RAM。区指令用一个或两个指令周期来访 问数据段。3.BDATA 区:存储类型标识符指内部可位寻址的16字节存储区20H到2FH可以在本区域定义可位

7、寻址的数据类型6.2、8051存储单元;46.2.1 C51存储类型与MCS-51存储空间的对应4.IDATA 区:8052单片机内部高128byte内容RAM.5.XDATAE:外部数据区,和code区相同采用16位地址寻址64KB。6.PDATAK:PDATA是指外部RAM在0255的变量类型,和xdata有点类似,但又比xdata有优势:操作时只使用一个字节来保6.2、 8051存储单元;46.2.1 C51存储类型与MCS-51存储空间的对应存储类型长度(bit)长度(byte)值域范围data810 255idata810 255pdata810 255xdata162。65 535

8、code162。65 5356.3、 存储模式说明存储 模式默认的存储类型是data,参数及局部变量放入可直接寻址片-i 内RAM的用户区中(最大128字节)另外所有对象(包括堆栈), SMALL 都必须嵌入片内RAM。栈长很关键,因为实际栈长依赖于函数嵌套调用层数默认的存储类型是pdata,参数及局部变量放入分页的外部数 COMPACT据存储区,通过口。或为间接访问,栈空间位于片内数据 存储区中默认的存储类型是xdata,参数及局部变量直接放入片外数据 存储区,使用数据指针DPTR来进行寻址。用此数据指针进行 访问效率较低,尤其对两个或多个字节的变量,这种数据类 型的访问机制直接影响代码的长

9、度.4、特殊功能寄存器(SFR)MCS-51单片机中特殊功能寄存器(SFR)分散在片内RAM 区的高128字节中,地址范围为80H0FFH。SFR中有11个寄存 器具有位寻址能力,它们的字节地址都能被8整除,即字节地址 是以8或0为尾数的。为了能直接访问这些SFR, Keil C51提供了一种自主形式的 定义方法,这种定义方法与标准C语言不兼容,只适用于对 MCS-51系列单片机进行C语言编程。特殊功能寄存器C51定义 的一般语法格式如下:sfr sfr-name = int constant;T -64、特殊功能寄存器(SFR)“sfr”是定义语句的关键字,其后必须跟一个MSC-51单片机

10、真实存在的特殊功能寄存器名,=后面必须是一个整型常数, 不允许带有运算符的表达式,是特殊功能寄存器“sfr-name”的字| 节地址,这个常数值的范围必须在SFR地址范围内,位于:0x80-0xFFo(例如:Isfr SCON=Ox98:/*串口控制寄存器地址98H */sfr TMOD=Ox89; /*定时器/计数器方式控制寄存器地址89H */!6.4、 特殊功能寄存器(SFR) MCS-51系列单片机的特殊功能寄存器的数量与类型不尽相同, 因此建议将所有特殊的“sfr”定义放入一个头文件中,该文件应包括 MCS-51单片机系列机型中的SFR定义。C51编译器的reg51.h”斗 文件就是

11、这样一个文件。I在新的MCS-51系列产品中,SFR在功能上经常组合为16位 值,当SFR的高字节地址直接位于低字节之后时,对16位SFR的j 值可以直接进行访问。例如52子系列的定时器/计数器2就是这种情况。为了有效地访问这类SFR,可使用关键字6”来定义, 其定义语句的语法格式与8位SFR相同,只是三”后面的地址必须用6.4、 特殊功能寄存器(SFR) /列如:sfr16 T2 = OxCC/*定时器/计数器2: T2低8位地址为OCCH, T2高8位北虱止为OCDH*/这种定义适用于所有新的16位SFR,但不能用于定时器/计 数器0和1。对于位寻址的SFR中的位,C51的扩充功能支持特殊

12、位的 定义,像SFR一样不与标准C兼容,使用“sHt”来定义位寻址单 兀O卜*6.5、可位寻址目标第一利格式:sbit bit-name = sfr-nameAint constant;“sbit”是定义语句的关键字,后跟一个寻址位符号名(该位符号 名必须是MCS-51单片机中规定的位名称),=后的sfrname”必 须是已定义过的SFR的名字,”八“后的整常数是寻址位在特殊功能1 寄存器”sfrname”中的位号,必须是07范围中的数。例如:sfr PSW=0xD0 ;/*定义PSW寄存器地址为DOH 7sbit OV=PSWA2 ;/* 定义OV位为PSW.2,地址为D2H */sbit CY=PSWA7 ;/* 定义CY位为PSW.7, 1 也为D7H */6.5、 可位寻址目标*622可位寻址目标第二种格式:sbit bit-name = int constantAint constant:”=后的int constant为寻址地址位所在的特殊功能寄存器的 字节地址,“八”符号后的int constant为寻址位在特殊功能寄存器中 的位号。例如:sbit OV=OXDOA2 ;r定义0V位地址是DOH字节 中的第2位*/sbit CY=0XD0A7 ;r定义CY位:土也比:是DOH字节中 的第7位*/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1