资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第2章 MCS-51单片机的资源配置,主要内容,MCS-51单片机的在片资源及外部特性,MCS-51单片机的存储器系统,MCS-51单片机的时钟电路与复位电路,MCS-51单片机的低功耗工作方式,第2章 MCS-51单片机的资源配置主要内容,2.1 MCS-51单片机的在片资源及外部特性,2.1.1 MCS-51单片机的在片资源,P3,P1,P2,可编程,串行I/O口,P0,外部中断,基准频率源,控制,128/256B,数据存储器,4KB/8KB,程序存储器,2/3个16位,定时/计数器,振荡器及 定时电路,CPU,64KB,总线扩展控制,可编程,并行I/O口,内部中断,计数脉冲,串行输出,串行输入,(图中“/”两边分别为基本型和增强型),2.1 MCS-51单片机的在片资源及外部特性2.1.1,51子系列的配置如下:,1个8位CPU;,1个片内振荡频率为1.212 MHz的振荡器及时钟电路;,128个字节的片内RAM;,4KB的片内程序ROM;,4个8位并行I/O口P0,P1,P2,P3;,1个全双工串行I/O口;,2个16位定时器/计数器;,5个中断源,分为2个优先级。,51子系列的配置如下:,2.1.2 MCS-51系列单片机的外部特性,各个引脚的功能如下。,Vss:接地端。,Vcc:电源端,接+5V。,XTAL1,XTAL2:,接外部晶体或外部时钟。,RST/VPD:,复位信号输入。,接备用电源,当VCC掉电后,在低功耗条件下保持内部RAM中的数据。,2.1.2 MCS-51系列单片机的外部特性,ALE/PROG:,ALE 地址锁存允许。ALE输出脉冲的频率为振荡频率的1/6。,PROG 对8751单片机片内 EPROM 编程时,编程脉冲由该引脚引入。,PSEN:程序存储器允许。输出读外部程序存储器的选通信号。,EA/VPP:,EA=0,单片机只访问外部程序存储器。,EA=1,单片机访问内部程序存储器。,在8751单片机片内EPROM编程期间,此引脚引入21V编程电源VPP。,ALE/PROG:,P0.0P0.7:P0口,数据/低八位地址复用总线端口。,P1.0P1.7:P1口,静态通用端口。,P2.0P2.7:P2口,高八位地址总线端口。,P3.0P3.7:P3口,双功能静态端口。,P0.0P0.7:P0口,数据/低八位地址复用总线端口。,51系列单片机的精简版105120514051型号只有20个引脚,,如图所示。,它们内部有一个模拟比较器,相比较的模拟信号由P,1.0,(AIN,0,)和P,1.1,(AIN,1,)输入,而模拟比较器的输出由P,3.6,输入,在内部已连接,因此外部无P,3.6,引脚。,51系列单片机的精简版105120514051型号,2.2 MCS-51单片机的存储器系统,存储器可分为程序存储器和数据存储器。,程序存储器,用来存放程序;,以及始终要保留的常数。,数据存储器,存放程序运行中所需要的变量。,从,物理空间,看,MCS-51有四个存储器空间:,片内数据存储器、片内程序存储器,片外数据存储器、片外程序存储器,2.2 MCS-51单片机的存储器系统存储器可分为程序存储器,存储器地址空间结构:,普林斯顿结构,ROM和RAM在同一地址空间;,哈佛结构,ROM和RAM在不同地址空间;,MCS-51系列单片机采用哈佛结构。,存储器地址空间结构:,外部数据,存储器,(RAM),外部程序,存储器,(ROM),内部程序,存储器,内部数据,存储器,8XX51,MCS-51存储器物理结构,外部数据外部程序 内部程序内部,FFFFH,0000H,外部,RAM,外部数据存储器,H0000,0FFFH,0FFFH,外部,R O M,内部ROM,(EA=1),H0000,8031,外部ROM (EA=0),8051,1000H,FFFFH,程序存储器,内部数据存储器,特殊功能,寄存器,内部数据,RAM,7FH,80H,00H,FFH,(增强型),地址重叠,从,逻辑上,看,MCS-51有三个存储器空间:,程序存储器、片内数据存储器、片外数据存储器,FFFFH0000H 外部外部数据存储器 H00000F,2.2.1 程序存储器,程序存储器用来存放,程序,和,常数,。以程序计数器PC作为地址指针,地址总线为16位,可寻址的地址空间为64KB。,在8051/8751/89C51 片内,分别内置最低地址空间的4KB ROM/EPROM程序储存器(内部程序储存器),而8031无内部程序储存器,必须外部扩展EPROM。,MCS-51单片机中64KB内、外程序储存器的地址是统一编排的。,访问程序存储器使用,MOVC,指令。,2.2.1 程序存储器 程序存储器用来存放程序和常,程序存储器中的几个特殊地址的使用:,地址 用途,0000H 复位操作后的程序入口,0003H 外部中断0服务程序入口,000BH 定时器0中断服务程序入口,0013H 外部中断1服务程序入口,001BH 定时器1中断服务程序入口,0023H 串行口中断服务程序入口,程序存储器中的几个特殊地址的使用:,2.2.2 数据存储器,1.片外数据存储器,用于存放随机读写的数据。,外部I/O口地址影像区。,MCS-51单片机的外部数据存储器和外部I/O口实行统一编址,并使用相同的作选通控制信号,均使用,MOVX,指令访问。,MCS-51 单片机最多可扩展64KB外部数据存储器,2.2.2 数据存储器 1.片外数据存储器,2.片内数据储存器,存放随机读写的数据,通用寄存器区,堆栈区,运算操作数存放区,指令(算术运算、逻辑运算、位操作运算等)的操作数只能在此地址空间或特殊功能寄存器地址空间。,内部数据存储器的地址分配,51 系列单片机内部数据存储器地址范围为007FH。,(1)地址 01FH的前32个单元称为寄存器区,用途:,作通用寄存器R0R7。,R0与R1可作间址寄存器使用。,2.片内数据储存器,位 地 址,字节地址,通,用,存,储,区,7FH,:,可,位,寻,址,区,7FH,7EH,7DH,7CH,7BH,7AH,79H,78H,2FH,77H,76H,75H,74H,73H,72H,71H,70H,2EH,6FH,6EH,6DH,6CH,6BH,6AH,69H,68H,2DH,67H,66H,65H,64H,63H,62H,61H,60H,2CH,5FH,5EH,5DH,5CH,5BH,5AH,59H,58H,2BH,57H,56H,55H,54H,53H,52H,51H,50H,2AH,4FH,4EH,4DH,4CH,4BH,4AH,49H,48H,29H,47H,46H,45H,44H,43H,42H,41H,40H,28H,3FH,3EH,3DH,3CH,3BH,3AH,39H,38H,27H,37H,36H,35H,34H,33H,32H,31H,30H,26H,2FH,2EH,2DH,2CH,2BH,2AH,29H,28H,25H,27H,26H,25H,24H,23H,22H,21H,20H,24H,1FH,1EH,1DH,1CH,1BH,1AH,19H,18H,23H,17H,16H,15H,14H,13H,12H,11H,10H,22H,0FH,0EH,0DH,0CH,0BH,0AH,09H,08H,21H,07H,06H,05H,04H,03H,02H,01H,00H,20H,通,用,寄,存,器,区,R7,R0 寄存器3组,1FH,18H,R7,R0 寄存器2组,17H,10H,R7,R0 寄存器1组,0FH,08H,R7,R0 寄存器0组,07H,00h,内部数据存储器,位 地 址字节地址通7FH可7FH7EH7DH7CH7B,使用时应注意:,32个单元的寄存器区分为四组,使用时只能选其中一组寄存器。,寄存器的选组由程序状态字PSW的RS1和RS0位定。,RS1 RS0 选寄存器组,0 0 0组,0 1 1组,1 0 2组,1 1 3组,初始化时或复位时,自动选中0组。,一旦选中一组,其它三组只能作为数据存储器使用,而不能作为寄存器使用。,设置多组寄存器可以方便保护现场。,使用时应注意:,(2)20H2FH为位地址区,共16个单元,每单元有八个位,每位有一个位地址,共128位,位地址范围为00H7FH,该区既可位寻址,又可字节寻址。,如,MOV 20H,C,(这里C是Cy进位标志位),该指令是将Cy内容送20H位,如果Cy1,位20H值为“1”。,(3)除选中的寄存组以外的存储器均可以作为通用RAM区,。,(2)20H2FH为位地址区,3.特殊功能寄存器,MCS-51单片机共有21个字节的特殊功能寄存器用英文缩写SFR(Special Function Register)表示。,用途:,A 累加器、状态标志寄存器,单片机内部各部件专用的控制、状态寄存器,并行口、串行口影射寄存器,地址空间:,21个特殊功能器不连续的分布在80HFFH 128个字节地址空间。,地址能被8整除的为可位寻址的寄存器。,3.特殊功能寄存器,特殊功能寄存器符号,位 地 址,字节地址,D7,D6,D5,D4,D3,D2,D1,D0,P0,87H,86H,85H,84H,83H,82H,81H,80H,80H,SP,81H,DPL,82H,DPH,83H,PCON,87H,TCON,8FH,TF1,8EH,TR1,8DH,TF0,8CH,TR0,8BH,IE1,8AH,IT1,89H,IE0,88H,IT0,88H,TMOD,89H,TL0,8AH,TL1,8BH,TH0,8CH,TH1,8DH,P1,97H,96H,95H,94H,93H,92H,91H,90H,90H,SCON,9FH,9EH,9DH,9CH,9BH,9AH,99H,98H,98H,SBUF,99H,P2,A7H,A6H,A5H,A4H,A3H,A2H,A1H,A0H,A0H,IE,AFH,EA,ACH,ES,ABH,ET1,AAH,EX1,A9H,ET0,A8H,EX0,A8H,P3,B7H,B6H,B5H,B4H,B3H,B2H,B1H,B0H,B0H,IP,BCH,PS,BBH,PT1,BAH,PX1,B9H,PT0,B8H,PX0,B8H,PSW,D7H,CY,D6H,AC,D5H,F0,D4H,RS1,D3H,RS0,D2H,OV,D1H,D0H,P,D0H,ACC,E7H,E6H,E5H,E4H,E3H,E2H,E1H,E0H,E0H,B,F7H,F6H,F5H,F4H,F3H,F2H,F1H,F0H,F0H,特殊功能寄存器地址表,特殊功能寄存器符号位 地 址字节地址D7D6D5D4D3,A,累加器,B,寄存器,常用于乘除法运算。,PSW,程序状态字。主要起着标志寄存器的作用。,D7,D6,D5,D4,D3,D2,D1,D0,CY,AC,F0,RS1,RS0,OV,P,位地址,位名称,CY:进/借位标志,AC:辅助进/借位标志,FO:用户标志位。可由用户设定其含义。,RS1,RS0:工作寄存器组选择位。,OV:溢出标志,P:奇偶标志,运算结果有奇个“1”,P=1;,运算结果有偶个“1”,P=0。,A 累加器 D7 D6 D5 D4 D3,SP,堆栈指针,堆栈设在片内RAM中,每次操作为8位二进制数,堆栈是向着地址大的方向形成的,系统复位后,SP=07H,DPTR,数据指针寄存器,主要用于片外数据存储器的访问以及在程序存储器中取常数的操作。DPTR可分成DPL和DPH两个8位寄存器分别使用。,SP 堆栈指针DPTR 数据指针寄存器,P0 P1 P2 P3,I/O端口寄存器,是四个并行I/O端口映射入SFR中的寄存器。通过对该寄存器的读/写,可实现从相应I/O端口的输入/输出。,例如:指令 MOV P1,A实现了把A累加器中的内容从P1端口输出的操作。指令MOV A,P3实现了把P3端口线上的
展开阅读全文