第2章MCS-51单片机的硬件结构_第1页
第2章MCS-51单片机的硬件结构_第2页
第2章MCS-51单片机的硬件结构_第3页
第2章MCS-51单片机的硬件结构_第4页
第2章MCS-51单片机的硬件结构_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章MCS-51单片机的硬件结构2.1MCS-51单片机的硬件结构,介绍图2-1中的各功能部件:1.CPU(中央处理器)中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。,2.数据存储器(RAM)51内部有128个字节用户数据存储单元和128个字节的专用寄存器单元,它们是统一编址的,用户能使用的RAM只有128个字节,可存放读写的数据,运算的中间结果或用户定义的字型表。对于5x系列,有另外的128个字节的SRAM,汇编语言采用间接寻址方式访问,C语言中定义为ida

2、ta类型即可。,3.程序存储器(ROM)51共有4KBROM(一般为Flash结构),用于存放用户程序,原始数据或表格等。对于5x系列,ROM容量为x乘4KB4.中断系统8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。,5.定时器/计数器(T/C)8051有两个16位的可编程定时/计数器(Timer0与Timer1),以实现定时或计数,并产生中断用于控制程序转向。对于5x系列,增加一个Timer26.串行口(UART)8051内置1个全双工的异步串行通信口,用于与其它设备间的串行数据传送。,7.P0口、P1口、P2

3、口、P3口8051共有4个8位并行I/O口,用于对外部数据的传输。8.特殊功能寄存器(SFR)共有21个,是一个具有特殊功能的RAM区。9.时钟电路内置晶振时钟电路,需外置无源晶振。,2.2MCS-51的引脚MCS-51系列单片机均采用40Pin封装的双列直接DIP结构,现在我们对这些引脚的功能加以说明:,40只引脚按功能分为3类:(1)电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2。(2)控制引脚:PSEN*、EA*、ALE、RESET(即RST)。(3)I/O口引脚:P0、P1、P2、P3,为4个8位I/O口的外部引脚。2.2.1电源及时钟引脚1电源引脚(1)Vcc(40脚):+5

4、V电源;(2)Vss(20脚):接地。,2时钟引脚(1)XTAL1(19脚)(2)XTAL2(18脚)8051的时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体和振荡电容,振荡电容的值一般取10p-30p。另外一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。,2.2.2控制引脚(1)RST/VPD(9脚):复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高

5、电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态。,(2)ALE/PROG*(30脚):第一功能ALE为地址锁存允许。PROG*为本引脚的第二功能。为编程脉冲输入端。当访问外部存储器时,ALE(地址锁存)的输出用于锁存地址的低8位字节。而访问内部存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部存储器,ALE会跳过一个脉冲。在编程其间,ALE将用于输入编程脉冲。,(3)PSEN*(29脚):外部程序存储器的读选通信号。(4)EA*/VP

6、P(31脚)EA*为内外程序存储器选择控制端。EA*=1,访问片内程序存储器,但在PC(程序计数器)值超过0FFFH(以51单片机为例)时,即超出片内程序存储器的4K字节地址范围时,将自动转向执行外部程序存储器内的程序。EA*=0,单片机则只访问外部程序存储器。VPP为本引脚的第二功能。用于施加编程电压(例如+21V)。,2.2.3I/O口引脚(1)P0口:双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用口。(2)P1口:8位准双向I/O口。(3)P2口:8位准双向I/O口,与地址总线(高8位)复用。(4)P3口:8位准双向I/O口,双功能复用口。注意:准双向口与双向三态口的差

7、别。当3个准双向I/O口作输入口使用时,要向该口先写“1”。然后读回的数据才能真实反映该I/O口的输入状态。准双向I/O口无高阻的“浮空”状态。,51单片机最小系统电源复位电路时钟电路PIN31(EA/VPP)拉高P0上拉电阻,2.3MCS-51的CPU由运算器和控制器所构成2.3.1运算器对操作数进行算术、逻辑运算和位操作。,1算术逻辑运算单元ALU2累加器A使用最频繁的寄存器,可写为Acc。A的作用:(1)是ALU的输入之一,又是运算结果的存放单元。(2)数据传送大多都通过累加器A。MCS-51增加了一部分可以不经过累加器的传送指令,即可加快数据的传送速度,又减少A的“瓶颈堵塞”现象。A的

