330 likes | 494 Views
第二章 MCS-51 单片机 组成与工作原理 §2-1 MCS-51 单片机结构及组成 §2-2 MCS-51 单片机存储器组织. §2-1 MCS-51 单片机结构及组成 一、系统资源及主要性能特点 1 、系统资源 MCS-51 单片机是 Intel 公司 1980 推出的高档 8 位单片机,采 用 40 脚双列直插封装或 44 脚方形封装 , 51 、 52 系列功能兼容。 8031 内包括: 1 个 8 位 CPU ; 128 个字节 RAM ; 21 个特殊功能寄存器; 4 个 8 位并行 I/O 口;
E N D
第二章 MCS-51单片机 • 组成与工作原理 • §2-1 MCS-51单片机结构及组成 • §2-2 MCS-51单片机存储器组织
§2-1 MCS-51单片机结构及组成 • 一、系统资源及主要性能特点 • 1、系统资源 • MCS-51单片机是Intel公司1980推出的高档8位单片机,采 • 用40脚双列直插封装或44脚方形封装,51、52系列功能兼容。 • 8031内包括: • 1个8位CPU; • 128个字节RAM; • 21个特殊功能寄存器; • 4个8位并行I/O口; • 1个全双工串行口(二根线); • 2个16位定时计数器器; • 1个片内振荡器和时钟电路; • 5个中断源2个中断优先级;
8051/8751:带有4KB ROM/EPROM • 52子系列的RAM/ROM容量为:256B/8KB • 2、性能特点 • 单片机为哈佛结构的计算机,除上述基本资源外,还具 • 有如下特点: • 外部程序存储器:可扩展到64KB; • 外部数据存储器:可扩展到64KB; • 堆 栈:最深128B/256B; • 输入 / 输出口线:32根; • 寄 存 器 区:划出RAM中32B作为通用寄存器; • 具有逻辑操作位寻址功能; • 单一“+5V”电源; • 系统时钟1~12 MHz,常用12MHz、11.0592MHz 和 6MHz。
二、MCS-51单片机基本结构 • 1、内部结构框图 • 结构简图如图2-1所示 • 包括:CPU、存储器(ROM、RAM)、I/O接口等计算机的基本组成。
2、外部引脚 • 共40个引脚,大致可分为四类,其逻辑符号如图2-2所示。 • 1)电源引脚VCC和VSS • VCC:40脚,电源端,+5V • VSS:20脚,接地端(GND) • 2)时钟电路引脚 • XTAL1:19脚,外接晶振输入引脚。 • XTAL2:18脚,外接晶振输出引脚。 • 3)控制线引脚 • 共4根,其中3根为双功能 • ①RST/VPD :9脚,复位/备用电源。 • RST---通过外接复位电路实现上电复位或按键复位。 • VPD---可外接备用电源,在VCC掉电时向RAM供电。
② /VPP:31脚,内外ROM的选择/ EPROM编程电源。 • =0:访问外部ROM; • =1:访问内部ROM; • PC值超过0FFFH(4KB)时,自动转向外ROM。 • VPP ---在8751片内EPROM编程期间,为21V编程电源输入端。 • ③ALE/:30脚,地址锁存允许/编程脉冲。 • ALE---访问外ROM或RAM时,用来驱动地址锁存器锁存P0口 • 分时送出的低8位地址(下降沿有效)。 • 不访问外存储器时,该端以1/6时钟频率输出正脉冲, • 可用作为外部时钟。带8个LS型TTL门电路。 • --- 8751片内EPROM编程期间,此引脚输入编程脉冲。 • ④ :29脚,读外部ROM选通信号,即该脚有效时(上升沿),外ROM允许输出。每个机器周期2次有效。从内部ROM取指时不产生。可带8个LS型TTL门电路。
4)I/O引脚 • P0口:P0.0~P0.7,39~32脚,外接存储器时作地址/数据分时 • 使用口线;不接外部存储器时,可用作为8位准双向 • I/O口。 • P1口:P1.0~P1.7,1~8脚,8位准双向I/O口。 • P2口:P2.0~P2.7,21~28脚,8位准双向I/O口。外接存储器时 • 作为高8位地址总线。 • P3口:P3.0~P3.7,10~17脚,8位准双向I/O口,出于芯片引脚 • 数的限制,P3口具有第二输出、输入功能。 • 三、微处理器(CPU) • (一)运算器 • 组成:ALU、TMP1、TMP2、A、B、PSW、DA A和布尔处 • 理机等。
DA A:BCD码十进制修正,由专用电路实现。 • 布尔处理机:进位位CY,被称作“位累加器”,可在 • 任何可寻址的位与CY间进行逻辑运算操作。 • 与通用CPU相比,增加了暂存寄存器和B寄存器 • (二)控制器 • 组成:PC、SP、DPTR、IR、ID、PLA等 • 1、时钟电路 • (1)振荡源(oscillation) • MCS-51的HMOS芯片内部时钟电路的振荡源有两 • 种方式提供,即内部自激振荡方式、外部振荡脉冲源 • 方式。
(1)振荡源(oscillation) • 内部方式 在XTAL1、XTAL2跨接定时元件和两个电 • 容就构成了自激振荡器。如图2-3.1所示。 • C1、C2取5~30PF,起微调和稳定作用。 • 晶振频率:fosc=1.2~12MHZ • 常用频率为6、12、11.0592 MHz。 • 外部方式 外部振荡脉冲信号直接由XTAL2端输入, • 此时,XTAL1应接地,而片内振荡电路不 • 起作用,如图2-3.2所示。 • 常用于多块8051同时工作,以便同步,要 求信号频率低于12MHz。
(2)时序 • 振荡脉冲并不直接使用,由XTAL2端送往内部时钟电路: • 经过2分频,向CPU提供2相时钟信号P1和P2; • 再经3分频,产生ALE时序; • 经过12分频,成为机器周期信号,如图2-3.3所示。 • 需要指出的是,CPU的运算操作在P1期间,数据传送在P2期间。
时钟周期:振荡器输出的时钟脉冲频率的倒数。为单时钟周期:振荡器输出的时钟脉冲频率的倒数。为单 • 片机中最小、最基本的时间单位。 • 状态周期:振荡信号经2分频后获得的信号周期,称S, • 显然,S为时钟周期的2倍。 • 机器周期:12个时钟周期为一个机器周期,对应计算 机执行一个基本操作所需的时间。 • 指令周期:执行一条指令所需的时间,至少包含一个 机器周期。 • 指令字节:指令占用存储空间的字节数,有单字节、 双字节、三字节三类。 • 当时钟频率为12MHz和6MHz时,时钟周期分别为 • 1/12us和1/6us ,机器周期分别为1us和2us。
ALE时序:地址锁存信号,每个机器周期2次有效,分别在S1、ALE时序:地址锁存信号,每个机器周期2次有效,分别在S1、 • S4状态。每次出现,CPU进行一次取指操作。 • 2、复位电路 • MCS-51单片机的复位信号,高电平有效。电路结构如图2-4, • RST/VPD引脚至少保持2个机器周期的高电平,才能复位。 • (1)复位工作状态 • 复位时,各SFR寄存器的状态为: • (PC)=0000H; • (SP)=07H; • (P0~P3)=FFH; • 其余SFR寄存器内容均为0; • RAM的内容保持不变; • 外部引脚,ALE=0, =1。
(2)复位电路 复位方式有上电自动复位、按键手动复位两种。 如图2-4所示。在按键手动电平复位电路中,具有上 电和按键双重功能。
3、指针 • 程序计数器 PC • 16位计数器,指向程序存储器中被执行的指令所在的地址。本身没有地址,在物理上独立。 • 寻址范围0000~FFFFH的64KB空间。 • 数据指针DPTR • 16位地址指针,可寻址范围0000~FFFFH 的64KB空间,可指向程序、数据存储器。 • 堆栈指针SP • 8位地址寄存器,SP用来管理堆栈。它指向内部RAM的一个存储单元,且总是指向栈顶单元。 • MCS-51的堆栈是内部RAM中的一个部分,符合“先进后出、后进先出”原则。
四、存储器 • MCS-51的程序存储器与数据存储器是分开的,地址空 • 间重迭,最大可扩展到64KB。 • 1、程序存储器ROM • (1)8031内部无程序存储器 • 由于8031无片内程序存储器,需外接,因此, 端必须 • 外接低电平,如图2-6所示。 • (2)8051、8751内部有4KB ROM/EPROM • =0,使用外部程序存储器; • =1,使用内部程序存储器4KB空间,当PC的值超过4KB • 范围时,自动转向外部程序存储器。 • 2、数据存储器RAM • (1)内部RAM中低128B,00~7FH; • (2)外部RAM,可扩至64KB,0000~FFFFH
五、并行输入/输出口 • MCS-51单片机有4个8位并行I/O口,P0~P3,共32根口线。 • 每个端口都包括:锁存器(即SFR:P0-P3)、输出驱动器、 • 两个三态缓冲器以及控制电路。结构如下图所示。
1、P1口(90H) 特点: (1)准双向口:作为I/O输入时,口锁存器必须置“1”,使T截止,输入信号通过“读引脚”三态缓冲器进入内部总线。 (2)内部有上拉电阻(20KΩ~40KΩ); (3)CPU读P1口的二种情况: ①读P1口的锁存器状态值:“读─改─写”指令。 例ANL P1,#0FH; ②读P1口的引脚(外部输入)。例MOV A,P1;
2、P3口(B0H) • 特点: • (1)准双向口:条件为第二功能输出端常“1”,与门开锁; • (2)第二功能口:作为第二功能口使用时,(P3)=FFH;某 • 位作为第二功能输入时,第二功能输出也必须置“1”。
第二功能输出: • P3.0—TXD,串行输出口; • P3.6— ,外部数据存储器写选通信号 • P3.7— ,外部数据存储器读选通信号 • 第二功能输入: • P3.1—RXD,串行输入口; • P3.2— ,外部中断输入0 ; • P3.3— ,外部中断输入1; • P3.4—T0,外部计数输入0 • P3.5—T1,外部计数输入1; • 3、P2口(A0H) • 特点: • (1)控制端高电平时,作为高8位地址输出口。 • (2)控制端低电平时,最小系统(8051、8751)作准双向口。
P2口结构 4、P0口(80H) 特点: (1)控制端高电平时,作为低8位地址和8位数据分时使用口,供扩展时使用。 (2)控制端低电平时,T1截止,使T2漏极开路,输出“1”时须外接上拉电阻,最小系统(8051、8751)作准双向。
P0口结构 • 注意: • P0口作地址/数据总线输出时,通过反相器、与门工作。 • P0口作外部数据输入时,CPU使T1、T2均截止,引脚浮空, • 第三态,数据经“读引脚”输入缓冲器进入内部总 • 线----是真正的双向口。
端口小结: • (1)系统总线: • 地址总线(16位):P0(地址低8位)、P2口(地址高8位) 数据总线(8位):P0口(地址/数据分时使用); • 控制总线(6根):P3口的第二功能、和9、29、30、31脚; • (2)供用户使用的端口:P1口、部分未作第二功能的P3口; • (3)P0口作地址/数据时,是真正的双向口,三态,负载能力 • 为8个LSTTL电路;P1~P3是准双向口,负载能力 • 为4个LSTTL电路。 • (4)P0~P3在用作输入之前必须先写“1”,即: • (P0)=FFH ~(P3)=FFH 。
六、MCS-51单片机最小应用系统结构 • 1、8751/8051最小应用系统 • 外接时钟电路和复位电路,即构成应用系统,如图2-6.1。特点: • 1)不扩展外ROM、外RAM, 接高电平,P0~P3口都可用 • 作I/O口; • 2)128BRAM、4KBROM,容量有限; • 3)开发时、应用时P0、P2口的环境差异较大; • 4)8051系统应用软件需厂家置入,一般用作为大批量产品。 • 2、8031最小应用系统 • 外接时钟电路和复位电路,需外扩一片程序存储器,一 • 般为EPROM,构成应用系统,如图2-6.2。 • 特点: • 1)P0、P2口只能作总线用,剩下P1、P3口作I/O口。 • 2) 接地,ALE、 作为地址锁存和读ROM信号。
§2-2 MCS-51单片机存储器组织 • MCS-51存储器可分为五类:程序存储器、内部数据存 • 储器、特殊功能存储器、位寻址区、外部扩展的数据存储器和 • 扩展I/O口。如图2-7所示。
一、程序存储器 • 1、程序存储器作用及寻址范围 • 作 用:存放指令(程序)的存储器,用PC作地址指针。 • 寻址范围:0000~FFFFH,共64KB;片内、片外统一编址。 • 片内:PC=0000~0FFFH; • 片外:PC=1000~FFFFH; • 2、ROM低端的几个特殊入口地址 • 0000H:CPU开始执行指令时的第一个取指单元,每次执行时 PC的内容总是0000H; • 0003H~002B:中断专用固定入口地址(系统规定); • 一般:我们总是从ROM的0030H单元开始存放用户指令。
二、内部数据存储器 • 字节地址:00~7FH;有128个8位单元字节。 • 按功能划分为三个部分: • 1、工作寄存器区:00~1FH • (1)共分4个区,00~07,08~0F,10~17,18~1F; • (2)每区有8个工作寄存器:R0~R7; • (3)当前工作寄存器区:由PSW中的第三、第四位选择,具 • 有快速保护现场数据的作用,也可作为一般的数据缓冲器。 • PSW4(RS1) PSW3(RS0) 当前区 字节地址 工作寄存器 • 0 0 0 区 00~07H (R0~R7) • 0 1 1 区 08~0FH (R0~R7) • 1 0 2 区 10~17H (R0~R7) • 1 1 3 区 18~1FH (R0~R7)
2、位寻址区: 20H~2FH • 共16个字节,16×8=128个位,位地址:00~7FH。 • 51系列整个位地址空间为:00~FFH,共211位。 • 1)00~7FH为片内RAM中20~2FH的16个字节单元 • 中的128个位。 • 2)80~FFH中11个SFR的可寻址位,83位。它们是: • A、B、PSW、P0~P3、TCON、SCON、IE、IP • 52系列的SFR可寻址为93位,共221位。 • 3、数据缓冲区: 30H~7FH • (1)作为通用的按字节操作的数据缓冲区。 • (2)常开辟为堆栈区。 • 堆栈主要为子程序和中断操作而设立,是一种数据结构, • 它只允许在其一端进行数据的插入和删除操作,又称为入栈和 • 出栈,MCS-51的堆栈是向上生长型的。
堆栈的特点: • ① 是一个符合“先进后出、后进先出”的RAM区域 • ② SP总是指向堆栈的顶部(保存有数据); • ③ 堆栈可以设在内部RAM中的任意区域,一般开辟 • 在30~7FH中。 • 堆栈的功能: • ①保护断点----保护从主程序转向子程序、中断时的 • 断点,发生转移时自动完成。 • ②保护现场----对子程序、中断程序中要用到的、现 • 场的某些寄存器的内容进行保护,以保证返回时确恢复。软件指令方式实现。 • ③数据的临时存放。
三、特殊功能寄存器区:80~FFH • 即SFR,包括I/O锁存器、定时器、串行口、中断、状态、控制寄存器等共21个。 • 离散地分布在80~FFH中(不包括PC)。 • 如下所示: • 算术运算寄存器:A、B、PSW • 指针寄存器:SP、DPTR(DPH,DPL) • 并行口:P0、P1、P2、P3 • 串行口:SCON、SBUF、PCON • 中断系统:IP、IE • 定时/计数器:TMOD、TCON、TH0、TL0、TH1、TL1 • 特别需要指出的是,51系列内部RAM,80~FFH中未定义 • 的单位为不可访问单元。
四、外部扩展数据存储器和扩展I/O口 • 外部扩展数据存储器:最大可扩展到64KB,由P3口的第二功能、控制其读、写,并通过MOVX指令访问。 • 扩展I/O口:MCS-51单片机将其看作外RAM的一个单元,与外RAM统一编址,提供16位寻址能力,寻址范围也是64K,但需要注意的是,为区别于外RAM地址,扩展I/O口一般用高端地址。
本章小结 • 1、单片机结构框图、硬件资源、引脚功能 • 2、 CPU、存储器配置、P0~P3口 • 2、内部数据存储器、特殊功能存储器、位地址空间、程序存储器、数据存储器和外部扩展I/O端口 • 重点:引脚功能、存储器空间结构 • 难点:存储器地址和存储器的内容难以区 别,字节地址和位地址难以理解