本讲主要内容: 新通大学电气工程学核 单片量机摩理及应用课程课件 21.51单片机总体辆况 22处强 第2讲 23存峰 M0S51系列单片机硬件结构 2 26中所系线 621总体达 2.1总体达 无 个先 5)用单一+5V电 21总体 521总体顺 三、外都引测说明
1 第 讲 新疆大学电气工程学院 单片微机原理及应用课程课件 2 MCS-51系列单片机硬件结构 SiChuan Engineering Technical College-1959 1 Copyright © Http:// mcu.scetc.net 本讲主要内容: 2-1. 51单片机总体概况 2-2. 微处理器 2-3. 存储器 2-4. 定时器/计数器 2-5. 并行和串行输入/输出接口 2-6 中断系统 SiChuan Engineering Technical College-1959 2 Copyright © Http:// mcu.scetc.net §2.1 总体概述 一、 主要功能 51子系列的主要功能为: (1)8位CPU (2)片内带振荡器,振荡频率fosc范围为1.2~12MHz (3)128个字节的片内数据存储器。 (4)4K字节的片内程序存储器 (8031无)。 (5)程序存储器的寻址范围为64K字节。 (6)片外数据存储器的寻址范围为64K字节。 (7)21个字节专用寄存器。 (8)4个 8位并行I/O接口:PO, Pl. P2. P30 (9)l个全双工串行 I/O接口,可多机通信。 (10)2个 16位定时器/计数器。 (11)中断系统有 5个中断源,可编程为两个优先级。 (12)111条指令,含乘法指令和除法指令。 (13)有强的位寻址、位处理能力。 (14)片内采用单总线结构。 (15)用单一+5V电源。 SiChuan Engineering Technical College-1959 3 Copyright © Http:// mcu.scetc.net §2.1 总体概述 -内部结构框图 P0口驱动器 P0.0~P0.7 RAM P0锁存器 RAM地址寄存 器 寄存器B 累加器Acc 暂存器1 暂存器2 ALU P2锁存器 P2口驱动器 P2.0~P2.7 特殊功能寄存器 组 堆栈指针SP 片内程序存储器 PSW 定时/计数及控 制 指 令 寄 存 器 振荡器 PD RST PSEN ALE / P VPP EA / XTAL1 XTAL2 P1口驱动器 P1.0~P1.7 P1锁存器 P3锁存器 P3口驱动器 P3.0~P3.7 程序地址寄存器 缓冲器 PC加+1 PC 数据指针 DPTR 8 16 8 VCC VSS IR SiChuan Engineering Technical College-1959 4 Copyright © Http:// mcu.scetc.net §2.1 总体概述 三、外部引脚说明 P1口 P3口 P0口 P2口 时钟端 复位端 控制信号 接VCC(+5V) 接地端 SiChuan Engineering Technical College-1959 5 Copyright © Http:// mcu.scetc.net §2.1 总体概述 串行通信接口 全双工 1个 ROM TXD RXD 中断系统 并行通信接口 4×8bit 定时/计数器 n×16bit RAM 时 钟 电 路 CPU总线控制 51架构(51 Architecture) SiChuan Engineering Technical College-1959 6
921总体概述 21总体概谜 三、外都引说明 男使用客电,可实琳电保片内山的。 可用作、北想、控制 2》并都号复位 单片机 电入免片内再片射 Bolepe-tisd 表22号南功牌 表22号即功。 一—外根酸制存榜表成活信号.月 Colrpe-rat 22引期功能 022徽处理器 。 2
2 Copyright © Http:// mcu.scetc.net 1.I/O口线功能 4个8位并行 I/O 接口引脚 P0.0~P0.7 、P1.0~P1.7 、P2.0~P2.7和 P3.0~P3.7 为多功能引脚,可自动切换用作数据总线、地址总线、控制总 线和或I/O 接口外部引脚。 §2.1 总体概述 三、外部引脚说明 2.控制线 ALE/PROG:地址锁存允许信号端,低电平信号为控制锁存P0输出的 低8位地址。 PSEN:外部程序存储器读选通信号端 EA/VDD:程序存储器选择信号端和编程电源输入端(先片内再片外) SiChuan Engineering Technical College-1959 7 Copyright © Http:// mcu.scetc.net 2.控制线 RST/VPD:复位信号端和后备电源输入端。 输入10ms以上高电平脉冲,单片机复位使单片机恢复到初始状态。 VPD使用后备电源,可实现掉电保护片内RAM的数据。 3. 电源及时钟引线 工作电源:VCC、VSS 时钟输入:XTAL1、XTAL2 。 复位电路: 1)上电复位 2)外部信号复位 单片机 K RST +5V 200Ω 1K 30μF §2.1 总体概述 SiChuan Engineering Technical College-1959 8 Copyright © Http:// mcu.scetc.net 表2-2 引脚功能 SiChuan Engineering Technical College-1959 9 Copyright © Http:// mcu.scetc.net 表2-2 引脚功能 SiChuan Engineering Technical College-1959 10 Copyright © Http:// mcu.scetc.net 表2-2 引脚功能 SiChuan Engineering Technical College-1959 11 Copyright © Http:// mcu.scetc.net §2.2 微处理器 一、运算器 以算术逻辑单元 ALU为核心,含累加器 A、暂存器、程序状态字PSW、 B寄存器等。 1、ALU 它在控制器所发内部控制信号的控制下进行各种算术操作和逻辑操作。例 如:+、–、×、÷算术运算,与、或、非、异或 逻辑运算、循环移位、位 处理。 其特点是: ①在B寄存器配合下,能完成乘法与除法操作。 ②可进行多种内容交换操作。 ③能作比较判跳操作。 ④有很强的位操作功能。 SiChuan Engineering Technical College-1959 12
22嫩处理圆 022徽处理岳 0情果 022徽处理题 022处理 S是一个海有司,它含了许 、算的国正 反之 志位标志,在法折法时。当位即7位有进位,行 户青再际志.南标志位始长体现限加心e中的个蒙的容他。知果 中“1个量为南收,当红中1的个量为 522处理圆 的:计物成,念新在标名换场他 oaaoooaio1oogg0▣ oou0 103011091可 是用户义的一个状志标,过款件 .0V-18-1 3
3 Copyright © Http:// mcu.scetc.net §2.2 微处理器 2.寄存器阵列 (1)工作寄存器R0~R7 (8位) 作用:暂存运算数据和中间结果。 4个工作寄存器区,工作寄存器0区~3区。每个区均含8个寄存器R0~R7 。 用PSW中的两位PSW.4和PSW.3来切换工作寄存器区,选用一个工作寄存器区进 行读写操作。 SiChuan Engineering Technical College-1959 13 Copyright © Http:// mcu.scetc.net §2.2 微处理器 2)累加器 累加器A是最常用的专用寄存器。进人 ALU作算术操作和逻辑操作的操作 数很多来自A,操作结果也常送回A。有许多单操作数指令都是针对A的。 ADD A,#30H ;在指令中,累加器Acc常简写为“A” ADD A, 30H 该指令的含义是以累加器Acc内容作为被加数,加数存放在内部RAM的 30H单元中,相加后的结果,即和再存放到累加器Acc中。 3)B寄存器 B寄存器主要用于乘法和除法运算。在乘法运算中,被乘数放在累加器 A中,乘数放在B寄存器中,积的高8位存放B寄存器中,低8位放在累加器A中。 也可用作通用寄存器。 如: MUL AB ; BA←A×B SiChuan Engineering Technical College-1959 14 Copyright © Http:// mcu.scetc.net 4)程序状态字程序状态字PSW 程序状态字程序状态字 PSW是一个 8位寄存器,它包含了许 多程序状态信息,其各位的含义见图2。 b6 b5 b4 b3 b2 b1 b0 Cy AC F0 RS1 RS0 OV - P b7 Cy:进位标志。在进行加法运算时,当最高位即b7位有进位,或执行减 法运算最高位有借位时,Cy为1;反之为0。 §2.2 微处理器 SiChuan Engineering Technical College-1959 15 Copyright © Http:// mcu.scetc.net AC:辅助进位标志。在进行加法运算时,当b3位有进位,或执行减法运算b3 位有借位时,AC为1,反之为0。设置辅助进位标志AC的目的是为了便于 BCD码加法、减法运算的调正。 OV: 溢出标志。在计算机内,带符号数一律用补码表示。在8位二进制中, 补码所能表示的范围是-128~+127,而当运算结果超出这一范围时,OV 标志为1,即溢出;反之为0。 P: 奇偶标志。该标志位始终体现累加器Acc中“1”的个数的奇偶性。 如果 累 加器A中“1”的个数为奇数,则P位置1;当累加器A中“1”的个数为偶 数(包 括 0个)时,P位为“0”,即MCS-51采用奇校验方式。 §2.2 微处理器 SiChuan Engineering Technical College-1959 16 Copyright © Http:// mcu.scetc.net RS1、RS0:工作寄存器组选择位,以选定4个工作寄存器中的一个组 投人工作。如下面表格。 表 2.2 RS1、 RS0与片内工作寄存器组的对应关系 RS1 RS0 寄存器组 片内PAM地址 通用寄存器名称 0 0 0组 00H~07H R0~R7 0 1 1组 08H~0FH R0~R7 1 0 2组 10H~17H R0~R7 0 1 3组 18H~1FH R0~R7 软件标志FO:这是用户定义的一个状态标志。可通过软件对它置位、清零; 在编程时,也常测试其是否建起而进行程序分支。 §2.2 微处理器 SiChuan Engineering Technical College-1959 17 Copyright © Http:// mcu.scetc.net + 运算结果最高位为1 ∴ SF=1; 例:2个数相加后,分析各标志位的值 次高位向最高位有进位 ,最高位向前没有进位,∴ OV=10=1 最高位没有进位 ∴ CF=0; 低8位中1的个数为偶数个 ∴ PF=0; 运算结果本身≠0 ∴ ZF=0; SiChuan Engineering Technical College-1959 18
【年】分折秋行T中后,sm容色各标老拉的业 22嫩处理毒 +01111101 100101010 青存的内客为2山,厚2% -,P-,2 Bolepe-thsd 922徽处理题 622撒处理题 物,精程宝果宝,来移 作业: 0100110.(+76) 指出执行下指今后,相加的果及0时?=?写出分过程 0111001(+57 CF-1,PF-1,AC-,OV- 322嫩处理圈 622撤处理■ MON IPE,BIOTRE MOVE COFIR,A 4
4 Copyright © Http:// mcu.scetc.net 【例2.1】 分析执行如下指令后,PSW寄存器各标志位的值。 MOV A,#10101101B ; 把立即数0ADH传送到累加器A中, 由于立即数0ADH 中共 ; 有5个“1”,因此该指令执行后,奇偶 标志位P为“1” ADD A,#01111101B ; 0ADH与7DH相加,结果存放在A中 1 0 1 0 1 1 0 1 ; 173(无符号数);-83(带符号数) + 0 1 1 1 1 1 0 1 ; 125(无符号数);+125(带符号数) 1 0 0 1 0 1 0 1 0 ; 作为无符号数时,和为12AH(由于结 果超出FFH,前面的“1”自然丢失, ;寄存器A的内容为2AH,即298; ;作为有符号数时, 和为2AH,即42 CF=1,PF=1,AC=1,OV=0 SiChuan Engineering Technical College-1959 19 Copyright © Http:// mcu.scetc.net 总结: 两个同号数相加,结果可能溢出;两个异号数相加,结果肯 定不会溢出。两个同号数相减,结果肯定不会溢出;而两个异号数相 减,结果可能溢出。而当溢出标志OV为1时,结果不正确。 §2.2 微处理器 SiChuan Engineering Technical College-1959 20 Copyright © Http:// mcu.scetc.net 例1、将有符号两数相加,即0100 1100加 0110 0101,标志位各位为何 值? 0100 1100(+76) + 0110 0101(+101) 1011 0001 CF=0,PF=0,AC=1,OV=1 例2、将两数相加,即0110 0100加1101 0101,标志位各位为何值? 0110 0100(+100) + 1101 0101(-43) 10011 1001 (+57) CF=1,PF=1,AC=0,OV=0 §2.2 微处理器 SiChuan Engineering Technical College-1959 21 Copyright © Http:// mcu.scetc.net 作业: 1.指出执行下述指令后,相加的结果及C=?P=?OV=?AC=?写出分析过程 MOV A,#36H ADD A,#93H 2.指出执行下述指令后,相加的结果及C=?P=?OV=?AC=?写出分析过程 MOV A,#10101101B ADD A,#10011101B §2.2 微处理器 SiChuan Engineering Technical College-1959 22 Copyright © Http:// mcu.scetc.net 5)数据指针DPTR(16位) 存放片外存储器地址,作为片外存储器的指针。可分成两个8位寄存器 DPH、DPL使用。由DPH(数据指针高8位)和DPL(数据指针低8位)组成,用于存 放外部数据存储器的存储单元地址。通过DPTR寄存器间接寻址方式可以访问 0000H~FFFFH全部64 KB的外部数据存储器空间。 MOV DPTR,#107FH MOVX @DPTR,A 6)堆栈指针SP(8位) 堆栈是按“先进后出”原则存取数据的存储区。 MCS-51堆栈设在片内RAM区。数据入栈/出栈时,SP自动加1/减 1,其内 容始终为栈顶地址。复位时 SP=07H。 MOV SP,#5FH ; 将堆栈设在60H单元之后 §2.2 微处理器 SiChuan Engineering Technical College-1959 23 Copyright © Http:// mcu.scetc.net 7)程序计数器PC(16位) CPU总是按PC的指示读取程序。PC可自动加1。因此CPU执行程序一般是 顺序方式。当发生转移、子程序调用、中断和复位等操作,PC被强制改写, 程序执行顺序也发生改变。复位时,PC=0000H。 8)I/O端口寄存器 P0、P1、P2、P3口寄存器实际上就是P0~P3口对应的I/O端 口锁存器,用于锁存通过端口输出的数据。 在计算机中, 对于没有定义的位或字节,我们必须注意是否存在 物理存储单元与之对应。当存在物理存储单元与之对应时,用户就可以 读写。 §2.2 微处理器 SiChuan Engineering Technical College-1959 24
号22撤处理据 022撒处理器 机器:6个时计周构 指:CU行一条看令的时间。看令调以机器周期为单位。 分为:单周用、双因和四周令。 思考鞋:设应用单片机品振频率为12他,问机高周雨为多少?指宁周周 622撒处理题 523存储 nunt出 “ 一条条指的。为此,设有一个专用商有活 十超士 此片视 023存 23存附 一,程序存储器Cm 2结装方结第元 C5-51系列单片机保昌给系恢使用的程序有储器地址空同如下 片程品 中有装中个单玩毒绿用地.为单州机的时际 5
5 Copyright © Http:// mcu.scetc.net §2.2 微处理器 二、控制器 根据不同指令产生相应操作序列和控制信号。 三、振荡器和CPU时序 1、振荡器 协调各功能部件按序工作。MCS - 51系列单片机片内含有一个高增益 的反相放大器,通过XTAL1, XTAL2外接作为反馈元件的晶体后便成为自激 振荡器,接法见图a。 XTAL1 单片机 XTAL2 A:内部时 钟电路; b:外部 振荡源 SiChuan Engineering Technical College-1959 25 Copyright © Http:// mcu.scetc.net §2.2 微处理器 2、CPU时序 振荡器输出的振荡脉冲经2分频成为内部时钟信号,用作单片机内部各 功能部件按序协调工作的控制信号;其周期称为时钟周期(状态周期)。 机器周期:6个时钟周期构成一个机器周期。 指令周期:CPU执行一条指令的时间。指令周期以机器周期为单位。 分为:单周期、双周期和四周期指令。 思考题:设应用单片机晶振频率为12MHz,问机器周期为多少?指令周期 分别为多少? 机器周期为1µs,单指令周期为1µs,双指令周期为2µs SiChuan Engineering Technical College-1959 26 Copyright © Http:// mcu.scetc.net §2.2 微处理器 P1,p2:每个时钟周期的两个节拍。机器周期包括12个振荡器周期。 ALE脉冲在每个周期的S1P2至S2P1,S4P2至s5p1期间各发生一次。 SiChuan Engineering Technical College-1959 27 Copyright © Http:// mcu.scetc.net §2.3 存储器 单片机的片内存储器一般既有只读存储器,也有读写存储器。 并且可进行片外存储器的扩展。书第45页:表2-3。 一、程序存储器(ROM) 1、编址与访问 计算机工作时是循序执行一条条指令的,为此,设有一个专用寄存器, 用以存放将要执行的指令的地址,称为程序计数器 (PC)。 它还具有计数的功能,每取出指令的一个字节后,其内容又自行加 1, 指向下一字节的地址,以便依次自程序存储器取指令执行、完成某种程序。 MCS一51系列单片机的PC有16位,所以程序存储器的寻址范围可以有64KB。 与此相应,程序存储器的编址自0000H开始,最大可至FFFFH。 片内程序存储器的容量远小于该数,通过扩展片外存储器。程序存储 器的编址规律为:先片内、后片外,片内,片外连续,二者一般不作重叠。 SiChuan Engineering Technical College-1959 28 Copyright © Http:// mcu.scetc.net §2.3 存储器 一、程序存储器(ROM) 1、编址与访问 MCS一51系列单片机的程序存储器的寻址范围可以有64KB。与此相 应,程序存储器的编址自0000H开始,最大可至FFFFH。 复位后,先执行片内程序存储器的程序(4K),当 PC中内容超过0FFFH(51系列)时,将自动转去执行片 外程序存储器的程序。 将强令执行片外程序存储器的程序。 EA=1 EA=0 2. 特殊存储单元 复位入口: 0000H 中断入口: 0003H~0023H 程序存储器中有7个单元留作特殊用途。为单片机的特殊 功能提供程序入口地址。 EA不同电平,选择片内或片外低位存储单元。 SiChuan Engineering Technical College-1959 29 Copyright © Http:// mcu.scetc.net 一、程序存储器(ROM) §2.3 存储器 2. 特殊存储单元 系统复位PC的内容 0000H 外部中断0服务程序入口地址 0003H 定时器0中断服务程序入口地址 000BH 外部中断1服务程序入口地址 0013H 定时器1中断服务程序入口地址 001BH 串行口中断服务程序入口地址 0023H 定时器2中断服务程序入口地址 002BH MCS-51系列单片机保留给系统使用的程序存储器地址空间如下: SiChuan Engineering Technical College-1959 30