资源描述
计算机硬件技术基础,计算机科学与软件学院 计算机基础教学部,重点与要求,重点: 微型计算机的工作原理 MCS-51单片机的硬件组成 1、存储器结构 2、CPU结构 (运算器,布尔处理器) MCS-51单片机复位后的状态,要求: 清楚MCS-51存储器结构 思考题 第一章 1-13 1-15 第二章 2-1 2-11 2-20,主要内容,微型计算机基础知识 第一章 微型计算机基础 1.2 微型计算机的组成及其工作原理 MCS-51单片机硬件结构 第二章 MCS-51单片机的结构和工作原理 MCS-51单片机存储结构小结,1.2 微型计算机的组成及其工作原理,1.2.1 微型计算机的组成 1、存储器(类型、结构、重要指标) 2、微处理器MPU (结构图) 3、I/O接口和外设 4、地址、数据、控制总线 1.2.2 微型计算机的基本原理,1.2.1 微型计算机的组成,P5,Random Access Memory,Read Only Memory,类型: ROM 正常工作时只能读不能写的存储器,1、存储器(类型、结构、重要指标),不 易 失,P5,RAM 正常工作时即可读又可写的存储器,易失,ROM和RAM的主要区别: 1、断电后ROM内的信息不丢失 RAM 中的信息立即丢失 2、读/写方式不同 ROM采用特殊方式写入信息, 正常工作是只读方式 RAM正常工作既能读又能写,ROM和RAM芯片均有分四组引脚线: (ROM另有特殊的引脚线) 1、地址线 传送存储器的地址码,其根数决定存储单元个数即字数 2、数据线 传送对某一单元进行读/写的数据,双向 决定一个单元内存储二进制数的位数,即字长 3、控制线 传送读/写控制信号,以控制读/写操作 4、电源线 +5V 和GED线,结构,P6,存储器的两个重要指标,存贮容量 存储容量2地址线条数数据线的条数bit 存储单元个数字长 例: 芯片2732 4KB 即 4 K 8bit=32Kb 地址线 12根,数据线 8根 芯片 2114 1K 4bit 地址线 10根, 数据线 4根 问? 2764 8KB 地址线 ?根,数据线 ?根 存取周期 存储器从接到存储单元地址开始, 到读出或写入数据为止所用的时间。,字数,2、微处理器MPU,结构图,P7,在控制器的控制下,对二进制数进行算术运算或逻辑运算。 1 算术逻辑运算单元 ALU (8位) 运算器的核心,以全加器为基础,辅以移位和控制逻辑组合而成 在控制器的控制下,可进行加减乘除算术运算和各种逻辑运算 2 累加器 A 由8位触发器组成的移位寄存器, 运算前存放一个操作数, 运算后存放运算结果,可进行累加 3 暂存器 TMP 8位寄存器,暂存另一个操作数 4 程序状态字 PSW 8位触发器组成, 存放ALU操作中形成的状态 例 CY OV AC 标志位 5 通用寄存器组 PS 用于存放操作数或运算结果,1)运算器(主要由五部分组成)以8位微机为例,发布操作命令的机构,是计算机的指挥中心,控制计算机的各部分协调工作,用以自动执行程序。 1 指令部件 用来读取指令、分析指令和为完成指令产生控制信号的逻辑部件,也是控制器的核心。指令部件由以下三部分组成: 程序计数器PC(Program Counter) 指令寄存器IR(Instruction Register) 指令译码器ID(Instruction Decoder) 2 时序部件 由时钟系统和脉冲分配器组成,用于产生微操作控制部件所需的定时脉冲信号。 3 微操作控制部件 为指令译码器ID的输出信号配上节拍电位和节拍脉冲,也可和外部进来的控制信号组合,共同形成相应的微操作控制序列,以完成规定的操作。,2)控制器(主要由三部分组成),程序 存储器,PC,取出 指令码,指令 寄存器IR,指令 译码器ID,把指令转变 成所需要得 电平信号,CPU 产生执行该指令所需的各种控制信号,取指令,分析指令,执行指令,122 微型计算机的基本原理,程序执行过程举例 求2143和的程序。 机器码 机器码 助记符 功能 0111010000010101B 7415H MOV A,#15H ;(A)15H 0010010000101011B 242BH ADD A,#2BH ;(A)(A)2BH 1000000011111110B 80FEH SJMP $ ; 停止,15H,2BH,40H,CY OV AC,0,0,1,PSW,P10,第二章MCS-51单片机的结构和工作原理,本教材主要讲述MCS-51单片机,包括它的硬件、软件及其应用。 本章介绍MCS-51单片机的结构、工作原理及其组成部件和各部件的功能。 2.1 MCS-51系列单片机的结构 2.2 8051单片机内部结构和功能 2.3 MCS-51单片机的引脚功能 2.4 MCS-51单片机的工作方式 2.5 MCS-51单片机的时序,2.1.2 MCS-51单片机的应用特性,21 MCS-51系列单片机的结构,2.1.1 MCS-51 单片机的基本组成,存储器,I/O接口,P35,MCS-51单片机芯片有许多种: 如8051、8031、8751、80C51、80C31等。 它由8个部件组成, 1、中央处理器(CPU)核心 2、时钟电路 12MHz 3、程序存储器(ROM/EPROM) 4KB 4、数据存储器(RAM) 128B+128B SFR 5、并行I/O口(P0P3口)P0和P2兼作外总线 6、串行口 全双工串行口 7、定时器/计数器 2个16位 8、中断系统 5个中断源,高级和低级两级优先级别 它们都是通过单一总线连接,并被集成在一块半导体芯片上,为单片微型计算机(Single-Chip Microcomputer),片内存储器,片内I/O接口,1. MCS-51单片机系列 两大系列:MCS-51子系列和MCS-52子系列。 其中51子系列是基本型,而52子系列属于增强型。 各子系列配置如表2-1所示。(P36) 片内ROM形式 无 ROM EPROM 8031 8051 8751 80C31 80C51 87C51 8032 8052 8752 80C32 80C52 87C52 功能增强的具表现在片内ROM和片内RAM的容量、 定时器/计数器的个数、中断源的个数。,212 MCS-51单片机的应用特性,51 子系统,52 子系统,P36,2. 单片机芯片的半导体工艺 MCS-51系列单片机采用以下两种半导体工艺生产 HMOS 芯片型号中不带有字母“C”的, 具有高速度、高密度、功耗较大的特点 。 CHMOS 芯片型号中凡带有字母“C”的, 具有高速度、高密度、低功耗的特点 例如 8051的功耗为630mW, 80C51的功耗只有120mW。 3. MCS-51单片机片内ROM存储器的配置形式有三种: 掩模ROM型 (由厂家一次写入,成本低) EPROM型 (由用户可反复写入,成本较高) 无ROM (需在片外扩展) 各有特点,也各有其适用场合,可根据需要进行选择,2.2.1 中央处理器CPU 2.2.2 存储器结构 2.2.3 定时器/计数器(T/C) 2.2.4 并行I/O接口 2.2.5 串行口 2.2.6 中断系统,22 8051单片机内部结构和功能,22 8051单片机内部结构和功能,P38,运算器,控制器,一、运算器 功能:运算部件,在控制器的控制下 实现算术、逻辑运算、位变量处理、移位、数据传送 1. 算术逻辑单元(ALU)按指令对8位二进制数进行各种算术 逻辑运算、位处理、移位和数传送等运算 运算结果影响PSW的有关标志位 2. 累加器(ACC)8位 存放操作数和中间结果 工作频繁,大多数操作均通过它进行 3. 寄存器B 8位 乘法时用于存乘数/积的高8位 除法时用于存除数/余数 4. 程序状态字(PSW)8位 特殊功能寄存器 5. 布尔处理器 1位 它以进位标志(CY)作为累加位 进行位操作,程序状态字PSW各标志位的含义,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,CY (PSW.7) 进位标志位 AC(PSW.6) 辅助进位(或称半进位)标志 F0(PSW.5) 用户标志位 RS1和RS0(PSW.4,PSW.3)工作寄存器组选择位 OV(PSW.2) 溢出标志位 PSW.1 未定义位 P(PSW.0) 奇偶标志位,P38,CY是PSW中最常用的标志位。 由硬件或软件置位和清零。 字节运算中(ALU): 它表示运算结果是否有进位(或借位)。 Cy=SUBC8 加法时(SUB=0):有进位 Cy由硬件置“1” 即Cy=1; 无进位 CY被硬件清“0” 即Cy=0。 减法时(SUB=1):有借位 Cy由硬件置“1” 即Cy=1; 无借位 CY被硬件清“0” 即Cy=0。 位操作(布尔操作)时,CY作为累加器使用,其作用相当于字节操作的累加器ACC。,Cy,在指令中可作为转移的条件 JC rel ; cy=1转移 JNC rel ; cy=0 转移 位操作指令中CY作为位累加器,简写成C ANL C, bit ANL C, / bit ORL C, bit ORL C, / bit SETB C CLR C CPL C MOV C,bit MOV bit,c,Cy,C,AC(PSW.6) 辅助进位(或称半进位)标志。 当执行加减运算时,其运算结果产生低四位向高四位进位或借位时, AC由硬件置“1”;否则AC位被自动清“0”。 AC=SUB C4 一般在BCD码运算时,系统利用AC位进行十进制调整。,Ac,OV,OV(PSW.2) 溢出标志位 它反映运算结果是否溢出,溢出时则由硬件将OV位置“1”;否则置“0”。只有对补码运算起作用。 双进位法判溢出: OV=C8 C7,溢出和进位是两种不同性质的概念。 溢出是指两个带符号数运算时,运算结果超出了累加器以补码所能表示一个有符号数的范围。 而进位则表示两数运算最高位(D7)相加(或相减)有无进位(或借位)。 因此使用时应加以注意。,OV 与 Cy,F0(PSW.5) 用户标志位。 用户可根据自己的需要对F0位赋予一定的含义,由用户置位或复位,作为软件标志。 SETB F0 ; 置位 CLR F0 ; 复位 相当于高级语言中的逻辑变量,F0,P(PSW.0) 奇偶标志位 P标志表明累加器ACC中1的个数的奇偶性。在每条指令执行完后,单片机根据ACC的内容对P 位自动置位或复位。 若累加器ACC中有奇数个“1”,则P=1; 若累加器ACC中有偶数个“1”,则P=0。,P,1程序计数器(PC)16位计数器(重要) PC是一个16位的程序地址寄存器,其内容是当前执行指令的下一条指令在程序存储器中的地址,这样就确定程序的运行顺序,寻址范围达64KB。 PC具有自动加1的功能。一般情况,在执行程序时,CPU每从ROM中取出一条指令,PC就自动加1,从而保证了程序能够自动顺序执行。 CPU要执行那条指令由PC的值决定,但PC单元本身没有地址,是不可寻址的,用户无法对其进行读写,因此要实现程序的转移,需要通过执行转移、调用、返回等指令自动改变PC内容。 在单片机复位时,PC= 0000H。,二、控制器,2指令译码器ID 是分析指令功能的部件。指令取出经指令寄存器IR送至指令译码器ID时 ,ID对该指令进行译码,即把指令转变成执行相应操作的控制电位。 3定时控制电路 根据ID输出的控制电位,在OSC配合下产生指令时序脉冲,控制单片及各功能部件协调地、有节拍地完成相应指令所规定的全部操作。 4数据指针(DPTR)16bit 数据指针DPTR为16位寄存器。它的功能是存放16位的地址,作为访问外部程序存储器和外部数据存储器时的地址。 编程时,DPTR既可按16位寄存器使用,也可以按两个8位寄存器分开使用。即: DPH DPTR的高8位 DPL DPTR的低8位,5. 堆栈指针(SP)8 bit 堆栈是一种遵循“后进先出” 原则进行存取的存储区域, 堆栈有栈顶和栈底之分。 栈底地址一旦设定后,固定不变,它决定了堆栈在RAM中的物理位置。 SP的内容就是堆栈栈顶的存储单元地址。不论是数据进栈还是数据出栈,都是对堆栈的栈顶单元进行的,即对栈顶单元的写和读操作。 当堆栈中空无数据时,栈顶地址和栈底地址重合。,2.2.2 存储器结构,一 程序存储器,二 片内数据存储器低128个单元(RAM),四 片外数据存储器(RAM/I/O),二 特殊功能寄存器(SFP),2.2.2 存储器结构,8051单片机在系统结构上采用了哈佛型,其存储器在物理结构上分程序存储器(ROM) 和数据存储器(RAM)。 有四个物理上相互独立的存储空间 :其配置如图2-3所示。,片内ROM,片外ROM,片内RAM,片外RAM/I/O口,60KB,4KB,64KB,128B RAM,128B SFR,P40,8051存储空间分为: 4KB的片内ROM,其地址从0000H0FFFH; 与片内统一编址的64KB的片外ROM, 其地址从0000H0FFFFH; 256B的片内RAM,其地址从00H0FFH(其中特殊 功能寄存器分散分布在地址从80H0FFH的存储空间内) 64KB片外RAM,地址也从0000HFFFFH。 ; 由上可以看出,下列空间地址是重叠的: 程序存储器中片内外低4K字节地址重叠; 数据存储器中片内外低256个字节地址重叠。 数据存储器与程序存储器64K地址全部重叠; 虽然地址重叠,但由于采用了不同的操作指令及控制信号EA、PSEN的选择,因此不会产生混乱。,说明,程序存储器用来存放程序和常数,分为片内和片外两部分,其中8051内部有4kB的ROM,地址范围是0000H-0FFFH,片外用16位地址线可扩充64kB的ROM,地址范围是0000H-0FFFFH。,一 程序存储器,如何确定是从片内ROM取指令,还是从片外ROM取指令呢 ?,读取ROM中的常数、表格中的数据时,通常采用“MOVC”指令。 在程序存储器中有些特殊单元是留给系统使用的,用户不能占用,使用时应注意。 特殊单元: 0000H-0002H(开机复位单元) 3个 0003H-000AH(INT0中断地址区) 8个 000BH-0012H(T/C0中断地址区) 8个 0013H-001AH(INT1中断地址区) 8个 001BH-0022H(T/C1中断地址区) 8个 0023H-002AH(串行口中断地址区) 8个,用户RAM区 (堆栈、数据缓冲) (30H-7FH),位寻址区 (位地址00H-7FH) (20H-2FH),第3组通用寄存器 (18H-1FH),第2组通用寄存器 (10H-17H),第1组通用寄存器 (08H-0FH),第0组通用寄存器 (00H-07H),用于存放操作数及中间结果。由于它们的功能预先不作规定,因此称为通用寄存器,也叫工作寄存器。 任一时刻,CPU只能使用一组工作寄存器。(由PSW的RS0和RS1决定),可以直接对位进行寻址。(共16个单元,128个位),用于存放用户数据和及做堆栈用。,00H,7FH,二 片内RAM低128个单元, 工作寄存器(00H1FH) RS1 RS0 寄存器组 片内RAM地址 0 0 第0组 00H07H 0 1 第1组 08H0FH 1 0 第2组 10H17H 1 1 第3组 18H1FH,R0R7,4个,这16个单元(共计128位)的每一位都有一个8位表示的位地址,位寻址范围为00H7FH,如表2-3所示P42。 位寻址区的每一个单元既可作为一般RAM单元使用,进行字节操作,也可以对单元中的每一位进行位操作。 MCS-51布尔处理器的存储空间就是指这个位寻址空间。,28H 字节地址,位地址, 可位寻址区(20H2FH),28H 字节地址,MOV 28H,#56H,SETB 43H,CLR 28H.2,1,0,字节操作,位操作,“位”有两种表示形式,位地址,存储单元地址.位,30H7FH是供用户使用的一般RAM区,也是数据缓冲区,共80个单元。对用户RAM区的使用没有任何规定或限制,一般用于存放用户数据及作堆栈区使用。, 用户RAM区(30H7FH),8051片内有21个特殊功能寄存器,又称为专用寄存器(SFR)。它们不连续地分布在片内RAM的高128个存储单元中,即80H0FFH RAM地址中。 在21个特殊功能寄存器中,有一部分是属于CPU范围的,例如累加器ACC、寄存器B、程序状态字PSW等;另一部分属于接口的范围,例如I/O的锁存器P0P3,定时器和控制寄存器等。,3 高128字节特殊功能寄存器 SFR,使用时注意: 在80H0FFH RAM地址中,除了这21个SFP单元,其它单元为虚单元,是不能被读写的。 对特殊功能寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器单元地址。例如:0F0H和B,0D0H和PSW,一般多使用寄存器符号,易于识别。,在21个特殊功能寄存器中,有11个寄存器具有位地址,见表2-5(P43)。如寄存器B, 0F0H字节地址,位地址0F0H 0F7H,字节地址与其最低位的位地址相同。,2.2.2.3 片外数据存储器(RAM/I/O),2、片外RAM地址范围为0000H0FFFFH,其中在0000H00FFH这段区间与片内数据存储器地址是重叠的,CPU使用MOV指令访问片内RAM,使用MOVX指令访问片外RAM。 3、若用户应用系统有扩展的I/O接口时,MSC-51的片外RAM与扩展的I/O口统一编址,即所有扩展的I/O接口地址均占用片外RAM的单元地址,单片机可以象访问片外RAM那样访问外部I/O接口,对I/O进行读写操作 。,1、片外数据存储器,即片外RAM一般由静态RAM组成。MCS-51系列单片机访问外部数据存储器通过一个特殊寄存器DPTR寻址。由于DPTR是16位,则外部数据存储器可寻址的范围是64kB。,MCS-51系列单片机芯片均为40个引脚,HMOS工艺制造的芯片采用双列直插式封装(DIP)。 本节主要介绍引脚功能和引脚功能的复用。,2.3 MCS-51单片机的引脚功能,P48,一 引脚信号功能介绍,1、I/O(输入/输出)端口(Port)P0、P1、P2、P3 P0口 通用I/O接口:当不接外存储器或不扩展I/O口时,P0口可作为一个通用I/O接口。 地址/数据口:在访问外存储器时,P0口分时作为低8位地址线和8位双向数据线。 P1口 P1口只能做通用I/O接口。 P2口 通用I/O接口; 地址口:在访问外部存储器时,输出高8位地址。 P3口 通用I/O接口; 第二功能:每个引脚还有特殊的功能。,4、电源引脚Vss和Vcc Vss为电压接地端,Vcc为+5V电源端。,3、时钟电路引脚XTAL1和XTAL2 XTAL1和XTAL2是外接晶体引线端。当芯片使用内部时钟时,用于外接石英晶体和电容;当用外部时钟时,用于接外部时钟脉冲信号。,二 引脚信号的第二功能,1、P3口线的第二功能,对于各种型号的芯片,其引脚的第一功能信号是相同的,所不同的只是引脚的第二功能信号。 对于控制信号引脚,由于第一功能信号与第二功能信号是单片机在不同工作方式下的信号,因此不会发生使用上的矛盾。 但是P3口的情况却有所不同,它的第二功能信号都是单片机的重要控制信号,因此在实际使用时,先要保证第二功能信号。P0和P2口,在有外接存储器时,常使用第二功能。因此以上引脚只有在不使用第二功能时,才能作为通用I/O接口使用。,MCS-51单片机的工作方式有 复位方式 单步执行方式 程序执行方式 掉电和低功耗方式 以及EPROM编程、校验与加密方式等。,2.4 MCS-51单片机的工作方式,P49,1、单片机的初始化操作复位 单片机复位后,程序计数器PC和特殊功能寄存器的状态(见书P50页)。 复位后,PC初始化为0000H,使单片机从0000H开始执行程序。复位后不影响片内RAM。,2.4.1 复位方式,2、复位信号 RST引脚是复位信号的输入端,复位信号为高电平有效。当高电平持续24个震荡脉冲周期(两个时钟周期)以上时,单片机完成复位。,3、复位方式 复位分为上电复位和按键手动复位。,复位后各SFR的初始状态重要,P51,P53,2.4.3 程序执行方式,程序执行方式是单片机的基本工作方式,有以下两种方式:单步执行方式、连续执行方式 单步执行就是通过外来脉冲控制程序的执行,使之达到来一个脉冲就执行一条指令的目的。而外来脉冲是通过按键产生的,因此单步执行实际上就是按一次键执行一条指令。,在单片机复位时,PC= 0000H,CPU从0000H开始逐条执行存放在ROM中的程序指令, 由于PC具有自动加1的功能,因此保证了程序的连续执行。但是MCS-51单片机从0003H开始的若干个单元规定为中断服务程序的入口地址,所以通常在ROM的0000H0002H单元存放一个三字节的长转移指令 LJMP addr16,其中addr16为实际程序起始地址,使PC指向实际程序的起始地址,以便跳转到实际程序的入口去执行。 应用转移指令可使程序跳转至ROM中0000H0FFFFH的任何单元。,连续执行方式,单片机系统在运行程序过程中,如发生掉电故障将会使RAM和寄存器中的数据丢失,其后果有时是非常严重的。 为此,MCS-51单片机可以设置掉电保护,进行掉电变化处理。 具体作法是: 1先把有用信息转存到内部RAM中 2然后接通备用电源,维持内部RAM的供电,2.4.3 8051的掉电保护,P51,2接通备用电源 信息转存后还应维持内部RAM的供电,才能保护转存信息不被破坏。 为此系统应装有备用电源,并在掉电后立即接通备用电源。 备用电源由单片机RST/VPD引脚接入。 为了在掉电时能及时接通备用电源,系统中还需要备用电源与VCC电源的自动切换电路,这个电路已表示在图2-7中。,25 MCS-51单片机的时序,单片机在执行指令时,通常将一条指令分解为若干基本的微操作,这些微操作所对应的脉冲信号在时间上的先后次序称为单片机的时序。,P55,252CPU时序,时序定时单位 MCS-51的时序定时单位从小到大依次为:节拍、状态、机器周期和指令周期。下面分别说明。 1节拍与状态 把振荡脉冲的周期定义为节拍(用P表示)。每二个节拍定义为一个状态(用S表示)。一个状态包含节拍1(P1)和节拍2(P2) 2机器周期 MCS-51采用定时控制方式,有固定的机器周期,规定一个机器周期的宽度为6个状态,并依次表示为S1S6。由于一个状态包括两个节拍,因此一个机器周期总共有12个节拍,分别记作S1P1、S1P2、S6P2。因此一个机器周期就由12个振荡周期组成。 显然,当振荡频率为12MHz时,一个机器周期为1s ,当振荡频率为6MHz时,一个机器周期为2s 。,P56,3指令周期 指令周期是最大的时序定时单位,执行一条指令所需的时间称为指令周期。MCS-51的指令周期根据指令的不同,可分别包含有一、二、四个机器周期。 例:MUL AB DIV AB 是4机器周期指令 SJMP $ 是2机器周期指令 MOV A,B 是1机器周期指令,S状态,P节拍,节拍、状态、机器周期和指令周期,MCS-51的时序定时单位,P56,几个地址重叠区的用指令识别: 1、片内RAM/SFR 用MOV指令 2、片外RAM/I/O 用 MOVX 指令 3、片外程序存储器 用MOVC指令 4、片内可位寻址区,用SETB ,CLR ,MOV指令 用控制信号识别: 1、片外程序存储器 用/PSEN 2、片外RAM/I/O 用/WR,/RD,MCS-51单片机存储结构小结,重点与要求,重点: 微型计算机的工作原理 MCS-51单片机的硬件组成 1、存储器结构 2、CPU结构 (运算器,布尔处理器) MCS-51单片机复位后的状态,要求: 分清MCS-51存储器结构 思考题 第一章 1-13 1-15 第二章 2-1 2-11 2-20,第二章 结束,
展开阅读全文