MCS单片机结构与原理 目录MCS单片机结构及CPUMCS单片机引脚与总线结构MCS单片机的存储器结构MCS单片机的输入输出端口MCS单片机的时钟及CPU时序MCS单片机的工作方式.pptx
《MCS单片机结构与原理 目录MCS单片机结构及CPUMCS单片机引脚与总线结构MCS单片机的存储器结构MCS单片机的输入输出端口MCS单片机的时钟及CPU时序MCS单片机的工作方式.pptx》由会员分享,可在线阅读,更多相关《MCS单片机结构与原理 目录MCS单片机结构及CPUMCS单片机引脚与总线结构MCS单片机的存储器结构MCS单片机的输入输出端口MCS单片机的时钟及CPU时序MCS单片机的工作方式.pptx(111页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本章讨论本章讨论MCS-51单片机的结构和工作原理,内容主要有单片机的结构和工作原理,内容主要有MCS-51单片机单片机结构、引脚信号、存储器配置、输入结构、引脚信号、存储器配置、输入/输出端口、时钟与输出端口、时钟与CPU时序,以及单片机的时序,以及单片机的工作方式等。工作方式等。本章是单片机的基本内容,为学习后面各个章节的基础,也是从事单片机本章是单片机的基本内容,为学习后面各个章节的基础,也是从事单片机应用开发的基础。应用开发的基础。第1页/共111页2.1 MCS-51单片机内部结构及单片机内部结构及CPU 主要内容主要内容单片机的功能结构及特点单片机的功能结构及特点单片机的内部原理结
2、构单片机的内部原理结构单片机的单片机的CPU第2页/共111页单片机的功能结构及特点单片机的功能结构及特点 MCS-51单片机的内部功能结构如下页图所示,图中是以单片机的内部功能结构如下页图所示,图中是以52子系列单子系列单片机的结构为对象。片机的结构为对象。从图中可以看到,从图中可以看到,MCS-51单片机在一块芯片中集成了微型计算机所单片机在一块芯片中集成了微型计算机所具有的所有部件具有的所有部件,从功能的角度来看,主要包括,从功能的角度来看,主要包括9个部分。个部分。第3页/共111页图2.1 MCS-51(52子系列)单片机功能结构图时钟信号源外部事件信号BUS时钟电路8KB Flas
3、hROM256B RAM128B SFR16位3个定时/计数器64KB总线扩展控制器可编程并行口可编程全双工串行口CPU中断控制器外中断8位4个并行口串行通信总线控制BUS单片机的功能结构及特点 第4页/共111页从图中可以看出,从图中可以看出,MCS-51单片机内部主要包括单片机内部主要包括9个部分:个部分:一个一个8位的微处理器位的微处理器CPU8KB的片内程序存储器的片内程序存储器Flash ROM256B的片内数据存储器的片内数据存储器RAM、128B特殊功能寄存器(特殊功能寄存器(SFR)4个个8位并行位并行I/O端端有一个管理有一个管理6个中断源的中断控制器个中断源的中断控制器3个
4、个16位的定时器位的定时器/计数器计数器一个全双工的一个全双工的UART可扩展可扩展64KB程序、程序、64KB数据存储器的三总线控制电路数据存储器的三总线控制电路片内振荡电路和时钟发生器片内振荡电路和时钟发生器第5页/共111页单片机的内部原理结构单片机的内部原理结构MCS-51单片机的内部原理结构如图单片机的内部原理结构如图2-2所示。所示。与图与图2-1比较,比较,主要的区别是画出了主要的区别是画出了CPU的内部结构的内部结构,图中的中间部分除,图中的中间部分除了了“定时器、串行口定时器、串行口”大方框之外都属于大方框之外都属于CPU部件。部件。下面先介绍下面先介绍CPU部分,对于其它部
5、件,将在本章和后面的章节讲解。部分,对于其它部件,将在本章和后面的章节讲解。第6页/共111页 图2-2 MCS-51(52子系列)单片机内部原理结构图XTAL2 XTAL1P3.0P3.7P1.0P1.7RAM地址端口0驱动器端口2驱动器8KB FlashROM端口0锁存器端口2锁存器端口1驱动器端口3驱动器端口1锁存器端口3锁存器暂存器1SPPSWB寄存器暂存器2ACC256BRAM128B SFR缓冲器PC加1PC程序地址寄存器DPTR定时器、串行口中断部件及特殊功能寄存器地址总线数据总线P2.0P2.7Vcc GND指令寄存器指令译码器指令控制器P0.0P0.7PSENALEEA RS
6、T ALU第7页/共111页单片机的单片机的CPU MCS-51单片机内部有一个功能强大的单片机内部有一个功能强大的8位位CPU,它包含两个基本部分,运算器和控制器。,它包含两个基本部分,运算器和控制器。一、运算器一、运算器运算器包括:运算器包括:算术和逻辑运算部件算术和逻辑运算部件ALU(Arithmetic Logic Unit)累加器累加器ACC 寄存器寄存器B 暂存器暂存器1 暂存器暂存器2 程序状态字寄存器程序状态字寄存器PSW 布尔处理器布尔处理器等等。第8页/共111页单片机的单片机的CPU1、算术逻辑运算部件、算术逻辑运算部件ALUALU可以对可以对4位(半字节)、位(半字节)
7、、8位(一字节)和位(一字节)和16位(双字节)数据进行操位(双字节)数据进行操作。作。这些操作可以是:这些操作可以是:算术运算:算术运算:加、减、加、减、乘、除、加乘、除、加1、减、减1、BCD码数的十进制调整及比较等;码数的十进制调整及比较等;逻辑运算:逻辑运算:与、或、异或、求补及循环移位等。与、或、异或、求补及循环移位等。第9页/共111页2、累加器、累加器ACC(Accumulator)ACC在在CPU结构中占有特殊的位置,所以结构中占有特殊的位置,所以ACC在在指令中使用的非常多。指令中使用的非常多。既做源操作数又做目的操作数既做源操作数又做目的操作数,如在加、减、乘、,如在加、减
8、、乘、除算术运算指令中,在与、或、异或、循环移位逻辑除算术运算指令中,在与、或、异或、循环移位逻辑运算指令等。运算指令等。ACC也作为通用寄存器使用也作为通用寄存器使用,并且可以按位操作,并且可以按位操作,所以所以ACC是一个用处最多、最忙碌的寄存器。是一个用处最多、最忙碌的寄存器。在指令中用助记符在指令中用助记符A来表示来表示。3、B寄存器寄存器B做专门应用:做专门应用:在乘、除运算时,用来存放一个在乘、除运算时,用来存放一个操作数,并且存放运算后的部分结果。操作数,并且存放运算后的部分结果。B做一般应用:做一般应用:在非乘、除运算中,在非乘、除运算中,B可以作为可以作为通用寄存器使用通用寄
9、存器使用。B也是一个也是一个可以按位操作可以按位操作的寄存器。的寄存器。第10页/共111页4、程序状态字、程序状态字PSWPSW是一个是一个8位寄存器,位寄存器,用于设定用于设定CPU的状态和指示指的状态和指示指令执行后的状态令执行后的状态。PSW相当于其它微处理器中的标志寄存器。程序状态字相当于其它微处理器中的标志寄存器。程序状态字PSW的格式如下:的格式如下:PSW(D0H)D7D6D5D4D3D2D1D0CYACF0RS1RS0OVF1P图图2-3 程序状态字程序状态字PSW格式格式 CY(PSW.7):进位、借位标志。在做位操作(布尔操作)时CY作为位累加器。在指令中用C代替CY。A
10、C(PSW.6):半进位、半借位标志,也称为辅助进位标志 F0、F1(PSW.5 和PSW.1):用户标志位,留给用户使用。RS1、RS0(PSW.4 和PSW.3):工作寄存器组选择控制位。工作寄存器:R0、R1、R7第11页/共111页表表2-1 RS1、RS0的组合关系的组合关系RS1 RS0工作寄存器组工作寄存器组 片内片内RAM地址地址0 0第第0组组00H07H0 1第第1组组08H0FH1 0第第2组组10H17H1 1第第3组组18H1FH OV(PSW.2):溢出标志位 当执行算术指令时,由硬件置位或清零来指示溢出状态。有以下几种情况:1)加减运算 在带符号的加减运算中,OV
11、1表示加减运算结果超出了累加器A所能表示的符号数有效范围(128127),即运算结果是错误的,反之,OV0表示无溢出,即运算结果是正确的。对无符号数运算OV没有意义。第12页/共111页2)无符号数乘法运算)无符号数乘法运算无符号数乘法指令无符号数乘法指令“MUL AB”的执行结果也会的执行结果也会影响溢出标志。影响溢出标志。若若A和和B的乘积超过了的乘积超过了255,则,则OV1,反之,反之OV0。由于乘积的高由于乘积的高8位存放于位存放于B中,低中,低8位存放于位存放于A中,中,OV0则意味着只要从则意味着只要从A中取得乘积即可,中取得乘积即可,OV1意味着意味着B中有乘积结果,需要从中有
12、乘积结果,需要从B和和A寄存器中取得乘寄存器中取得乘积结果。积结果。3)无符号数除法运算)无符号数除法运算在除法运算中,在除法运算中,DIV指令也会影响溢出标志,当指令也会影响溢出标志,当除数为除数为0时,时,OV1,否则,否则OV0P(PSW.0):):奇偶标志位奇偶标志位 P表示累加器表示累加器A中中1的个数的奇偶性的个数的奇偶性 A中有奇数个中有奇数个1,P1 A中有偶数个中有偶数个1,P0第13页/共111页5、布尔处理器、布尔处理器 MCS-51单片机有一个布尔处理器单片机有一个布尔处理器布尔处理器以布尔处理器以PSW中的进位标志位中的进位标志位CY为累加器(用为累加器(用C表示)。
13、表示)。功能:功能:专门用于处理位操作专门用于处理位操作。MCS-51单片机有丰富的位单片机有丰富的位处理指令处理指令,如置位、位清,如置位、位清0、位取反、判断位值(为、位取反、判断位值(为1或为或为0)转移,以及通过)转移,以及通过C(指令中用(指令中用C代替代替CY)做位数据传送、位逻辑与、位逻辑或等位操作。)做位数据传送、位逻辑与、位逻辑或等位操作。第14页/共111页 控制器包括程序计数器控制器包括程序计数器PC、指令寄存器、指令寄存器IR、指令译码器指令译码器ID,以及时钟控制逻辑、堆栈指针,以及时钟控制逻辑、堆栈指针SP、地址指针地址指针DPTR等。等。1、程序计数器、程序计数器
14、PC(Program Counter)PC是一个是一个具有自加具有自加1功能的功能的16位的计数器,是位的计数器,是所执行程序的字节地址计数器。所执行程序的字节地址计数器。PC的内容是将要执的内容是将要执行的行的下一条指令的地址。下一条指令的地址。改变改变PC的内容就改变了程序执行的顺序。的内容就改变了程序执行的顺序。2、指令寄存器、指令寄存器IR和指令译码器和指令译码器IDIR(Instruction Register):存放从存放从Flash ROM中读取的指令中读取的指令ID(Instruction Decoder):进行译码,产生进行译码,产生一定序列的控制信号,完成指令所规定的操作。
15、一定序列的控制信号,完成指令所规定的操作。二、控制器二、控制器第15页/共111页3、堆栈、堆栈 堆栈是在堆栈是在RAM中专门开辟的一个特殊用途的存中专门开辟的一个特殊用途的存储区储区。堆栈的访问原则堆栈的访问原则:“先进后出先进后出”、“后进先出后进先出”,即先进入堆栈的数据后移出堆栈,后进入堆栈的数即先进入堆栈的数据后移出堆栈,后进入堆栈的数据先移出堆栈。据先移出堆栈。堆栈的应用:堆栈的应用:主要是用来暂时存放数据。主要是用来暂时存放数据。有两有两种情况使用堆栈:种情况使用堆栈:一是一是CPU自动使用堆栈自动使用堆栈,当调用子程序或响应中,当调用子程序或响应中断,处理中断服务程序时,断,处
16、理中断服务程序时,CPU自动将返回地址存放自动将返回地址存放到堆栈中;当调用子程序时,到堆栈中;当调用子程序时,CPU可能通过堆栈传递可能通过堆栈传递参数。参数。二是程序员使用堆栈二是程序员使用堆栈,用堆栈暂时存放数据。,用堆栈暂时存放数据。堆栈的一端的地址是固定的,称为堆栈的一端的地址是固定的,称为栈底栈底;另一端;另一端的地址是动态变化的,称为的地址是动态变化的,称为栈顶栈顶。堆栈的操作方式堆栈的操作方式 堆栈有两种操作方式堆栈有两种操作方式:数据:数据进栈进栈和数据和数据出栈出栈。进栈和出栈都是在栈顶进行进栈和出栈都是在栈顶进行进栈和出栈都是在栈顶进行进栈和出栈都是在栈顶进行,这就必然是
17、按照,这就必然是按照“先先进后出进后出”、“后进先出后进先出”的方式存取数据。的方式存取数据。第16页/共111页4、堆栈指针、堆栈指针SP堆栈指针堆栈指针SP(Stack Pointer)是一个)是一个8位寄存器,其值为栈顶的地址,位寄存器,其值为栈顶的地址,即即SP指向栈顶指向栈顶。SP是访问堆栈的间址寄存器是访问堆栈的间址寄存器,访问堆栈必须借助于,访问堆栈必须借助于SP。SP具有自动加具有自动加1和自动减和自动减1功能功能。当数据进栈时,。当数据进栈时,SP先自动加先自动加1,然后,然后CPU将数据存入;当数据出栈时,将数据存入;当数据出栈时,CPU先将数据送出,然后先将数据送出,然后
18、SP自动减自动减1。第17页/共111页下图是数据进栈的情况下图是数据进栈的情况数据从栈顶进入数据从栈顶进入 开始状态开始状态 58进栈后的状态进栈后的状态A6、7B进栈后的状态进栈后的状态E7E7E7E6E6E6SPE5SPE5SPE5E1E4E2E4E4E4E3E3E3E2E258E236E136E136E121E021E021E058A67B第18页/共111页单片机的单片机的CPU由于进栈时由于进栈时SP的值增加,即的值增加,即堆栈向地址大的方向生长堆栈向地址大的方向生长,并且,并且栈顶是有栈顶是有效数据效数据,这种堆栈是,这种堆栈是满递增型堆栈满递增型堆栈。7B出栈后的状态出栈后的状
19、态A6、58、36出栈后的状态出栈后的状态E7E7E6E6SPE5SPE5E37BE4E07BE4A6E3A6E358E258E236E136E121E021E07BA65836第19页/共111页5、数据指针、数据指针DPTRDPTR是唯一的是唯一的16位寄存器位寄存器。DPTR既可以作为一个既可以作为一个16位寄存器使用,位寄存器使用,也可以作为两个独立的也可以作为两个独立的8位寄存位寄存器使用器使用。其高字节寄存器用。其高字节寄存器用DPH表示,低字节寄存器用表示,低字节寄存器用DPL表示。表示。DPTR的用途:的用途:主要用于存放主要用于存放16位地址位地址,以便对,以便对64KB的片
20、外的片外RAM和和64KB的程序存储空间作的程序存储空间作间接访问。间接访问。其次也可以存放数据其次也可以存放数据,作为一般寄存器使用。,作为一般寄存器使用。第20页/共111页2.2 MCS-51单片机引脚与总线结单片机引脚与总线结构构 主要内容主要内容单片机引脚信号及功能单片机引脚信号及功能单片机外部总线结构单片机外部总线结构第21页/共111页单片机引脚信号及功能单片机引脚信号及功能 封装:封装:40DIP,44PLCC常用常用40DIP40个引脚分为个引脚分为4类:类:l 电源引脚电源引脚l 晶振引脚晶振引脚l 控制信号控制信号l 输入输入/输出引脚输出引脚T2/P1.0T2EX/P1
21、.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1Vss89C5189C5240393837363534333231302928272625242322211234567891011121314151617181920VccP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPSENP2.7/A15P2.6/A14P2.5/A13P2
22、.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A8第22页/共111页第23页/共111页一、电源引脚一、电源引脚 Vcc(40脚):接脚):接5V电源正端电源正端Vss(20脚):接脚):接5V电源地端电源地端二、晶振引脚二、晶振引脚XTAL1(19脚)脚)XTAL2(18脚)脚)C1和C2取30pF左右,做微调电容。第24页/共111页第25页/共111页三、控制信号引脚三、控制信号引脚1、RST/VPD(9脚)脚)RST:复位信号输入端复位信号输入端,高电平有效高电平有效。单片机正常工作时:单片机正常工作时:RST保持两个机器周期的高电平就会使单片机复位;保持两个机
23、器周期的高电平就会使单片机复位;上电时:上电时:RST上的高电平必须保持上的高电平必须保持10ms以上才能保证有效复位,由于振以上才能保证有效复位,由于振荡器需要一定的起振时间。荡器需要一定的起振时间。VPD:备用电源输入端备用电源输入端,以保持内部,以保持内部RAM中的数据不丢失。中的数据不丢失。当当Vcc的电压的电压降低到低电平规定的值或掉电时降低到低电平规定的值或掉电时,接入电源。,接入电源。第26页/共111页2、ALE/PROG(30引脚)引脚)ALE:地址锁存信号地址锁存信号,每个机器周期输出两个正脉冲,下降沿或低电平,每个机器周期输出两个正脉冲,下降沿或低电平用于控制外接的地址锁
24、存器,锁存从用于控制外接的地址锁存器,锁存从P0口输出的低口输出的低8位地址。位地址。在没有接外部存储器时,可以将该引脚的输出作为时钟信号使用在没有接外部存储器时,可以将该引脚的输出作为时钟信号使用。PROG:片内程序存储器的编程脉冲输入端片内程序存储器的编程脉冲输入端,低电平有效。,低电平有效。第27页/共111页单片机引脚信号及功能单片机引脚信号及功能 3、PSEN(29引脚)引脚)片外程序存储器读选通信号输出端片外程序存储器读选通信号输出端,每个机器周期输出两个负脉冲,低,每个机器周期输出两个负脉冲,低电平有效。在访问片外数据存储器时,该信号不出现。电平有效。在访问片外数据存储器时,该信
25、号不出现。4、EA/Vpp(31引脚)引脚)EA:片外程序存储器选择输入端片外程序存储器选择输入端。低电平时,使用片外程序存储器;低电平时,使用片外程序存储器;高电平时,使用片内程序存储器高电平时,使用片内程序存储器。Vpp:为片内程序存储器编程电压输入端。为片内程序存储器编程电压输入端。第28页/共111页五、输入五、输入/输出引脚输出引脚 称为P0、P1、P2、P3口,每个口8位 P0.0-P0.7 P1.0-P1.7 P2.0-P2.7 P3.0-P3.7 这32个引脚是单片机与外界联系的最重要的通道,即I/O通道,也是我们要掌握的重点。1、P0口,口,P0.0P0.7(3239引脚)引
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MCS单片机结构与原理 MCS单片机结构及CPU MCS单片机引脚与总线结构 MCS单片机的存储器结构 MCS单片机的输入
链接地址:https://www.taowenge.com/p-82685039.html
限制150内