8、进位标志Cy同时又是位处理机的位累加器。,3程序状态字寄存器PSW(1)Cy(PSW.7)进位标志位(2)Ac(PSW.6)辅助进位标志位。(3)F0(PSW.5)用户使用的状态标志位。(4)RS1、RS0(PSW.4、PSW.3):4组工作寄存器区选择控制位1和位0。,RS1RS0所选的4组寄存器000区(内部RAM地址00H07H)011区(内部RAM地址08H0FH)102区(内部RAM地址10H17H)113区(内部RAM地址18H1FH)(5)OV(PSW.2)溢出标志位指示运算是否产生溢出。(6)PSW.1位:保留位,未用(7)P(PSW.0)奇偶标志位P=1,A中“1”的个数为奇

9、数P=0,A中“1”的个数为偶数,2.3.2控制器1程序计数器PC(ProgramCounter)存放下一条要执行的指令在程序存储器中的地址。基本工作方式有以下几种:(1)程序计数器自动加1(2)执行有条件转移或无条件转移指令时,程序计数器将被置入新的数值,从而使程序的流向发生变化。(3)在执行调用子程序调用或中断调用,完成下列操作:PC的现行值保护将子程序入口地址或中断向量的地址送入PC。,2指令寄存器IR、指令译码器及控制逻辑电路2.4MCS-51存储器的结构哈佛(Harvard)结构存储器空间可划分为5类:1.程序存储器空间2.内部数据存储器空间3.特殊功能寄存器SFR-SpecialF

10、unctionRegister4.位地址空间:211个可寻址位。5.外部数据存储器空间:片外可扩展64K字节RAM。,2.4.1程序存储器存放应用程序和表格之类的固定常数。分为片内和片外两部分,由EA*引脚上所接的电平确定。程序存储器中的0000H地址是系统程序的启动地址5个单元具有特殊用途表2-15种中断源的中断入口地址外中断00003H定时器T0000BH外中断10013H定时器T1001BH串行口0023H,2.4.2内部数据存储器128个,字节地址为00H7FH。,00H1FH:32个单元,是4组通用工作寄存器区20H2FH:16个单元,可进行128位的位寻址30H7FH:用户RAM区

11、,只能进行字节寻址,用作数据缓冲区以及堆栈区。2.4.3特殊功能寄存器(SFR)CPU对各种功能部件的控制采用特殊功能寄存器集中控制方式,共21个。有的SFR可进行位寻址,其字节地址的末位是0H或8H。表2-2是SFR的名称及其分布。下面介绍SFR块中的某些寄存器。,表2-2SFR的名称及其分布,1堆栈指针SP指示堆栈顶部在内部RAM块中的位置复位后,SP中的内容为07H。(1)保护断点(2)现场保护堆栈向上生长2.数据指针DPTR高位字节寄存器用DPH表示,低位字节寄存器用DPL表示。3.I/O端口P0P3P0P3分别为I/O端口P0P3的锁存器。,4.寄存器B为执行乘法和除法操作设置的。在

12、不执行乘、除的情况下,可当作一个普通寄存器来使用。5.串行数据缓冲器SBUF存放欲发送或已接收的数据,一个字节地址,物理上是由两个独立的寄存器组成,一个是发送缓冲器,另一个是接收缓冲器。6.定时器/计数器两个16位定时器/计数器T1和T0,各由两个独立的8位寄存器组成:TH1、TL1、TH0、TL0,只能字节寻址,但不能把T1或T0当作一个16位寄存器来寻址访问。,2.4.4位地址空间211个(128个+83个)寻址位。位地址范围为:00HFFH。内部RAM的可寻址位128个(字节地址20H2FH)见表2-3(P24)。特殊功能寄存器SFR为83个可寻址位,见表2-4(P24)。2.4.5外部

13、数据存储器最多可外扩64K字节的RAM或I/O。使用各类存储器,注意几点:(1)地址的重叠性,表2-3内部RAM的可寻址位及位地址,表2-4SFR中的位地址分布,程序存储器(ROM)与数据存储器(RAM)全部64K字节地址空间重叠)。程序存储器(ROM)与数据存储器(RAM)在使用上是严格区分的。(3)位地址空间共有两个区域。(4)片外数据存储区中,RAM与I/O端口统一编址。所有外围I/O端口的地址均占用RAM单元地址,使用与访问外部数据存储器相同的传送指令。图2-6为各类存储器在存储器空间的位置的总结。,2.5并行I/O端口4个双向的8位并行I/O端口(Port),记作P0P3属于特殊功能

