MC51单片机的硬件结构汇编课件.ppt
《MC51单片机的硬件结构汇编课件.ppt》由会员分享,可在线阅读,更多相关《MC51单片机的硬件结构汇编课件.ppt(95页珍藏版)》请在三一办公上搜索。
1、MC51单片机的硬件结构,MC51单片机的硬件结构,硬件电路与工作原理,硬件电路,硬件电路与工作原理 硬件电路,由该任务引出:1.单片机如何运行程序?2.单片机的软件及数据如何存放?3.单片机程序运行的结果如何送给发光二极管?4.怎样保证CPU工作 ?5.发光二极管为何按一定频率闪烁?,由该任务引出:,相关知识,2.1 MCS-51系列单片机概述,2.1 MCS - 51系列单片机的基本结构1.单片机如何运行程序?单片机和其他微机一样,也拥有一个中央处理器(CPU)。(单片机通过I/O口与外设打交道,单片机的程序与数据保存在存储器中。),相关知识 2.1 MCS-51系列单片机概述 2.1 M
2、,它通过单片机的内部总线,将单片机内部的各个部分:程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等联系在一起 。,内部总线有三种,数据总线:专门用来传送数据信息 。,地址总线:专门用来传送地址信息,选中各操作单元。,控制总线:专门用来传送CPU各种控制命令,以便CPU统一指挥协调工作。完成程序所要执行的各种功能。,它通过单片机的内部总线,将单片机内部的各个部分,CPU执行程序一般包括两个主要过程,第一,就是从程序存储器中取出指令,指令的地址由PC指针提供。,第二,就是执指过程,取出的指令代码首先被送到CPU中控制器中的指令寄存器,再通过指令译码器译码变成
3、各种电信号,从而实现指令的各种功能。,执行,取指令,分析,CPU执行程序一般包括两个主要过程 第一,就是从程序存储器中,2.1 MCS - 51系列单片机的基本结构,单片机是一个大规模集成电路芯片,其上集成有CPU、存储器、I/O口(串行口、并行口)、其它辅助电路(如中断系统,定时/计数器,振荡电路及时钟电路等)。 其基本结构框图如下:,2.1 MCS - 51系列单片机的基本结构,ALU,由定时和控制部件构成的控制器,包括定时控制逻辑、指令寄存器、指令译码器、数据地址指针DPTR、程序计数器PC、堆栈指针SP、RAM地址寄存器以及16位地址缓冲器等。,运算器(ALU、专用寄存器),ALU 由
4、定时和控制部件构成的控制器,包括定时控制逻辑、指令,MCS - 51系列单片机的基本结构图,CPU,RAM,ROM,中断系统,串行口,并行口,定时计数器,振荡电路,X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1,T0 T1,计算机,微机,CPURAMROM中断系统串行口并行口定时,MCS - 51系列单片机的基本结构图,X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1,返回,CPU,RAM,ROM,中断系统,串行口,并行口,定时计数器,振荡电路,X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1,T0 T1,1、RAM被称为随机
5、读写存储器。2、用于存放数据 。3、具有易失性:芯片掉电后,其内的信息消失。,X1 X2,MCS - 51系列单片机的基本结构图,T0 T1,CPU,RAM,ROM,中断系统,串行口,并行口,定时计数器,振荡电路,X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1,T0 T1,1、 ROM被称为只读存储器。2、用于存放程序。3、具有非易失性:掉电后其内的信息依然存在。,返回,T0 T1CPURAMROM,运算器,最终结果 数 中间结果/ 据 最后结果 原始数据 与程序 最后 结果 程 序计算机系统的硬件组成框图,存储器,控制器,输出设备,输入设备,单片机,微机,返回,运算器
6、,DB CPU AB CB 存储器 I/O口 微机的结构框图,单片机,计算机,返回,80C51单片机的内部结构,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,ALU,2.2 中央处理器CPU,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,80C51单片机的内部结构,返回,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE E
7、A,P0P1P2P3,ALU,算术逻辑运算部件主要用来完成数据的算术和逻辑运算。ALU有2个输入端和2个输出端,其中一端接至累加器,接收由累加器送来的一个操作数;另一端接收TMP的第二个操作数。参加运算的操作数在ALU中进行规定的操作运算,运算结束后,一方面将结果送至累加器,同时将操作结果的特征状态送标志寄存器。,返回ATMPPSWBSPDPTRRAMPCROMP1P2P3,89C51单片机的内部结构,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,AL
8、U,1、16位寄存器2、存放下一条将要执行的指令地址.程序中的指令是按照顺序存放在存储器中的某个连续区域.每条指令都有自己的地址,CPU根据PC中的指令地址从存储器中取出将要执行的指令.3、具有自动加1功能,从而指向下一条将要执行的指令地址.4、PC的值可以修改,一般程序是按顺序执行指令的.若改变了的PC的值,则程序将不再按顺序执行。,返回,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,80C51单片机的内部结构,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE
9、EA,P0P1P2P3,IR:用来存放当前正在执行的指令代码 。ID:用来对指令代码进行分析、译码,根据指令译码的结果,输出相应的控制信号。 PLA:产生出各种操作电位、不同节拍的信号、时序脉冲等执行此条命令所需的全部控制信号 。,返回,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,80C51单片机的内部结构,X1X2,PSEN RST ALE EA,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、8位寄存器2、累加器是一个特殊的寄存
10、器,它的字长和微处理器的字长相同,累加器具有输入输出和移位功能,微处理器采用累加器结构可以简化某些逻辑运算。3、由于所有运算的数据都要通过累加器,故累加器在微处理器中占有很重要的位置。,ALU,返回,X1 PSEN RST ALE EAATMPPSWB,80C51单片机的内部结构,X1X2,PSEN RST ALE EA,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,ALU,1、8位寄存器2、在进行乘除法运算时,存放参与运算的一个操作数3、除此之外,作
11、为一般工作寄存器使用,返回,X1 PSEN RST ALE EAATMPPSWB,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、PSW称为程序状态字寄存器,是一个8位寄存器。2、D7 D6 D5 D4 D3 D2 D1 D0 Cy Ac F0 RS1 RS0 Ov - P,ALU,返回,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口
12、,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、程序状态字寄存器。8位寄存器。2、D7 D6 D5 D4 D3 D2 D1 D0 Cy Ac F0 RS1 RS0 Ov - P,ALU,返回,Cy(PSW.7)进位标志位。当运算结果产生进位时, Cy =1;当运算结果没有产生进位时, Cy =0。,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、
13、程序状态字寄存器。8位寄存器。2、D7 D6 D5 D4 D3 D2 D1 D0 Cy Ac F0 RS1 RS0 Ov - P,ALU,AC(PSW.6)辅助进位(或称半进位)标志。 当运算结果的D3向D4产生进位时, AC =1;当运算结果的D3向D4没有产生进位时, AC =0。,返回,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、程序状态字寄存器。8位寄存器。2、D7 D6 D5
14、 D4 D3 D2 D1 D0 Cy Ac F0 RS1 RS0 Ov - P,ALU,OV(PSW.2)溢出标志位。 当运算结果产生溢出时, OV =1;当运算结果没有产生溢出时, OV =0。,返回,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、程序状态字寄存器。8位寄存器。2、D7 D6 D5 D4 D3 D2 D1 D0 Cy Ac F0 RS1 RS0 Ov - P,ALU,P
15、(PSW.0)奇偶标志位。当A中1的个数为奇数时, P =1;当A中1的个数为偶数时, P =0。,返回,ATMPPSWBSPDPTRRAMPCROMP1P2P3P0,80C51单片机的内部结构,X1X2,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、SP称为堆栈指针,8位寄存器2、 SP用来存放堆栈栈顶的地址。,返回,X1ATMPPSWBSPDPTRRAMPCROMP1P2P3,先加(SP+1)后压(数据),先弹(数据)后减(SP-1)。,89H
16、,SP,SP,入栈过程PUSH ACC,出栈过程POP ACC,SP,89H,先加(SP+1)后压(数据),先弹(数据)后减(SP-1)。,80C51单片机的内部结构,X1X2,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、8位寄存器2、 SP用来存放堆栈栈顶的地址。,返回,1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。 2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入
17、数据后,栈顶向上生长,SP也向上生长。3、堆栈栈顶:最后推入堆栈的数据所在的存储单元4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。,63H,64H,65H,66H,67H,栈底,演示,X1ATMPPSWBSPDPTRRAMPCROMP1P2P3,80C51单片机的内部结构,X1X2,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、8位寄存
18、器2、 SP用来存放堆栈栈顶的地址。,返回,1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。 2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。3、堆栈栈顶:最后推入堆栈的数据所在的存储单元4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。,63H,64H,65H,66H,67H,栈底,12H,46H,73H,SP=63H,SP=64H,SP=66H,SP=65H,入栈,X
19、1ATMPPSWBSPDPTRRAMPCROMP1P2P3,80C51单片机的内部结构,X1X2,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、8位寄存器2、 SP用来存放堆栈栈顶的地址。,返回,1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。 2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。3、堆栈栈顶:最后推入堆栈的数据所在的存储
20、单元4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。,63H,64H,65H,66H,67H,栈底,12H,SP=64H,SP=66H,SP=65H,出栈,73H,73H,46H,46H,X1ATMPPSWBSPDPTRRAMPCROMP1P2P3,80C51单片机的内部结构,X1X2,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、8位寄
21、存器2、 SP用来存放堆栈栈顶的地址。,返回,1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。 2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。3、堆栈栈顶:最后推入堆栈的数据所在的存储单元4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。,63H,64H,65H,66H,67H,栈底,SP=64H,SP=66H,SP=65H,73H,73H,46H,46H,12H,X1
22、ATMPPSWBSPDPTRRAMPCROMP1P2P3,80C51单片机的内部结构,PSEN RST ALE EA,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,1、数据指针DPTR是一个 16 位的专用寄存器, 其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示。2、既可作为一个 16 位寄存器DPTR来处理, 也可作为两个独立的 8 位寄存器DPH和DPL来处理。 3、 DPTR 主要用来存放 16位地址,当对 64 KB外部数据存储器空间
23、寻址时, 作为间址寄存器用。在访问程序存储器时, 用作基址寄存器。,返回,演示,PSEN RST ALE EAATMPPSWBSP,DPTR0003H,34H A,TMP,PSW,B,SP,DPTR0003H,RAM,PC,ROM,定时,中断,串口,返回,ALU,读写控制,输入输出电路,地址译码器,RAM芯片,单片机,DB,CB,AB,0003H,DPTR0003H,WR,34H,DPTR 34H ATMPPSWBSPDPTRRAMP,80C51单片机的内部结构,PSEN RST ALE EA,A,TMP,PSW,B,SP,DPTR,RAM,PC,ROM,P1,P2,P3,P0,定时,中断,串
24、口,IR,PLA,ID,振荡,X1X2,PSEN RST ALE EA,P0P1P2P3,80C51内有的4K的ROM; 不够用时可以外扩ROM; 内ROM+外ROM 64K,返回,PSEN RST ALE EAATMPPSWBSP,2.单片机的软件及数据如何存放?,从前面的任务中,我们还看到要控制灯闪烁,必须编制程序,还必须将控制灯的相关数据预先存储,那么,在单片机中的程序和数据是怎样保存的? 原来,在单片机内部有程序存储器和数据存储器,如果内部程序存储器和数据存储器的容量不够的话,还可以在单片机外部为它扩展,最大我们可以将程序存储器空间总容量扩大到64K,将数据存储器在片外再单独扩展64K
25、,这样,以89S51为例,数据存储器的总容量可达64K(片外)128字节(片内)。,MCS-51单片机的存储器组织结构,采用典型的哈佛结构,即程序存储器和数据存储器完全独立,拥有各自的寻址系统,包括片内数据存储器与片外数据存储器都拥有自己独立的寻址系统。,2.3 存储器,2.单片机的软件及数据如何存放? 从前面的任务,MCS-51单片机存储器组织结构,返回,)(外部K64RAM 数据存储器MCS-51单片机存储器,2.3.1 程序存储器2.3.2 内部数据存储器2.2.3 特殊功能寄存器,2.3 存储器,返回,2.3.1 程序存储器2.3.2 内部数据存储器2.,2.3.1 程序存储器,用途:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MC51 单片机 硬件 结构 汇编 课件
链接地址:https://www.31ppt.com/p-1286413.html