《51单片机的硬件结构.ppt》由会员分享,可在线阅读,更多相关《51单片机的硬件结构.ppt(54页珍藏版)》请在优知文库上搜索。
1、1第2讲:MCS-51的硬件结构MCS-51 MCS-51 单单 片片 机机 原原 理理 及及 设设 计计2本讲课程主要内容(1)51的资源的资源(2)51的外观及引脚简介的外观及引脚简介(3)51的的CPU(4)51的存储器结构的存储器结构(5)51的的I/O端口端口(6)复位电路)复位电路(7)时钟电路)时钟电路MCS-51 MCS-51 单单 片片 机机 的的 硬硬 件件 结结 构构351的资源 包括:微处理器 (8位CPU) 数据存储器(RAM) 程序存储器(ROM/EPROM) IO口 (P0口、Pl口、P2口、P3口) 同时具有串行通讯、定时器/计数器、中断系统及特殊功能寄存器(S
2、FR)。4资源的简单说明1 数据存储器(RAM):51片内为128个字节,52为256字节。片外最多可外扩至64k。2程序存储器(ROM/EPROM): 8031不含; 8051为4k ROM,但用户不可改写。 8751则为4k EPROM。 片外最多可外扩至64k5资源的简单说明3中断系统:具有5个中断源,分为2个中断优先级。4定时器/计数器:2个16位定时器/计数器,具有四种工作方式。5串行口:1个全双工的串行口,具有四种工作方式。6P0P3口:为4个并行8位I/O口。6资源的简单说明7特殊功能寄存器(SFR):共有21个,用于对片内各功能模块进行管理、控制、监视。实际上是一些控制寄存器和
3、状态寄存器,是一个具有特殊功能的RAM区。 8微处理器(CPU):为8位的CPU,且内含一个1位的位处理器,不仅可处理字节数据,还可以进行位变量的处理。751片内结构8资源的特点 MCS-51单片机的硬件结构具有功能部件种类全,功能强等特点。 特别指出:MCS-51 除具有8位数据处理运算能力外,还具有1位处理功能,这使得51在逻辑电路仿真、过程控制方面是非常有效。951的外观及引脚10引脚的分类(1)电源及时钟引脚:Vcc、Vss、XTAL1、XTAL2.(2)控制引脚:PSEN、ALE、EA、RESET(3)I/O口引脚:P0、P1、P2、P3。 MCS-51属于三总线结构:数据总线(DB
4、)地址总线(AB)、控制总线(CB)。11引脚功能分类121 电源及时钟引脚 电源引脚: Vcc(40)+5V、 Vss(20)GND 时钟引脚: XTAL1、XTAL2. 采用片内振荡器时,这两个引脚接晶振;采用外部振荡器时, XTAL1接地,XTAL2接外部振荡器的输出端。132 控制引脚 RSTVPD(9脚):当振荡器启振后,在此引脚加上两个机器周期两个机器周期以上的高电平将使单片机复位。在单片机正常工作时,此脚应为0.5V低电平。 另外,此引脚可接上备用电源,系统掉电时向内部RAM供电,使其保持数据。 什么是机器周期?14 ALEPROG(30脚):当访问单片机外部存储器时,ALE(地
5、址锁存允许)输出脉冲的下降沿用于16位地址的低8位的锁存信号。 即使不访问外部锁存器,ALE端仍有正脉冲信号输出,此频率约为时钟振荡器频率的 16。但在执行某些指令时会不发出ALE信号,因而用户不能用做时钟源或定时。15 PSEN(29脚):是访问外部程序存储器的读选通信号。 EA(31脚):当EA端保持高电平时,51先访问内部程序存储器,但在PC(程序计数器)值超过0FFFH时(对于8051、8751来说),将自动转向执行外部程序存储器内的程序。 当EA保持低电平时,不管是否有内部程序存储器,只访问外部程序存储器。163 I/O口引脚 P0口:双向8位三态I/O口,此口为地址总线(低8位)及
6、数据总线分时复用口可带8个LSTTL负载。 P1口:8位准双向I/O口,可带4个LSTTL负载。 P2口:8位准双向I/O口,与地址总线(高8位)复用,可带4个LSTTL负载。 P3口:8位准双向I/O口,双功能复用口。1751的中央处理器(CPU) 运算部件:运算部件包括算术逻辑部件ALU、位处理器、累加器A、寄存器B、暂存器以及程序状态字PSW寄存器等。该模块的功能是实现数据的算术、逻辑运算、位变量处理和数据传送等操作。 控制部件:控制部件是单片机的神经中枢,以主振频率为基准(每个主振周期称为振荡周期),控制器控制CPU的时序,对指令进行译码,然后发出各种控制信号,它将各个硬件环节组织在一
7、起。18运算部件:ALU、A、B ALU:功能强大,它不仅可对8位变量进行逻辑“与、或、异或”、循环、求补和清零等基本操作,还可以进行加、减、乘、除等基本运算,ALU还具有位处理操作,如置位、清零、求补、测试。转移及逻辑“与、或”等操作。 累加器A:ALU中的主要寄存器,大部分指令都用到它。 寄存器B:是为执行乘法和除法操作设置的,在不执行乘、除法操作的一般情况下可把它当作一个普通寄存器使用。19程序状态寄存器:PSW PSW.1是保留位,未用。 Cy(PSW.7)进位标志位,在执行算术和逻辑指令时,可以被硬件或软件置位或清除,在位处理器中,它是位累加器。 Ac(PSW.6)辅助进位标志位。
8、F0(PSW.5)标志位,它是由用户使用的一个状态标志位。 RS1、RS0(PSW.4、PSW.3):寄存器区选择控制位 OV(PSW.2):溢出标志位。 P(PSW.0)奇偶标志位。每个指令周期都由硬件来置位或清除,以表示累加器A中值为1的位数的奇偶数。20运算部件:PSW 工作寄存器的选择: RS1 RS0软件写入 0 0 区0(选择内部RAM寄存器地址00H07H) 0 1 区1(选择内部RAM寄存器地址08H0FH) 1 0 区2(选择内部RAM寄存器地址10H17H) 1 1 区3(选择内部RAM寄存器地址18H1FH)21控制部件 时序图 每2个振荡周期作为1个状态周期,每个状态周
9、期分为2个时相P1、P2,每6个状态周期作为1个机器周期。2251的存储器结构 程序存储器 内部数据存储器 特殊功能寄存器(SFR) 位地址空间 外部数据存储器23存储器简单介绍程序存储器 用来存放程序的存储器,存储器中存放的实际上是由用户程序形成的二进制码(机器码),该存储器必须具有非易失性。外部可扩展64k字节。24存储器简单介绍内部数据存储器 MCS51单片机内部有128个字节的随机存取存储器RAM,作为用户的数据寄存器、它能满足大多数控制型应用场合的需要,用作处理问题的数据缓冲器。52系列具有256字节的内部RAM。25存储器简单介绍特殊功能寄存器(SFR) 特殊功能寄存器反映了MCS
10、51的状态,实际上是MCS51的状态字及控制字寄存器。51单片机通过写SFR来控制相应功能部件(定时器、串口、中断等)的工作方式,同时SFR也综合的、实际的反映了整个单片机基本系统内部的工作状态。例如,前面提到的PSW程序状态字寄存器,就是一个特殊功能寄存器。26存储器简单介绍位地址空间 MCS51单片机内部具有211个可寻址的位,他们存在于内部RAM(128个)、和SFR(83个)中。用来存放一些位变量。 有相应的位操作指令来控制其读写。27存储器简单介绍外部数据存储器 当片内的RAM不够用时,MCS51可在片外扩展64k的数据存储器。28程序存储器 程序存储器中存放程序和表格,最多外扩64
11、k。由程序计数器(PC)控制程序的执行,PC中存放的是将要执行的下一条指令的地址,是由单片机内部硬件自动生成的,且自动加一。复位后PC值为0000H,因而程序总是从程序存储器的0000H处开始执行。29程序存储器 一些指令会影响到PC的连续性,例如跳转类,中断响应等。 例如中断,单片机响应不同的中断后,PC被硬件赋予不同的值。称为单片机的中断入口地址: 外部中断0(INT0) 0003H 定 时 器0(T0) 000BH 外部中断1(INT1) 0013H 定 时 器1(T1) 001BH 串 行 口 0023H 由于程序存储器的起始部分具有特殊意义,在编制程序时主程序中最好有跳转指令,在中断
12、程序中也要有跳转指令。30内部数据存储器 MCS51内部数据存储器(RAM)共有128个字节,地址00H7FH。51对内部数据存储器有丰富的操作指令。31特殊功能寄存器(SFR) SFR共21个,存在于单片机中的一部分RAM单元中,地址范围80HFFH,呈离散分布。32特殊功能寄存器(SFR) SFR简介33特殊功能寄存器(SFR)可位寻址的SFR位地址34SFR累加器A 累加器A是一个最常用的专用的寄存器,大部分单操作数指令的操作数取自累加器,很多双操作数指令的一个操作数取自累加器,加、减、乘、除算术运算指令的运算结果都存放在累加器A或B寄存器中。寄存器B 在乘、除指令中,用到B寄存器。不进
13、行算数操作时,可作为一般寄存器使用。程序状态字寄存器PSW PSW是一个8位寄存器,它包含了程序状态信息。35SFR栈指针SP 栈指针SP是一个8位专用寄存器,它指示出堆栈顶部在内部RAM块中的位置,51单片机栈向上生成,且后入先出。系统复位后,SP初始化为07H,使得堆栈事实上由08H单元开始,考虑到08H1FH单元分别属于工作寄存器区13,若在程序设计中要用到这些区,则最好把SP值改置为1FH或更大的值。例如SP60H,CPU执行一条A累加器进栈指令, push a; 执行后寄存器状态: (61H)=A,(sp)61H。36SFR数据指针DPTR 数据指针DPTR是一个16位的SFR,其高
14、位字节寄存器用DPH表示,低位字节寄存器用DPL表示。DPTR即可以作为一个16位寄存器来用,也可以作为两个独立的8位寄存器DPH和DPL来用。37SFR端口P0P3 特殊功能寄存器P0P3分别为I/O端口P0P3的锁存器。即每一个8位I/O口都为RAM的一个单元(8位)。 在MCS51中,I/O口和RAM统一编址,所有访问RAM的指令,都可用来访问I/O口。对于片外数据存储器和扩展的I/O口,也是统一编址的。38SFR串行数据缓冲器SBUF 串行数据缓冲器SBUF用于存放欲发或已接收的数据,它在SFR块中只有一个字节地址,但是物理上由两个独立的寄存器组成,一个发送一个接收。定时器/计数器 5
15、1单片机有2个16位定时/计数器T0、T1,他们各由两个独立的8位寄存器组成,分别是TH0、TL0;TH1,TL1。不能把T0、T1作为16位寄存器操作。39位地址空间 MCS51中共有可寻址的位211个,构成了8051的位地址空间。在RAM区,有可寻址128位,其位地址为007FH。可位寻址RAM的字节地址为20H2FH。40位地址空间 可位寻址的SFR。共83位41外部数据存储器 当内部RAM不够使用时,可以外扩数据存储器,最多64k。42MCS51存储器结构的特点 地址重叠性程序存储器与数据存储器操作指令不同 位地址空间共有两个区域 堆栈区可自由设定片外数据存储器与I/O口统一编址43M
16、CS51存储器结构示意44I/O端口简介 MCS51单片机具有4个双向8位I/O口,每个口都有一个锁存器。 P0口是三态双向口,作为数据和低8位地址的分时复用口,由ALE信号作为地址锁存。 P1口准双向口,供用户使用。 P2口准双向口,作为高8位地址使用,当扩展的外部存储器小于64k时,即有未用到的P2口线,可作为一般I/O口使用。 P3口准双向口,即可作为一般I/O口使用,也可作为第二功能口使用。45P3口的第二功能46I/O口的内部结构 每一位引脚由锁存器、输出驱动器和输入缓冲器组成。 注意读锁存器、读引脚的不同。 双向口与准双向口 P0口双向口,没有上拉电阻,可以处于浮空、高阻状态。 P1、P2、P3口含有上拉电阻,当外部维持低电平时,要能提供源电流;外部低电平消失后,自动拉高。 作为输入口使用时必须先置1,关断输出驱动器。47I/O口的内部结构(P1)48I/O口的读操作读锁存器 读锁存器指令是从锁存器中读取数据,进行处理,并把处理后的数据重新写入锁存器中,这类指令称为读、修改、写指令。在ANL、ORL、XRL; JBC; CPL; 等指令中,当目的操作数为某一IO口或IO口的