14、寄存器,还可位寻址。2.5.1P0端口,(1)P0作输出口使用注意:必须外接上拉电阻才能有高电平输出。,(2)P0作输入口使用区分“读引脚”和“读锁存器”。“读引脚”引脚上的状态经缓冲器读入内部总线;“读锁存器”把锁存器Q端的状态读入内部总线。,当指令中的目操作数是并行端口时,该指令执行的是读出端口锁存器数据,并通过源操作数修改之,然后再写回到端口锁存器。涉及到“读锁存器”操作的指令有:ANLP1,ACPLP12INCP1等等。而当指令中的源操作数是并行端口时,该指令执行的是读取端口引脚PX.i上的状态。涉及到“读引脚”操作的指令有:ANLA,P1MOVC,P15等等。,2.5.2P1端口,P

15、1口只作通用的I/O口使用,因此输出电路中有上拉电阻。因此:(1)P1口作为输出口使用时,外电路无需再接上拉电阻。(2)P1口作为输入口使用时,应先向其锁存器先写入“1”。,2.5.3P2端口,在实际应用中,P2口可以作为高位地址线使用,也可以作为通用I/O口使用。,2.5.4P3端口P3口的某一引脚既可以作为通用I/O使用,又可以根据需要,使用它的第二功能。P3口的第二功能定义,应熟记。,表2-5P3口的第二功能定义口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0*(外部中断0)P3.3INT1*(外部中断1)P3.4T0(定时器0外部计数输入)P3.5

16、T1(定时器1外部计数输入)P3.6WR*(外部数据存储器写选通)P3.7RD*(外部数据存储器读选通),2.5.5P0P3端口功能总结使用中应注意的问题:(1)P0P3口都是并行I/O口,但P0口和P2口,还可用来构建系统的数据总线和地址总线。而P1口和P3口无构建系统的数据总线和地址总线的功能。P0口可作为地址/数据复用线使用,需传送系统的低8位地址和8位数据。P2口仅作为高位地址线使用,不涉及数据。(2)在4个口中只有P0口是一个真正的双向口,P1P3口都是准双向口。(3)P3口具有第二功能,为系统提供控制信号。,(4)IO口的输出性能指标MCS51的拉电流能力(能够从IO口流出的最大电

17、流)100uA,灌电流能力(能够流入IO口的最大电流)10mA。因此,使用MCS51的IO直接驱动LED、数码管等均采用“共阳”接法。当MCS51的IO口无法提供所需的大电流时,通常需要加三极管或其他驱动电路扩流。,共阳接法,共阴接法,2.6时钟电路与时序时钟电路用于产生MCS-51单片机工作所必需的时钟控制信号。2.6.1时钟电路时钟频率直接影响单片机的速度。常用的时钟电路有两种方式:内部时钟方式和外部时钟方式。,2.6.2机器周期、指令周期与指令时序单片机执行的指令的各种时序均与时钟周期有关一、时钟周期单片机的基本时间单位。若时钟的晶体的振荡频率为fosc,则时钟周期Tosc=1/fosc

18、。如fosc=6MHz,Tosc=166.7ns。二、机器周期CPU完成一个基本操作所需要的时间称为机器周期。执行一条指令分为几个机器周期。每个机器周期完成一个基本操作。MCS-51单片机每12个时钟周期为一个机器周期,,一个机器周期又分为6个状态:S1S6。每个状态又分为两拍:P1和P2。因此,一个机器周期中的12个时钟周期表示为:S1P1、S1P2、S2P1、S2P2、S6P2。三、指令周期执行一条指令所需的时间。,四、指令时序执行任何一条指令时,都可分为取指令阶段和指令执行阶段。取指令阶段,PC中地址送到程序存储器,并从中取出需要执行指令的操作码和操作数。指令执行阶段,对指令操作码进行译码,以产生一系列控制信号完成指令的执行。ALE信号是为地址锁存而定义的,以时钟脉冲1/6的频率出现,在一个机器周期中,ALE信号两次有效(注意,在执行访

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论