第2章 MCS-51单片机时钟与复位电路
单片机原理 第2章 MCS-51单片机体系结构
2.4.2 MCS-51单片机数据存储器
2.4.2 MCS-51单片机数据存储器
1. 工作寄存器区
字节地址为00H~1FH的32个单元是4组通用工作寄存器区,每组占用8个 字节,都标记为R0~R7。在某一时刻,CPU只能使用其中的一组工作寄存 器,工作寄存器的选择由程序状态字寄存器PSW中RS1、RS0两位来确定 ,如表2-3所示。
2. 数据总线DB 数据总线宽度为8位(D0~D7),由P0提供。
3. 控制总线CB 控制总线由P3口的第二功能状态和4根独立控制线RESET、 和ALE组成。
2.3 MCS-51单片机的中央处理器
• 8051系列单片机的中央处理器CPU是单片机 的指挥中心和执行机构,它的作用是产生合适的 时序,读入和分析每条指令代码,根据每条指令 代码的功能要求,指挥并控制单片机的有关部件 和器件,具体执行指定的操作。
2.2.3 并行I/O引脚
3. P2口
P2口,为准双向I/O口,具有内部上拉电阻。一共8位,有P2.0~P2.7共8 条引脚。当8051系列单片机扩展外部存储器及I/O接口芯片时,P2口作为 地址总线(高8位),和P0输出的低8位地址一起构成16位地址,可以寻址 64KB的地址空间。
P2口位结构图如图2-3 (c)所示,它比P1口多了 一个转换控制部分,当P2 与P0配合作为“地址/数据总 线”方式下的高8位数据线 (A8~A15)时,CPU将写 控制信号“1”使MUX切换到 右边,在“地址/数据总线” 方式下,无论P2口剩余多 少地址线,均不能被用于 普通I/O操作。
(2)控制引脚—— 、
第2章MCS-51单片机基本结构
2.1.4
复位和复位电路
单片机在重新启动时都需要复位,MCS-51 系列单片机有一个复位引脚输入端RST。 1. MCS-51系列的单片机复位方法为:在RST上加
一个维持两个机器周期(24个时钟周期)以上
的高电平,则单片机被复位。 2. 复位时单片机各部分将处于一个固定的状态。
复位后单片机各单元的初始状态
R2 2 00
2 2u F
R S T/VP D
R1 1K
V ss
GND
未稳压电源
WDI R1 PFI MR R2 MAX813L P1.0
RESET
WDO
﹠
RST MCS-51
“看门狗”复位电路
2.1.5 MCS-51单片机的引脚功能
MCS-51单片机采用40脚双列直插式封装形式,主要包括以 下几个部分: 1. 电源引脚Vcc和Vss Vcc(40脚):电源端,为十5V; Vss(20脚):接地端 ,GND。 2. 时钟电路引脚XTAL1和XTAL2 XTAL1为内部振荡电路反相放大器的输入端 。 XTAL2为内部振荡电路反相放大器的输出端 。 3. 控制信号引脚RST、ALE、PSEN和EA 4. I/O(输入/输出)端口P0、P1、P2和P3 5. MCS-51单片机P3口的第二功能
单片机各种周期的关系图
机器周期 S1 S2 S3 S4 S5 S6 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2
时钟周期 状态周期
1个机器周期=6个状态周期=12个时钟周期
4、指令周期: 它是指CPU完成一条操作所需的全部
时间。 每条指令执行时间都是有一个或几个机器周
期组成。MCS - 51 系统中, 有单周期指令、双周期指
第2章8051单片机硬件结构和原理
指令寄存器IR及指令译码器ID
• 由PC中的内容指定ROM地址,取出来的指令经IR送至ID, 由ID对指令译码产生一定序列的控制信号,以执行指令所 规定的操作。
振荡器和定时电路
• 8051单片机片内有振荡电路,只需外接石英晶体 和频率微调电容(2个30pF左右),其频率范围为 1.2MHz~12MHz。该信号作为8051工作的基本节拍
片外程序存储器
从程序员角度看存储器
程序存储器保留地址
(1)0000H~0002H三个单元:
• 用作上电复位后引导程序的存放单元。因
为复位后PC的内容为0000H,CPU总是从
0000H开始执行程序。将转移指令存放到 这三个单元,程序就被引导到指定的程序 存储器空间去执行。
程序存储器保留地址
(2)0003H~002AH单元:
使用。
SFR之 程序状态寄存器PSW(D0H)
• PSW是一个8位特殊功能寄存器,它的各位包含
了程序执行后的状态信息,供程序查询或判别之
用。各位的含义及其格式如表2-6所列。
• PSW除有确定的字节地址(D0H)外,每一位均有
位地址
Psw中的位
• CY(PSW.7): 进位标志位。在执行加法(或减法)运算 指令时,如果运算结果最高位(位7)向前有进位(或借 位),则CY位由硬件自动置1;如果运算结果最高位无 进位(或借位),则CY清0。CY也是89C51在进行位操作 (布尔操作)时的位累加器,在指令中用C代替CY。 • AC(PSW.6): 半进位标志位,也称辅助进位标志。当 执行加法(或减法)操作时,如果运算结果(和或差)的 低半字节(位3)向高半字节有半进位(或借位),则AC位 将被硬件自动置1;否则AC被自动清0。 • F0(PSW.5): 用户标志位。用户可以根据自己的需要 对F0位赋予一定的含义,由用户置位或复位,以作为 软件标志。
51单片机复位电路
51单片机复位电路单片机在可靠的复位之后,才会从0000H地址开始有序的执行应用程序。
同时,复位电路也是容易受到外部噪声干扰的敏感部分之一。
因此,复位电路应该具有两个主要的功能:1.必须保证系统可靠的进行复位;2.必须具有一定的抗干扰的能力;一、复位电路的RC选择复位电路应该具有上电复位和手动复位的功能。
以MCS-51单片机为例,复位脉冲的高电平宽度必须大于2个机器周期,若系统选用6MHz晶振,则一个机器周期为2us,那么复位脉冲宽度最小应为4us。
在实际应用系统中,考虑到电源的稳定时间,参数漂移,晶振稳定时间以及复位的可靠性等因素,必须有足够的余量。
图1是利用RC充电原理实现上电复位的电路设计。
实践证明,上电瞬间RC电路充电,RESET引脚出现正脉冲。
只要RESET端保持10ms以上的高电平,就能使单片机有效的复位。
二.供电电源稳定过程对复位的影响单片机系统复位必须在CPU得到稳定的电源后进行,一次上电复位电路RC参数设计应考虑稳定的过渡时间。
为了克服直流电源稳定过程对上电自动复位的影响,可采用如下措施:(1)将电源开关安装在直流侧,合上交流电源,待直流电压稳定后再合供电开关K,如图3所示。
(2)采用带电源检测的复位电路,如图4所示。
合理配置电阻R3、R4的阻值和选择稳压管DW的击穿电压,使VCC未达到额定值之前,三极管BG截止,VA点电平为低,电容器C不充电;当VCC稳定之后,DW击穿,三极管BG饱和导通,致使VA点位高电平,对电容C充电,RESET为高电平,单片机开始复位过程。
当电容C上充电电压达到2V 时,RESET为低电平,复位结束。
三.并联放电二极管的必要性在图1复位电路中,放电二极管D不可缺少。
当电源断电后,电容通过二极管D迅速放电,待电源恢复时便可实现可靠上电自动复位。
若没有二极管D,当电源因某种干扰瞬间断电时,由于C不能迅速将电荷放掉,待电源恢复时,单片机不能上电自动复位,导致程序运行失控。
51单片机汇编语言4-MCS51硬件结构-2
第1章
单片机硬件系统
(2) PC的内容自动加1变为0001H,指向下一个指令字节。 (3) 地址寄存器中的内容0000H通过地址总线送到存储器,
经存储器中的地址译码选中0000H单元。 (4) CPU通过控制总线发出读命令。 (5) 被选中单元的内容74H送内部数据总线,该内容通过 内部数据总线送到单片机内部的指令寄存器。至此,取指令 过程结束,进入执行指令过程。
第1章
单片机硬件系统
MCS-51单片机片内有256B的数据存储器,它分为低
128B的片内RAM区和高128B的特殊功能寄存器区。低128B 的片内RAM又可分为工作寄存器区(00H~1FH)、位寻址区 (20H~2FH)和数据缓冲器(30H~7FH)。累加器A、程序状态 寄存器PSW、堆栈指针SP、数据存储器地址指针DPTR、程 序存储器地址指针PC,均有着特殊的用途和功能。 MCS-51单片机有4个8位的并行I/O口,它们在结构和特 性上基本相同。当需要片外扩展RAM和ROM时,P0口分时 传送低8位地址和8位数据,P2口传送高8位地址,P3口常用 于第二功能,通常情况下只有P1口用作一般的输入/输出引脚。
第1章
单片机硬件系统
图1.15 MCS-51单片机的取指/执行时序 (a) 单片机的机器周期;(b) 单字节单周期指令,如INC A;(c) 双字节单 周期指令,如ADD A,data;(d) 单字节双周期指令,如INC DPTR
第1章
单片机硬件系统
1.5 单片机的工作过程
单片机的工作过程实质上是执行用户编制程序的过程。 一般程序的机器码都已固化到存储器中,例如实训1中的步骤 (3),因此开机复位后,就可以执行指令。执行指令又是取指 令和执行指令的周而复始的过程。 例如指令MOV A,#56H表示把立即数56H这个值送入A 累加器。该指令对应的机器码是74H、56H,假设它们已存在 0000H开始的单元中。下面我们来说明单片机的工作过程。 接通电源开机后,PC =0000H,取指令过程如下: (1) PC中的0000H 送到片内的地址寄存器。
第2章 MCS-51单片机
(4)可寻址外部程序存储器和数据存储器,各64KB;
(5)两个16位定时器/计数器; (6)32位可编程并行I/O口; (7)一个可编程全双工串行I/O口; (8)二十多个特殊功能寄存器; (9)5个中断源,两个优先级嵌套中断结构。
2. 微处理器 8051微处理器的组成如下所示:
累 加 器 ACC( Accumulator) 程 序 状 态 字 寄 存 器 PSW( Program Status Word) 运算器 暂存寄存器 CPU 寄存器B 指 令 寄 存 器 IR 控制器 指 令 译 码 器 ID 程 序 计 数 器 PC
(2)位寻址区
内部RAM的0x20~0x2F为位寻址区,这16个字节的每
一位都对应一个8位地址,位地址范围为0x00~0x7F。该区 域可按字节读写,也可按位读写,位地址从0x20单元最低位 开始,共有16×8位,即128个位地址。 如果系统需要位操作,最好保留0x20~0x2F单元的部分
或全部,作为位存储区,以支持位处理操作。位寻址区的每
一位都可以直接进行位操作。通常把各种程序状态标志位控 制变量,设在位寻址区内,同时,位寻址区的RAM单元也 可以作一般的数据缓冲器使用。RAM寻址区位地址映象如 表2-5所示。
位 寻 址 区 地 址 映 象
(3)缓冲器区
内部RAM的0x30~0x7F的地址区,可作为数据缓冲器 使用,存放数据,由于该区有丰富的操作指令,使用十分 方便。 2.外部数据存储器 在51系列中,允许用户扩展外部数据存储器和I/O接口, 用户可以通过P0、P2口最多扩展连接64K个外部单元(每
片机系统。
MCS-51的典型产品是8051、8031、8751。8051是ROM型单片 机,内部有 4KB 掩膜 ROM ; 8031 无片内 ROM , 8751 片内有
单片机 第二章(1)
(13) 指令系统 (111条)
(二) MCS-51系列单片机的差异
系列 典型芯 片 80C31 80C51 51系列 I/O口 4x8位 4x8位 定时/计数 器 2x16位 2x16位 中断源 5 5 串行通信 口 1 1 片内 RAM 128字节 128字节 片内ROM 无 4kB掩膜 ROM
MCS-51的结构框图
⑺ 2个16位定时器/计数器T/C ⑻ 1个全双工串行口UART
通用异步收发器 可同时接收或发送 半双工 —— 即可接受又可发送,但不同时
单工 —— 只接收或只发送
⑼ 布尔处理机 —— 位处理机 (10) 64KB外部RAM地址空间 (11) 64KB外部ROM地址空间 (12) 片内时钟电路及振荡器 16条地址线
52系列
87C52 89C52
MCS-51单片机总体基本结构
T0 T1
ROM
RAM
定时/计数器
CPU
微处理器
内部总线
并行接口
时钟
P0 P1 P2 P3
串行接口
中断系统
TXD
RXD
INT0
INT1
1、中央处理器
由运算器和控制逻辑组成。主要功能是产生各种控制信 号,控制存储器、I/O端口的数据传送、数据运算、及位处 理等操作等。采用SFR集中控制
2、存储器
8051/8751
程序存储器ROM/ EPROM(8031中没有,需外接) , 存放 程序和编好的表格及常数等。
数据存储器RAM:存放中间结果、数据暂存、缓冲、及 存放标志位等。
3、I/O口
MCS-51单片机有 4 个 8 位并行口,1 个全双工串行口 UART, 2 个 16 位的 T/C。
第2章 MCS-51单片机的内部结构
当3个准双向I/O口作输入口使用时,要向该口先写“1”, 个准双向I/O口作输入口使用时,要向该口先写“ I/O口作输入口使用时 P3.5 T1 计数器1外部输入 计数器 外部输入 P3.6 WR 外部数据存储器 另外准双向I/O口无高阻的“浮空”状态。 I/O口无高阻的 另外准双向I/O口无高阻的“浮空”状态。
2.4.2 内部数据存储器 共128个字节, 128个字节, 128个字节 字节地址为00H 7FH。 00H~ 字节地址为00H~7FH 00H~1FH:32个单 00H~1FH:32个单 元,是4组通用工作 寄存器区 20H~2FH:16个单 20H~2FH:16个单 可进行128 128位的 元,可进行128位的 位寻址 30H FH: 用户RAM 30H ~ 7FH : 用户 RAM 区 , 只能进行字节寻 址 , 用作数据缓冲区 以及堆栈区。 以及堆栈区。
I/O口引脚 2.2.3 I/O口引脚 P0口 双向8位三态I/O I/O口 地址总线( (1) P0口:双向8位三态I/O口,地址总线(低8位)及 数据总线分时复用口,可驱动8个LS型TTL负载。 数据总线分时复用口,可驱动8 LS型TTL负载。 负载 P1口 准双向I/O I/O口 可驱动4 LS型TTL负载 负载。 (2) P1口:8位准双向I/O口,可驱动4个LS型TTL负载。 转义引 引脚 与地址总线 ( 高 8 位 ) 复 功能说明 准双向I/O I/O口 (3) P2口:8位 准双向I/O 口, 与地址总线( 脚 可驱动4 LS型TTL负载 负载。 用,可驱动4个LS型TTL负载。RXD 串行数据接收端 P3.0 准双向I/O I/O口 双功能复用口,可驱动4 (4) P3口:8位 准双向I/O 口, 双功能复用口 ,可驱动 4 P3.1 TXD 串行数据发送端 P3.2 INT0 外部中断0请求 外部中断 请求 LS型TTL负载 负载。 个LS型TTL负载。 注意:准双向口与双向三态口的差别。 注意:准双向口与双向三态口的差别。
第2章 MCS-51单片机的硬件结构
(2)通用I/O接口功能
P2口作准双向口使用,与P1口相同,也有输入、 输出、端口操作三种工作方式。
3.P2口负载能力
4个LSTTL负载,输出电流≥ 400uA
三、P3口
1. P3口1位结构原理图如图所示
P 奇偶标志
A中1的个数若为奇数P=1,否则P=0
例如:MOV A, #7FH ADD A, #4FH 0111,1111B + 0100,1111B 1100,0110B
结果:(A)=C6H, C=0,AC=1,OV=1,P=0
2.控制器 3.片内存储器
4.4个I/O接口
5.串行接口
6.定时/计数器
先片内、后片外,片内片外连续,二者 一般不作重叠。 EA=0,只访问片外程序存储器 EA=1,先访问片内程序存储器。当PC >0FFFH(51子系统)或PC>1FFFH(52子系统) ,再去访问片外程序存储器。
存储器编址图如下图所示
0000H
片内ROM /EA=1 0FFFH 0FFFH 1000H 片外ROM 0000H 片外ROM /EA=0 00H 7FH 80H FFH 片外RAM 片内RAM 0000H
有5个中断源
11.111条指令,含乘、除法,有很强
的位处理能力 12.片内采用单总线结构,单一+5V
电源
52系列主要有8032、8052两种机型。 与51系列不同在于:片内数据存储器增 至256个字节,3个16位定时/计数器,6 个中断源。
二、内部结构
MCS-51系列单片机的内部结构如 下图所示:
1 2 . . .
第2章 MCS-51单片机基本结构
第2章 MCS-51单片机基本结构
2.1 MCS-51单片机内部结构 2.2 MCS-51单片机引脚功能 2.3 MCS-51单片机时序 2.4 单片机复位与复位电路 2.5 单片机最小应用系统 2.6 单片机低功耗运行
第2章 MCS-51单片机基本结构
2.1 MCS-51单片机内部结构
第2章 MCS-51单片机基本结构
2.1.2存储器
第2章 MCS-51单片机基本结构
2.1.2存储器
存储器小结:
第2章 MCS-51单片机基本结构
(1)地址的重叠性。数据存储器与程序存储器全 部64K地址重叠;程序存储器中的片内和片外低 4K地址重叠;数据存储器片内和片外最低的128 个字节地址重叠。虽然有这些重叠,但是由于采 取了不同的操作指令和外部引脚电平的控制,是 不会产生操作混乱的。 (2)程序存储器和数据存储器在使用上是严格区 分的,不同的操作指令不能混用。 (3)片外数据存储器中,数据区与用户外部扩展 的I/O口统一编址。因此,应用系统中所有外围接 口的地址均占用RAM地址单元。与外围接口进行 数据传送时,使用与访问外部数据存储器相同的 传送指令。
①CY(Carry Flag)
进位标志位。在执行运算过程中,如果结果的最高位 在加法运算时有进位或减法运算时有借位,Cy=1;否则, Cy=0。在进行位操作时,CY作为位累加器,作用相当于 CPU中的累加器A。
②AC(Auxiliary Carry Flag)
辅助进位标志位。进行加法或减法运算中,若低4位向 高4位有进位或借位,AC将被硬件置1,否则清0。AC位 常用于进行十进制调整指令和压缩BCD码运算。
第2章 MCS-51单片机基本结构
第二章 MCS-51系列单片机结构与工作
2.3.1运算器 2.3.1运算器
• 4.程序状态字寄存器PSW • 程序状态字寄存器PSW是8位寄存器,用来存储当前指令执行后的状 态,便于程序查询和判别。程序状态字寄存器各位的定义如表2-2。
• (1)进位标志位C:又名CY,在加法和减法运算时, 表示运算结果 最高位的进位或借位情况。
2.3.1运算器 2.3.1运算器
2.2.1 MCS-51系列单片机的引脚与功能 MCS-51系列单片机的引脚与功能
• (8)XTAL2(18脚):片内振荡电路反向放大器的输出端,采用外 部时钟时该引脚为振荡信号的输入端。 • (9)P0口:P0.0~P0.7依次为第39~32脚,P0口除了可以作普通 的双向I/O口使用外,也可以在访问外部存储器时用作低8位地址线和 数据总线。 • (10)P1口:P1.0~P1.7依次为第1~8脚,P1口是带内部上拉电 阻的双向I/O口,向P1口写入“1” 时,P1口被内部上拉为高电平, 可用作输入口。当作为输出脚时,被外部拉低的P1口会因为内部上拉 电阻的存在而输出电流。
51单片机复位电路及复位后寄存器的状态
51单片机复位电路及复位后寄存器的状态51单片机复位电路当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。
如果RST持续为高电平,单片机就处于循环复位状态。
根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。
上电复位要求接通电源后,自动实现复位操作。
常用的上电复位电路如下图A中左图所示。
图中电容C1和电阻R1对电源十5V来说构成微分电路。
上电后,保持RST一段高电平时间,由于单片机内的等效电阻的作用,不用图中电阻R1,也能达到上电复位的操作功能,如下图(A)中右图所示。
上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。
常用的上电或开关复位电路如上图(B)所示。
上电后,由于电容C3的充电和反相门的作用,使RST持续一段时间的高电平。
当单片机已在运行当中时,按下复位键K 后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作。
根据实际操作的经验,下面给出这两种复位电路的电容、电阻参考值。
上图(A)中:Cl=10-30uF,R1=1kO上图1.27(B)中:C:=1uF,Rl=lkO,R2=10kO单片机复位后的状态:单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。
单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为确定值,见下表。
值得指出的是,记住一些特殊功能寄存器复位后的主要状态,对于了解单片机的初态,减少应用程序中的韧始化部分是十分必要的。
说明:表中符号*为随机状态;A=00H,表明累加器已被清零;PSW=00H,表明选寄存器0组为工作寄存器组;SP=07H,表明堆栈指针指向片内RAM 07H字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H单元中;Po-P3=FFH,表明已向各端口线写入1,此时,各端口既可用于输入又可用于输出;IP=×××00000B,表明各个中断源处于低优先级;IE=0××00000B,表明各个中断均被关断;51单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,(在特殊寄存器介绍时再做详细说明)至于内部RAM内部的数据则不变。
第二章 MCS-51单片机的基本结构
程序存储器 4K/8K
数据存储器 128/256B
2/3×16位 定时器/计数器
CPU
64KB 总线 扩展控制器 内中断 外中断
返回小结
可编程I/O
可编程全双工 串行口 串行通信
控制
并行口
返回
8XX51单片机 内部结构图
RAM地 址寄存 器
P0.0-P0.7 P2.0-P2.7 P0驱动器 P2驱动器 P0锁存器 P2锁存器
2.1.2 80C51系列
80C51 是 MCS-51 系列中 CHMOS 工艺的一个典 型品种 ;其它厂商以8051为基核开发出的CMOS 工艺单片机产品统称为 80C51 系列。当前常用的 80C51系列单片机主要产品有:
﹡ Intel的:80C31、80C51、87C51,80C32、80C52、 87C52等; ﹡ ATMEL的:89C51、89C52、89C2051等; ﹡ Philips、华邦、Dallas、Siemens(Infineon)等公司 的许多产品 。
(3)在功能上,该系列单片机有基本型 和增强型两大类:
基本型: 8051/8751/8031 80C51/87C51/80C31 89S51
增强型: 8052/8752/8032 80C52/87C该系 列 单 片 机 有 三 种 形 式 , 即 掩 膜 ROM 、 EPROM和ROMLess(无片内程序存储器)。如:
加1、减1、比较、BCD码十进制调整等
逻辑运算:与、或、异或、求反、循环等逻辑操作 位操作:内部有布尔处理器,它以进位标志位C为位累
加器,用来处理位操作。可对位置 “1”、对位清零 、 位判断等。
操作结果的状态信息送至状态寄存PSW。
运算器由算数/逻辑运算单元ALU、累加器 ACC、寄存器B、暂存器1、暂存器2、程序状 态寄存器PSW组成。
第二章 MCS-51 单片机基本知识
CPU
特殊功能寄存器SFR 特殊功能寄存器 (Special Function Register) )
MCS-51单片机的引脚功能 2.1.2 MCS-51单片机的引脚功能
MCS-51单片机芯片共40脚 I/O端口引脚32条 端口引脚32 MCS-51单片机芯片共40脚,I/O端口引脚32条、控制引 单片机芯片共40 电源引脚2 时钟引脚2 如图2 脚4条、电源引脚2条、时钟引脚2条,如图2-1、2-4 所示。 所示
通用I/O I/O口 无片外存储器时,P2口可作通用I/O口使用 口可作通用I/O口使用; ① 通用I/O口:无片外存储器时,P2口可作通用I/O口使用; ② 地址口:在访问外部存储器时,传送ROM/RAM高低8位地址。 地址口:在访问外部存储器时,传送ROM/RAM高低8位地址。 ROM/RAM高低
CPU
算术逻辑单元ALU 算术逻辑单元ALU (Arithmetic Logic Unit) 定时控制器 定时控制器 程序计数器PC 程序计数器PC Counter) (Program Counter) 累加器ACC 累加器ACC (Accumulator) (Accumulator) 程序状态字PSW 程序状态字PSW Word) (Program Status Word) 堆栈指针SP 堆栈指针SP Pointor) (Stack Pointor) 数据指针DPTR 数据指针DPTR Pointer) (Data Pointer) 寄存器B 寄存器B
中央处理单元CPU 2.1.1 中央处理单元CPU
算术逻辑单元ALU 算术逻辑单元ALU (Arithmetic Logic Unit) 加法器 2个暂存器TMP1和TMP2 个暂存器TMP1和 TMP1 布尔处理器 定时控制逻辑 定时控制器 定时控制器 指令寄存器IR 指令寄存器IR (Instruction Register ) 振荡器OSC 振荡器OSC (Oscillator) 特殊功能寄存器 特殊功能寄存器SFR (Special Function Register) )
第2章MCS-51系列单片机的基本硬件结构
1000H 0FFFH
片外程序存储器 最大64K) (最大 )
0000H
1. 需要注意几点: 需要注意几点:
程序存储器是用来存放编好的程序、 程序存储器是用来存放编好的程序、常数 和表格的。 和表格的。 当引脚EA=1时,系统使用片内的4KROM 时 系统使用片内的 当引脚 来存储程序。 来存储程序。EA=0时,系统使用片外的 时 ROM。 。 无论是使用片内还是使用片外的ROM(既 ( 无论是使用片内还是使用片外的 EA=1或EA=0),其起始地址都是从 ),其 或 ), 起始地址都是从 0000H单元开始。 单元开始。 单元开始
控制器
运算器
时钟电路
4KROM 程序存储器
256BRAM 数据存储器
2X16位 位 定时/计数器 定时 计数器
CPU 处理器
64KB总线 总线 扩展控制器
可编程I/O 可编程 端口P0-3 端口
可编程 串行口
2.1.2 MCS-51单片机的引脚定义 单片机的引脚定义
1. MCS-51单片机有两种封装形式: MCS-51单片机有两种封装形式: 单片机有两种封装形式
P3.2 INT0 P3.3 INT1
2.2 MCS-51单片机的存储器的配置 单片机的存储器的配置
2.2.0 MCS-51单片机存储器的 MCS-51单片机 单片机存储器的 配置特点 2.2.1 程序存储器(片内与片外) 程序存储器 片内与片外) 存储器( 2.2.2 内部数据存储器RAM 内部数据存储器 存储器RAM 2.2.3 外部数据存储器
RST/Vpd(9脚): ( 脚 在系统上电震荡器开始工作时, 在系统上电震荡器开始工作时, 在内部加 在此引脚上有一个两个时钟周期的高电平 两个时钟周期的高电平使单 在此引脚上有一个两个时钟周期的高电平使单 片机复位。但为了使系统复位可靠,建议外加 片机复位。但为了使系统复位可靠, 一个上电复位电路,延长复位的时间。 一个上电复位电路,延长复位的时间。当单片 机掉点时, 机掉点时,此引脚可以接入备用电源向单片机 内部的RAM供电,以防止 供电, 中的数据丢失。 内部的 供电 以防止RAM中的数据丢失。 中的数据丢失 注意:在复位状态下:所有SFR的内容全 注意:在复位状态下:所有 的内容全 变为“ ,端口输出“ 。 内容不变。 变为“0”,端口输出“1”。RAM内容不变。 内容不变
单片机第2章MCS-51系列单片机的资源配置
单片机第2章MCS-51系列单片机的资源配置单片机作为一种集成电路芯片,在现代电子技术领域中发挥着重要作用。
MCS-51 系列单片机是其中应用广泛且具有代表性的一类。
要深入了解和运用 MCS-51 系列单片机,就必须清楚其资源配置。
MCS-51 系列单片机的中央处理器(CPU)是其核心部分。
它负责执行指令、进行运算和控制整个系统的工作。
该 CPU 由运算器和控制器组成。
运算器能够进行算术运算和逻辑运算,而控制器则按照程序的指令顺序,有条不紊地控制单片机的各项操作。
在存储资源方面,MCS-51 系列单片机拥有程序存储器和数据存储器。
程序存储器用于存放用户编写的程序代码,通常采用只读存储器(ROM)。
而数据存储器则用于存储运行过程中的临时数据,一般使用随机存取存储器(RAM)。
程序存储器又分为片内程序存储器和片外程序存储器。
片内程序存储器的容量因具体型号而异,一般为 4KB 或 8KB。
当程序较大,片内存储器无法满足需求时,可以通过扩展片外程序存储器来解决。
数据存储器也分为片内数据存储器和片外数据存储器。
片内数据存储器包括工作寄存器区、位寻址区、用户 RAM 区等。
工作寄存器区可以提高数据处理的速度,位寻址区方便对单个位进行操作,用户 RAM区则用于存放用户自定义的数据。
片外数据存储器的扩展则可以满足更大的数据存储需求。
MCS-51 系列单片机的 I/O 端口是其与外部设备进行信息交换的通道。
它共有 4 个 8 位的并行 I/O 端口,分别为 P0、P1、P2 和 P3 端口。
每个端口都可以作为输入或输出使用。
P0 端口是一个三态双向端口,既可以作为地址/数据总线的低8 位,也可以作为普通的 I/O 端口。
但作为普通 I/O 端口使用时,需要外接上拉电阻。
P1 端口是一个准双向端口,通常作为普通的 I/O 端口使用。
P2 端口既可以作为普通的 I/O 端口,也可以在访问片外存储器时作为高 8 位地址线。
第2章 MCS-51单片机
• 外部数据存储器
在单片机内部数据存储器容量不够的情况下,可 扩展外部数据存储器。 ① 用于存放随机读写的数据。 ② MCS-51外部数据存储器和外部I/O口统一编址。
③ MCS-51最大扩展空间为64KB,地址范围为 0000H~FFFFH。
2.3.5 特殊功能寄存器 MCS-51单片机共有21个字节的特殊功能寄 存器SFR (Special Fuction Register)。 1.用途:
1. 运算器
算术运算:加、减、乘、除、加1、减1、比较 BCD码十进制调整等 逻辑运算:与、或、异或、求反、循环等逻辑操 作 位操作:内部有布尔处理器,它以进位标志位C 为位累加器,用来处理位操作。可对位置 “1” 、对位清零 、位判断等。 操作结果的状态信息送至状态寄存PSW。
2.程序计数器PC 程序计数器PC是16位的寄存器,用来存放即将 要执行的指令地址,可对64KB程序存储器直接寻 址。执行指令时,PC内容的低8位经P0口输出,高 8位经P2口输出。
例:单片机外接晶振频率12MHZ时的各种时序 单位: 振荡周期=1/fosc=1/12MHZ=0.0833us
状态周期=2/fosc=2/12MHZ=0.167us
机器周期=12/fosc=12/12MHZ=1us 指令周期=(1~4)机器周期=1~4us
2.5
复位状态与复位电路
2.5.1 复位状态
各个引脚的功能:
2.2.1 电源引脚 GND:接地端。 Vcc:电源端,接+5V。 2.2.2 时钟信号引脚 XTAL1,XTAL2: 接外部晶体或外部时钟。
2.2.3 控制信号引脚 RST/VPD: ①复位信号输入。 ②接备用电源,VCC掉电后,在低功耗条件下保持内部RAM中 的数据。 PSEN:程序存储器允许。输出读外部程序存储器的选通信号。 ALE/PROG: ①ALE 地址锁存允许。 ALE输出脉冲的频率为振荡频率的 1/6。 ②PROG 对8751单片机片内 EPROM 编程时,引入编程脉冲。 EA/VPP: ① EA =0,单片机只访问外部程序存储器。 EA =1,单片机访问内部程序存储器。 ②在8751片内EPROM编程期间,引入21V编程电源VPP。
第2章 MCS-51单片机的结构和原理
89C51/S51单 片机 内部结构图
RAM地址 寄存器
存储器
P0.0-P0.7 P0驱动器
P2.0-P2.7 I/O接口
P2驱动器
128B RAM
P0锁存器
P2锁存器
4KBROM
程序地址 寄存器
B寄存器 运算器
暂存器1
暂存器2
ACC
SP 缓冲器
ALU
PC增1 中断、串行口和定时器 PSW PC
DPTR
DSP芯片的诞生及发展对近20年来通信、计算机、控制
等领域的技术发展起到十分重要的作用。
典型的DSP算法
Algorithm Finite Impulse Response Filter Equation
y(n)
a
k 0
M
M
k
x( n k )
Infinite Impulse Response Filter
8051片内有ROM(程序存储器,只能读)和RAM(数据存储器, 可读可写)两类,它们有各自独立的存储地址空间,与一般微机
的存储器配臵方式不同。
8051有四个8位并行接口,即P0-P3.它们都是双向端口,每 个端口各有8条I/O线,均可输入/输出。P0-P3口四个锁存器同 RAM统一编址,可以把I/O口当作一般特殊功能寄存器来寻址
冯· 诺曼(Van Neuman)结构
控制命令 程序存储器 地址线
CPU
数据存储器
数据线
哈佛结构 控制命令 地址线 程序总线 程序存储器
CPU
控制命令 地址线 数据总线
数据存储器
8051/8751/8031芯片的外部引脚和指令系统完全兼容,其 内部结构除ROM/EPROM不同外,其余完全相同。
第2章 MCS-51 单片机组成原理
P1口~P3口的输出级的每一位可驱动4个LSTTL门。由于它们的输出级内部有上拉电阻,因此组成系统时无需外加上拉电阻。
2、作分时复用的地址/数据总线
2.5.2 P1口
P1口是一个专用的8位准双向I/O口,只具有通用输入/输出口功能,每一位都能设定为输入或输出,它的位结构如图2-7(b)所示。
2.5.3 P2口
P2口是一个8位准双向I/O口,具有两种功能。一是作通用I/O口用,与P1口相同。二是作扩展系统的高8位地址总线。输出高8位地址,与P0口一起组成16位地址总线。它的位结构如图2-7(c)所示。
2、程序计数器PC
程序计数器PC的功能与普通微机相同,它用来存放CPU执行的下一条指令的地址。当一条指令按照PC所指的地址从程序存储器中取出后,PC会自动加1,指向下一条指令。程序计数器PC是一个16位的寄存器,可寻址64KB的程序存储器空间。
3、堆栈指针SP
4、数据指针寄存器DPTR
2、特殊功能寄存器SFR(又称专用寄存器)
这21个特殊功能寄存器详情见表2-2。
这21个特殊功能寄存器中,有11个寄存器具有位寻址功能,即寄存器中的每位都具有位地址,可以按位寻址。11个寄存器的位地址如图2-3所示。
2.3 MCS-51单片机存储器
2.3.1 程序存储器
2.2.3 工作寄存器和特殊功能寄存器
1、工作寄存器
MCS-51有32个工作寄存器,分为四个区(或组)每个区为8个寄存器R0、R1、R2、R3、R4、R5、R6、R7,每一时刻只有一个区工作。由PSW寄存器中的RS1、RS0的值来决定当前的工作区:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2013-7-4
19
无论对HMOS还是CHMOS型,当振荡器正在运行的情况下, 复位是靠在RST/VPD或RST引脚至少保持两个机器周期的
高电平而实现的。在RST端出现高电平后的第2个周期,执
行内部复位,以后每个周期重复—次,直至RST端变低。 RST端的外部复位电路有两种操作方式: 上电复位和按键手动复位(人工复位)
2013-7-4
1
一、时钟的基本概念
1.单片机的工作原理: 取一条指令、译码、进行微操作,再取一条指令、译码、 进行微操作,这样自动地、—步一步地由微操作按次序完成 相应指令规定的功能。单片机的时钟信号用来为单片机芯片 内部的各种微操作提供时间基准,机器启动后,指令的执行 顺序如下图2.10所示: 取指 分析 执行
的24mA降为3mA,甚至更低。
2013-7-4 30
终止待机有以下两种方法:
① 通过硬件复位 由于在待机方式下,RST脚上的有效信号只需保持两个时 钟周期就能使IDL置“0”,单片机即退出待机状态。 注意,为了防止对端口的操作出现错误,置空闲方式。 下一条指令不应该为写端口或写外部RAM的指令。 ② 通过中断方法 若在待机期间,任何一个允许的中断被触发,IDI都会被 置为“0”,从而结束持机方式。单片机进入中断服务程序。 这时,通用标志GFO或GFI可用来指示中断是正常操作期间还 是在待机期间发生的。
通信情况下选用12MHz。)
2013-7-4 5
2.外部引入方式
外部引入方式常用于多片单片机组成的系统中,以便
各单元之间的时钟信号同步运行。 对于HMOS型单片机(如8051),可用来输入外部脉冲
信号,如图2.12(b)所示,XTAL1(19)接地,XTAL2(18)
接外部时钟,由于XTAL2(18)的逻辑电平与TTL电平不兼容, 所以应接一个上拉电阻。 对于CHMOS单片机(如80C51),外部时钟要由XTAL1 引入,而XTAL2引脚应悬空。如图2.11(c)所示。
(3)PD:掉电方式位。若PD=1,进入掉电工作方式。 (4)IDL:待机方式位。各IDL=1,进入持机工作万式。 当PD扣IDL同时为l,则先进入掉电工作方式。复位后, PSON中所有定义位均为“0”。
2013-7-4
29
(1)待机方式
用指令使PCON中的IDL位置1,80C51就进入待机方式。
方式称为掉电保护。掉电保护电
路如图2.16所示:
2013-7-4
2.16 掉电保护电路
25
如图2.16所示,当电源电压VCC降到CPU工作电源电 压所允许的最低下限之前,通过中断服务程序,把一些必 须保护信息转存到片内RAM中,然后向P1.0写入“0”,由 P1.0输出的低电平触发单稳态电路555。 在主电源恢复之前,片内振荡器被封锁,一切功能停
含12个节拍(时钟周期),依次表示为:S1P1、S1P2、 S2P1、…S6P1、S6P2。若采用12MHz的晶振时,则一个机器 周期为1μs;若采用晶振6MHz时,则一个机器周期为2μs。
2013-7-4
9
4. 指令周期
是CPU执行一条指令所需要的时间为指令周期。 MCS-51单片机包含1个或2个或4个机器周期。 若采用6MHz晶振,则振荡周期为1/6μs,机器周期为 2μs、4μs或8μs。
2013-7-4
20
(1)上电复位
如图2.12所示,上电复位电路是利 用电容器充电实现的。上电瞬间,RST端的 电位与VCC相同,随着电容的逐步充电,充 电电流减小。RST电位逐渐下降。上电复位 所需的最短时间是振荡器建立时间加上两 个机器周期。在这段时间内,RST端口的电 平应维持高于斯密特触发器的下阈值。— 般VCC的上升时间不超过1ms,振荡器建立 时间不超过10ms。 复位电路的典型值: 电容C取10μF,R取8.2KΩ。 故时间常数 RC 10 106 8.2 103 82ms 足以满足要求。
上电瞬间,C与Rx构成充电电路,RST引
脚出现正脉冲,只要RST保持足够的高电平, 就能使单片机复位。
参数选择:
一般取C=22μF,R=200Ω,Rx=1KΩ, 此时, RC 22 106 1103 22ms 当按下按钮时,RST端电位: (1000/1200)×5=4.2V,使单片机复位。
2.概念 ⑴ 时序:各指令的微操作在时间上有严格的次序,这 种微操作的时间次序称作时序。 ⑵ 时钟电路:用于产生单片机工作所需要时钟信号的 电路成为时钟电路。
2013-7-4 2
二、振荡器和时钟电路
时钟信号有两种方式:内部振荡器方式;外部引入方式 1.内部振荡器方式
MCS-51单片机内部有一个高增益的 反相放大器,其输入端为引脚 XTAL1(19),输出端为引脚XTAL2 (18),用于外接石英晶体振荡器 或陶瓷谐振器和微调电容,构成稳 定的自激振荡器,其发出的脉冲直 接送入内部的时钟电路。如图2.11 或2.12(a)所示。
在待机方式下,振荡器继续运行,时钟信号继续提 供给中断逻辑。串行口和定时器,但提供给CPU的内部时 钟信号被切断,CPU停止工作。这时,堆栈指针SP、程序 计数器PC、程序状态字PSW、累加器ACC以及所有的工作寄
存器内容都被保存下来。
通常CPU耗电量占芯片耗电量的80%~90%,所以 CPU停止工作就会大大降低功耗。80C51消耗电流可由正常
进行一次取指操作。
2013-7-4
11
图2.14 MCS-51单片机的去取指/执行时序
a)单字节单周期;b)双字节单周期指令;c)单字节双周期字节;d)双字节双周期指令
2013-7-4 12
图2-14(a)与(b)分别为单字节单周期和双字节单周
期指令的时序。 对于单周期指令,在把指令码读入指令寄存器时,从
2013-7-4
2.14 上电外部复位电路
23
(4)抗干扰复位电路
2.15 两种实用复位电路 上面几种复位电路,干扰信号易串入复位端。一般情况不会造成单片机 的错误复位,但有可能引起内部某些寄存错误复位。在应用系统中,为了 保证复位电路可靠地工作,常将RC电路在接施密特电路后再接入单片机复 位端及外围电路复位端。图2.15给出了两种实用电路。
2013-7-4 24
二、掉电处理 1.掉电保护方式
掉电保护:单片机如遇到掉电, 将导致片内RAM和SFR中的信息丢
失。为避免发生此种情况,把
HMOS型的8051单片机RST/VPD引脚 作为备用电源,只要VCC上的电压
低于VPD上的电压时,备用电源就
通过VPD端给内部RAM供电,以低 功耗保持内部RAM中的数据,这种
S1P2开始执行指令。
如果它为双字节指今,则在同一机器周期的S4读入第二 字节;
如果它为单字节指令,则在S4仍旧进行读操作,但读入
的字节(它应是下一个指令码)被忽略,而且程序计数据不 加1。在任何情况下,在S6P2结束指令操作。
2013-7-4 13
图2.14(c)为双字节单周期指令的时序,在两个机 器周期内发生4次读操作码的操作,由于是单字节指令,后3
表2-7 寄存器的复位状态
2013-7-4
17
2. 复位电路
HMOS型8051复位结构如图2.10所示。
复位引脚RST/VPD(它是掉电方式下 内部RAM的供电端VPD)通过一个施
密特触发器与复位电路相连。施密
特触发器用来抑制噪声,它的输出 在每个机器周期的S5P2由复位电路 采样一次。 RST引脚时复位信号的输入端,复
2013-7-4 6
三、时序单位
基本概念:
MCS- 51时序的定时单位共有4个,从小到大依次是:时 钟周期(拍节)、状态周期、机器周期和指令周期。 ⒈ 时钟周期(拍节,振荡周期):是指振荡器产生一个 振荡脉冲信号所用的时间,是振荡频率的倒数,称为节 拍,为最小的时序单位。
2013-7-4
7
2.状态周期:指振荡器脉冲 信号经过时钟电路二分频之 后产生的单片机时钟信号的 周期(用S表示)称为状态
周期。故1个状态周期S包含
2个节拍,前一时钟周期称 为P1拍,后一个时钟周期称 为P2拍。如图2.13所示:
2013-7-4
图2.13 80C51单片机时钟信号
8
3. 机器周期:是指CPU完成某一个规定操作所需的时间。
MCS-51单片机的一个机器周期包含6个状态,并依次
表示为:S1~S6,每个状态分为2个拍。故一个机器周期包
止,并依靠VPD引脚提供的电源来保护片内RAM中的数据。
当电源恢复时,VPD上的电压应保持足够的时间(约 10ms),以完成复位操作,然后开始正常的工作。
2013-7-4 26
2.节电工作方式
对于CHMOS型单片机(如80C51)才有节电方式。
有两种:待机(空闲)方式;掉电保护(停机)方式。
⑴ 持机(空闲)方式:可使功耗减小,电流约为1.7~5mA; ⑵ 掉电(停机)方式:备用电源直接由VCC端输入,可仅 功耗减到最小,电流一般为5~50uA。 因此,CHMOS型单片机特别适用于低功耗应用的场合。
2013-7-4
2.12 上电复位电路
21
(2)外部复位电路
外部复位电路如图2.13所示, 按下按钮时,电源对外接电容器充 电,使RST为高电平,复位按钮松 开后,电容通过内部下拉电阻放电, 逐渐使RST端恢复低电平。
2.13 外部复位电路
2013-7-4
22
⑶ 程序计数器指针PC
典型的复位电路既具有上电复位又具有 外部的复位电路如图2.14所示,
单片机复位后,PC内容初始化为0000H,那么单片机
就从0000H单元开始执行程序。片内RAM为随机值,运行 中的复位操作不改变片内RAM的内容。
2013-7-4 16
复位后各寄存器的初态如下表2-7所示,其意义为: ⑴ P0~P3=FFH,相当于各口锁存器已写入1,此时可用于输出/输入; ⑵ SP=07H,堆栈指针指向片内RAM的07H单元(第一个入栈内容将写入 08H中); ⑶ IP、IE和PCON的有效值为0,各中断源处于低优先级且均被关断,串 行通信的波特率不加倍; ⑷ PSW=00H,当前工作寄存器为0组。