
2019/11/26 8051单片机的基本组成 单片机原理及其应用 第一章单片机基础如识 内中 器 000 时32 M0s-51的信 55(20):接地端 以实现对片外R 复位信号/备用电 输入 C风U行片内 ROCL-)0 031 ,子其无片内ROM,版EA 该的第二功能VPP是对8751片内 9程写入时,作为21V程电的 园辑符号 8061单片机引脚图 入时007内 8051单片机引脚图 逻对号 1
2019/11/26 1 第一章 单片机基础知识 振荡器和 时序 OSC 程序存储器 4KB ROM 数据存储器 256B RAM 定时/计数器 2 个 16 位 8051 CPU 64KB 总线 扩展控制器 并行 I/O 接口 4 个 串行 I/O 接口 1 个 内 部 总 线 内中断 外中断 控制 P0 P1 P2 P3 串行输入 串行输出 外部时钟 源 外部事件计数 8051单片机的基本组成 P1.0 XTAL2 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 XTAL1 RST/VPD VSS P2.0 P1.1 P0.0 1 3 4 5 6 7 8 2 10 9 8051 11 13 14 15 16 17 18 12 19 20 40 38 37 36 35 34 33 39 31 32 30 28 27 26 25 24 23 29 22 21 RXD/P3.0 TXD/P3.1 T0/P3.4 T1/P3.5 VCC PSEN ALE/PROG EA/VPP INT0/P3.2 INT1/P3.3 WR/P3.6 RD/P3.7 8051 VSS VCC RST/VPD XTAL1 XTAL2 EA/VPP PSEN ALE/PROG P3 口 P2 口 P1 口 P0 口 8051单片机引脚图 DIP引脚图 逻辑符号 MCS-51的信号引脚 时钟引脚(2根) XTAL1(19脚):接外部晶振的一端。采用外部 时钟电路时,对HMOS工艺的单片机,此引脚 应接地;对CHMOS,此引脚接外部时钟的输入 端。 XTAL2(18脚):接外部晶振的另一端。使用外 部时钟时,对HMOS工艺的单片机,此引脚应 接外部时钟的输入端;对CHMOS,此引脚悬空。 ALE/PROG(-) (30脚):地址锁存允许信号 输出/编程脉冲输入引脚。当CPU访问片外 存储器时,ALE输出信号控制锁存P0口输 出的低8位地址,从而实现P0口数据与低 位地址的分时复用。当8051上电正常工作 后,自动在ALE端输出频率为fosc/6的脉冲 序列(fosc代表振荡器的频率)。 该引脚的第二功能PROG是对8751内 部4KB EPROM编程写入时,作为编程脉冲 的输入端。 VPP/EA(-)(31脚):外部程序存储器地址允 许输入端/编程电压输入端。 当EA(-)接高电平时,CPU执行片内 ROM指令,但当PC值超过0FFFH时,将自 动转去执行片外ROM指令;当EA(-)接低电 平时,CPU只执行片外ROM指令。对于 8031,由于其无片内ROM,故其EA(-)必 须接低电平。 该引脚的第二功能VPP是对8751片内 EPROM编程写入时,作为21V编程电压的 输入端。 P1.0 XTAL2 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 XTAL1 RST/VPD VSS P2.0 P1.1 P0.0 1 3 4 5 6 7 8 2 10 9 8051 11 13 14 15 16 17 18 12 19 20 40 38 37 36 35 34 33 39 31 32 30 28 27 26 25 24 23 29 22 21 RXD/P3.0 TXD/P3.1 T0/P3.4 T1/P3.5 VCC PSEN ALE/PROG EA/VPP INT0/P3.2 INT1/P3.3 WR/P3.6 RD/P3.7 8051 VSS VCC RST/VPD XTAL1 XTAL2 EA/VPP PSEN ALE/PROG P3 口 P2 口 P1 口 P0 口 8051单片机引脚图 DIP引脚图 逻辑符号 MCS-51的信号引脚 电源引脚(2根) VCC(40脚):电源端,接 +5V电源。 VSS(20脚):接地端。 RST/VPD(9脚):复位信号/备用电源 输入引脚。 当RST引脚保持两个机器周期的 高电平后,就可以使8051完成复位 操作。 ALE/PROG(-) (30脚):地址锁存允许信号 输出/编程脉冲输入引脚。当CPU访问片外 存储器时,ALE输出信号控制锁存P0口输 出的低8位地址,从而实现P0口数据与低 位地址的分时复用。当8051上电正常工作 后,自动在ALE端输出频率为fosc/6的脉冲 序列(fosc代表振荡器的频率)。 该引脚的第二功能PROG是对8751内 部4KB EPROM编程写入时,作为编程脉冲 的输入端。 PSEN(-)(29脚):片外ROM读 选通信号端。在读片外ROM 时,PSEN(-)有效,为低电平, 以实现对片外ROM的读操作。 1 2 3 4

2019/11/26 7(3-32):P阳口的8位双向 脚 用外 P3口第二功能 使用了 第二功侧标记 第二功能注麻 -P471- RXD P1口作为通用的/0口使用。 。 TXD 中行口登择发 P20-P2721-28):P2口的8收双向 外部中菌 0请 外部中断 请求输人据 门用 定时/计数器 P30-3710-17):P3口的8发准双向 片外数存储器读通 逻辑符号 1单片机引脚图 8051单片机的时钟信号 ·1时钟情号的产生 ,2引入外都膝冲食号 在MCS-51芯片内部有一个高增益反相放大器,其输入 在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,应当引入 ·编为芯片引脚XTAL1,其输出端为引脚XTAL2,而在芯片的 惟一的公用外部赫冲信号作为各单片机的振蒸脉冲。这时,外部的脉冲信号是经 ·外部,XTAL1和XTAL2之间跨接品体振菇器和微调电容,从 XTAL2引注入, ·而构成一个稳定的自激振荡备 时钟电路产生的振荡脉冲经过触发器进行二分须之后, ·才成为单片机的时钟脉冲信号 2
2019/11/26 2 P1.0 XTAL2 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 XTAL1 RST/VPD VSS P2.0 P1.1 P0.0 1 3 4 5 6 7 8 2 10 9 8051 11 13 14 15 16 17 18 12 19 20 40 38 37 36 35 34 33 39 31 32 30 28 27 26 25 24 23 29 22 21 RXD/P3.0 TXD/P3.1 T0/P3.4 T1/P3.5 VCC PSEN ALE/PROG EA/VPP INT0/P3.2 INT1/P3.3 WR/P3.6 RD/P3.7 8051 VSS VCC RST/VPD XTAL1 XTAL2 EA/VPP PSEN ALE/PROG P3 口 P2 口 P1 口 P0 口 8051单片机引脚图 DIP引脚图 逻辑符号 MCS-51的信号引脚 P0.0~P0.7(39~32脚):P0口的8位双向 I/O口线。 P0口即可作地址/数据总线使用,又可作 通用的I/O口使用。当CPU访问片外存储器 时,P0口分时先作低8位地址总线,后作双 向数据总线,此时,P0口就不能再作I/O口 使用了。 P2.0~P2.7(21~28脚):P2口的8位准双向 I/O口线。 P2口即可作为通用的I/O口使用,也可作 为片外存储器的高8位地址总线,与P0口配 合,组成16位片外存储器单元地址。 P3.0~P3.7(10~17脚):P3口的8位准双向 I/O口线。 P3口除了作为通用的I/O口使用之外,每 个引脚还具有第二功能。 P1.0~P1.7(1~8脚):P1口的8位准双向I/O 口线。 P1口作为通用的I/O口使用。 P3口第二功能 • 1. 时钟信号的产生 • 在MCS-51芯片内部有一个高增益反相放大器,其输入 • 端为芯片引脚XTAL1,其输出端为引脚XTAL2 。而在芯片的 • 外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从 • 而构成一个稳定的自激振荡器。 • 时钟电路产生的振荡脉冲经过触发器进行二分频之后, • 才成为单片机的时钟脉冲信号。 8051单片机的时钟信号 1 XTAL1 XTAL2 C1 C2 晶振 8051 至内部时钟电路 • 2. 引入外部脉冲信号 • 在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,应当引入 惟一的公用外部脉冲信号作为各单片机的振荡脉冲。这时,外部的脉冲信号是经 XTAL2引脚注入。 8051 1 XTAL1 XTAL2 VSS TTL 外部时 钟信号 VCC 5 6 7 8

2019/11/26 3.cPU时序 ,CPU时序就是CPU执行指令时所需拉制信号的时间顺序。 单片机的时序定时单位从小到大依次为: ·一条指令的执行过程分作几个基本操作,完成一个基本操作所需 的时间称作机爸周期(TM1 ·时钟周期、状态周刷、机器周则和指令周期。 ·一个机器周期的宽度为6个状态周期、12个振菇周期 ·时钟周期为单片机提供定时信号的振菇源的周期成外部擒入时钟信号的 周期,也称为振荔周期【TosC)减节拍用P表示。 ·机卷周期就是振满脉冲的十二分颖。 ·振荡脉冲经过二分须后,就是单片机的时钟信号的周期,定义为状态周 ,当振荡脉冲频事为12MH2时,一个机器周期为15:当振荡藤冲 期【用S表示),所以,一个状态就包含两个节拍,前半周期对应的节 率为6MHz时,一个机器周期为25 拍叫节拍1(P1】,后半周期对应的节拍2(P2 10 指令周期 8051单片机的存俺疆 ,指令周期是最大的时序定时单位: 执行一条指令所需要的时间称为指令周期。 MCS-51单片机中存放程序的程序存储备和存放数据的数据存储器,在物 ·它一般由若干个机器周期组成。 理空间上是相互独立哈佛结构, ·MCS-51单片机通常可以分为单周期指令、双周期指令和四周 MCS-51单片机的存储器空间的管理,分为3个逻辑地址空间进行: 期指令等三种。四周期指令只有乘法和除法指令两条,其余均 为单周期和双周期指令。 一片内片外统一编址的64KB程序存储器地址空间: 一片内独立编址的256B数据存储器地址空间: 按照指令字节教和机器周期数,8051的111条指令可分为6类,分 的 明指令 的 ~片外独立编址的64KB数据存储器地址空间。 指令 期指令 12 3
2019/11/26 3 3. CPU 时序 • CPU时序就是CPU执行指令时所需控制信号的时间顺序。 • 单片机的时序定时单位从小到大依次为: • 时钟周期、状态周期、机器周期和指令周期。 • 时钟周期为单片机提供定时信号的振荡源的周期或外部输入时钟信号的 周期,也称为振荡周期(Tosc)或节拍用P表示。 • 振荡脉冲经过二分频后,就是单片机的时钟信号的周期,定义为状态周 期(用S表示),所以,一个状态就包含两个节拍,前半周期对应的节 拍叫节拍1(P1),后半周期对应的节拍2(P2) • 一条指令的执行过程分作几个基本操作,完成一个基本操作所需 的时间称作机器周期(TM) • 一个机器周期的宽度为6个状态周期、12个振荡周期 • 机器周期就是振荡脉冲的十二分频。 • 当振荡脉冲频率为12 MHz时,一个机器周期为1μs;当振荡脉冲 频率为6 MHz时,一个机器周期为2μs。 • 指令周期 • 指令周期是最大的时序定时单位; • 执行一条指令所需要的时间称为指令周期。 • 它一般由若干个机器周期组成。 • MCS-51单片机通常可以分为单周期指令、双周期指令和四周 期指令等三种。四周期指令只有乘法和除法指令两条,其余均 为单周期和双周期指令。 按照指令字节数和机器周期数,8051的111条指令可分为6类,分 别是:单字节单周期指令、单字节双周期指令、单字节四周期指令、 双字节单周期指令、双字节双周期指令、三字节双周期指令 MCS-51单片机中存放程序的程序存储器和存放数据的数据存储器,在物 理空间上是相互独立哈佛结构。 MCS-51单片机的存储器空间的管理,分为3个逻辑地址空间进行: 片内片外统一编址的64KB程序存储器地址空间; 片内独立编址的256B数据存储器地址空间; 片外独立编址的64KB数据存储器地址空间。 8051单片机的存储器 9 10 11 12

2019/11/26 8051单片机存储器地址空间示意图 程序存储器 ■程序存储器用来存放程序、常数或表格等。 ■在8051中,其存储空间分布如下: ●片内有48的R0存储单元,地址为0000H-OFFFH。 (/o ●片外最多可扩至64KB的OM,地址为1000州-FFF ●片内外0统一编址, ■当队(一引脚接高电平时,CU首先访问片内,当指令地址超过 OFFFHE时,自动转向片外O取指令。 T南 当E队(一】引脚接低电平时,PU只访问片外OM。片外RW的地址从 五= 0000H开始编址.对于8O31,由于其片内无R0■,所以使用时必须使 000u 内部0 扩展动 内部 扩展 E队(一】接低电平,以便能够从片外扩展的EP中取指令。 程序存错 处据存待器 14 ■程序计数器PC ·MCS-51的程序存储器中有些单元具有特殊功能: ·0000H-0002H,启动单元. 落C是一个18位的绳址套布器。用于布放下一条精要执行的指令的 ·0003H-002AH,5个中新源的中断地址区】 ※PC的基本工作方式有: 0003H-000AH外部中断0中断地址区 ()自动加1.CPU从R0M中每读一个字节,自动执行 000BH-0012H定时/计数器0中断地址区 PC+1→PC: 0013H-001AH外部中断1中断地址区 (2②执行转移指令时,PC会根据该指令要求修改下一次读新的地 址 001BH-0022H定时/计数器1中断地址区 (③)执行调用子程序成发生中断时,CPU会自动将当前PC值压入堆栈, 0023H-002AH串行中断地址区 将子程序入口地址或中断入口地址装入PC:子程序返回成中断返 回时,恢复原有被压入堆栈的P心植,继续执行原顺序程序指令。 16 4
2019/11/26 4 8051单片机存储器地址空间示意图 程序存储器ROM用来存放程序、常数或表格等。 在8051中,其存储空间分布如下: 片内有4KB的ROM存储单元,地址为0000H~0FFFH。 片外最多可扩至64KB的ROM,地址为1000H~FFFFH。 片内外ROM统一编址。 当EA(-)引脚接高电平时,CPU将首先访问片内ROM,当指令地址超过 0FFFH时,自动转向片外ROM取指令。 当EA(-)引脚接低电平时,CPU只访问片外ROM。片外ROM的地址从 0000H开始编址。对于8031,由于其片内无ROM,所以使用时必须使 EA(-)接低电平,以便能够从片外扩展的EPROM中取指令。 程序存储器 • MCS-51的程序存储器中有些单元具有特殊功能: • 0000H~0002H,启动单元。 • 0003H~002AH,5个中断源的中断地址区。 • 0003H~000AH 外部中断0中断地址区 • 000BH~0012H 定时/计数器0中断地址区 • 0013H~001AH 外部中断1中断地址区 • 001BH~0022H 定时/计数器1中断地址区 • 0023H~002AH 串行中断地址区 ⑶ 执行调用子程序或发生中断时,CPU会自动将当前PC值压入堆栈, 将子程序入口地址或中断入口地址装入PC;子程序返回或中断返 回时,恢复原有被压入堆栈的PC值,继续执行原顺序程序指令。 程 序 计 数 器 P C ※ PC是一个16位的地址寄存器,用于存放下一条将要执行的指令的 地址。 ※ PC的基本工作方式有: ⑴ 自动加1。CPU从ROM中每读一个字节,自动执行 PC+1→PC; ⑵ 执行转移指令时,PC会根据该指令要求修改下一次读ROM新的地 址; 13 14 15 16

2019/11/26 数据存情器 1.内部数据存储器 ·MCS51单片机数据存储器是RAM型存储器,用于暂存数据和运算 结果等 ·也分为片内数据存储器和片外数据存储器, ·■8051片内RAM地址空间共有256B,又分为两个部分: ·片外数据存储器的容量不超过64KB。 ··低128BOOH-7FH)为真正的RAM区(片内RAM:内部RAM),分为 ·内部和外部数据存储器空间存在重叠,通过不问指令来区别,当访 工作寄存洛区、位导址区、用户RAM区。 问内部RAM时,用MOV类指令;当访问外部RAM时,则用MOVX 高128B80H-FH为特殊功能寄存器SFR)区 类指令。 17 18 1.内部数据存情器低128B 2)位得址 单片机片内M中2阳-2地址范围中共16个字节单元称为位寻址区 该区的1B个字节单元,既可作为一般的使用,进行字节操作,也 30H~7FH 数据缓冲区 号物翰红2型站恶物时 00 0翊1海0烟0烟哪海0m 可以对单元中的每一位进行位操作。18个字节单元共128位,每位有位地 址,地址范围是00姐-. 20H~2FH 位寻址区 1 位寻址区中的每一位地址有两种表示形式:一是表中位地址形式,另一种 (007F 01谢1m1☒1细1细1翻1园1m 是单元地址·位序形式. ISH~IFH 1 10-7H 作春奇蒂2区 霸的起心种年九 4组通用寄存强占宽内部RAM的 O0H一1FH单元地址, OSH~OFH 热新1区 在任一时 00用-07H 森区 案决定。 19 20 5
2019/11/26 5 • MCS-51单片机数据存储器是RAM型存储器,用于暂存数据和运算 结果等 • 也分为片内数据存储器和片外数据存储器。 • 片外数据存储器的容量不超过64KB。 • 内部和外部数据存储器空间存在重叠,通过不同指令来区别。当访 问内部RAM时,用MOV类指令;当访问外部RAM时,则用MOVX 类指令。 数据存储器 1. 内部数据存储器 • 8051片内RAM地址空间共有256B,又分为两个部分: • 低128B(00H~7FH)为真正的RAM区(片内RAM;内部RAM),分为 工作寄存器区、位寻址区、用户RAM区。 • 高128B(80H~FFH)为特殊功能寄存器(SFR)区。 • 1) 寄存器区 • 8051共有4组寄存器,每组8个寄存 单元,各组都以R0~R7作寄存单元 编号。 • 4组通用寄存器占据内部RAM的 00H~1FH单元地址。 • 在任一时刻,CPU只能使用其 中的一组寄存器,由程序状态字寄 存器PSW中RS1、RS0位的状态组合 来决定。 30H ~7FH 数据缓冲区 20H ~2FH 位寻址区 (00H~7FH) 18H ~1FH 工作 寄 存器3区 (R7~R0) 10H ~17H 工作 寄 存器2区 (R7~R0) 08H ~0FH 工作 寄 存器1区 (R7~R0) 00H ~07H 工作 寄 存器0区 (R7~R0) 1. 内部数据存储器—低128B 2)位寻址区 单片机片内RAM中20H~2FH地址范围中共16个字节单元称为位寻址区。 该区的16个字节单元,既可作为一般的RAM使用,进行字节操作,也 可以对单元中的每一位进行位操作。16个字节单元共128位,每位有位地 址,地址范围是00H~7FH。 位寻址区中的每一位地址有两种表示形式:一是表中位地址形式,另一种 是单元地址•位序形式。 17 18 19 20

2019/11/26 1.内部数据存储器一高128B 307 数据缓冲区 ·3)用户RM区 20H-2用 在内部RAM低128单元中, 位得效区 ·内部RAM的高128单元是供给专用寄存器使用的,其单元 【00-7FH 30H-7FH80个单元,是供用户使用 地址为8OH一H。国这些寄存暴的功能巴已作专门规定, 18H~IFH 作商善8 的一般RAM区,用户可以根据需要 自由安所以也称它为通用R区。 故称之为◆用寄存暑(Special Function Register),也可 10H17H 工作春奇蒂2区 只能用直接导址、寄存各间接导址等 方式按字节访问。 称为特珠功能菁存器SF职 08H~OFH 德春商区 一最应用中常把堆栈开辟在此区中 00H-07H 种存路区 21 22 21个特殊功能寄存露在各功能机构的分布: 1.在8051单片机中设夏了21个特珠功能寄存器,它们不连续地分布在 地址为80时-阳的128个字节的存情空间中 GPU:A、B.PS.SP、PTR (DPH、Dr)t 2在这21小SR中,元是字节地址能被8蟹除(即16进制的地址码尾 产并行和:P0、P1、2、P3: 数为0或8)的11个单元均具有位寻址能力,有效的位地址共有82个。 >串行口:S0om、SF、PCaN: 382个有效位地址可用位地址、位符号、单元地址位序和青存器名 乡中断系统:B、IP; 位序四种方法来表示,但一最是用位将号或等存器名位序来表示 >定时/计数器:TM0D、T00M.T0.T10.、TH1、TL1. 23 24 6
2019/11/26 6 • 3) 用户RAM区 • 在 内 部 RAM 低 128 单 元 中 , 30H~7FH 80个单元,是供用户使用 的一般RAM区,用户可以根据需要 自由安排所以也称它为通用RAM区。 只能用直接寻址、寄存器间接寻址等 方式按字节访问。 • 一般应用中常把堆栈开辟在此区中。 30H ~7FH 数据缓冲区 20H ~2FH 位寻址区 (00H~7FH) 18H ~1FH 工作 寄 存器3区 (R7~R0) 10H ~17H 工作 寄 存器2区 (R7~R0) 08H ~0FH 工作 寄 存器1区 (R7~R0) 00H ~07H 工作 寄 存器0区 (R7~R0) • 内部RAM的高128单元是供给专用寄存器使用的,其单元 地址为80H~FFH。因这些寄存器的功能已作专门规定, 故称之为专用寄存器(Special Function Register),也可 称为特殊功能寄存器SFR。 1. 内部数据存储器—高128B 1. 在8051单片机中设置了21个特殊功能寄存器,它们不连续地分布在 地址为80H-FFH的128个字节的存储空间中 2.在这21个SFR中,凡是字节地址能被8整除(即16进制的地址码尾 数为0或8)的11个单元均具有位寻址能力,有效的位地址共有82个。 3.82个有效位地址可用位地址、位符号、单元地址.位序和寄存器名. 位序四种方法来表示,但一般是用位符号或寄存器名.位序来表示 的 21个特殊功能寄存器在各功能机构的分布: CPU :A、B、PSW、SP、DPTR(DPH、DPL); 并行口:P0、P1、P2、P3; 串行口:SCON、SBUF、PCON; 中断系统:IE、IP; 定时/计数器:TMOD、TCON、TH0、TL0、TH1、TL1。 21 22 23 24

2019/11/26 常用的特珠功能哥卉器: 5.程序状态字膏存器PS: 8位寄存器,用作程序运行状态的标志, 1.票加都ACC(简赫为A):8位寄存器,用来序放参与运算的一 D7 D6 D5 D4 D3 D2 D1 DO 个数及算站果。 CYAC F0RS1RS0OV·P 2奇存器B:8位寄存器,在泉、除法远算中用来蕾存数据或作 (1)RS1、RS0:工作膏存器组选择位,用于选择当前工作寄 为普通存储单元使用。 存器组 3.数备指外寄存暑DPTR:16位寄存器,主要作为片外数据存储 RS1RS0赛存霉组R0-R7对应地址 器的地址指针,也可拆成高李节DPH不低李节DL两个粒立的8 00 0 00H-07H 位号存露。 01 1 08H-0FH 4.鹅口P0~P3:80C51把L/O当作一般的专用等存露来使用,不专 10 2 10H-17H 设口操作榴今。 11 3 18H-1FH 25 26 6.堆找指针(8P一Stack Pointer) D7 D6 D5 D4 D3 D2 D1 DO CYAC FO RS1 RSO OV P ,MC3-51的堆装藏在内亦BAM中,SP是一个8限寄亭易。 (2)C:进位桥态,。在进背加法(成减法)运算时,着道算地果兼高 ·最能复位后,S配的内客为0阻,从而复位后堆瘦实你上是从0帕单光齐 位有进位(或倩位)时CY=1,香则CY-0。 的。位081一1阳单元分别于工作存是1~3区,如序要用则这 垫区,最好花8配值政为1H成夏大的值, (4)OV:盖出标志。两个带特号散进算,著帅果城出-128+127时为量 出,0V=1,香则0V=0。 一款在内AM的30H~7F阻单元中开难 OV=CYBC6;C6为第6位向第7位的进(香)位 (5)P:青%标志,若A中内宰“1°的个数为号数个时P=1,百则P=0。 儿走意变系加幕弘中内喜的槽个均会影响P标志位 27
2019/11/26 7 常用的特殊功能寄存器: 1.累加器ACC(简称为A):8位寄存器,用来存放参与运算的一 个数及运算结果。 2.寄存器B:8位寄存器,在乘、除法运算中用来暂存数据或作 为普通存储单元使用。 3.数据指针寄存器DPTR:16位寄存器,主要作为片外数据存储 器的地址指针,也可拆成高字节DPH和低字节DPL两个独立的8 位寄存器。 4.端口P0~P3:80C51把I/O当作一般的专用寄存器来使用,不专 设口操作指令。 5.程序状态字寄存器PSW: 8位寄存器,用作程序运行状态的标志。 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV - P RS1 RS0 寄存器组 R0~R7对应地址 0 0 0 00H~07H 0 1 1 08H~0FH 1 0 2 10H~17H 1 1 3 18H~1FH (1)RS1、RS0:工作寄存器组选择位,用于选择当前工作寄 存器组 (2)CY:进位标志。在进行加法(或减法)运算时,若运算结果最高 位有进位(或借位)时CY=1,否则CY=0。 (3)AC:半进位标志。在进行加法(或减法)运算时,若低半字节向 高半字节有进位(或借位)时AC=1,否则AC=0。 (4)OV:溢出标志。两个带符号数运算,若结果超出-128~+127时为溢 出,OV=1,否则OV=0。 OV=CYC6 ;C6为第6位向第7位的进(借)位 (5)P:奇偶标志。若A中内容“1”的个数为奇数个时P=1,否则P=0。 凡是改变累加器A中内容的指令均会影响P标志位 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV - P • MCS-51的堆栈设在内部RAM中,SP是一个8位寄存器。 • 系统复位后,SP的内容为07H,从而复位后堆栈实际上是从08H单元开 始的。但08H~1FH单元分别属于工作寄存器1~3区,如程序要用到这 些区,最好把SP值改为1FH或更大的值。 • 一般在内部RAM的30H~7FH单元中开辟堆栈。 6. 堆栈指针(SP—Stack Pointer) 25 26 27 28

2019/11/26 8051单片机的复位电路 一皇位功能 复位是单片机的南始化操作。 ·二、复位条件 ·单片机复位的条件是:必须使RSTN心(9】加上持续两个机器周期(即24 复位功胞是老PC南始化为0000饵,使CU从0000日单元开给执行粒 个振荡周期)的高电平,例如,若时钟频率为12MH,每机器周期为15 序;复位操作同时还时其他一业普存露有形响,但内年RM的敏 解是不变的。 则只需25以上时间的高电平,在RST引脚出现高电平后的第二个机器周期 执行复位。 体丁进入章能的正常刺站化之外,当南于喜序道行曲错成操作情 使最能处于元填状志时,为福肌圆境,也需要传复位健重断启 功。 29 30 三、复位电路 ,四、复位后状态 复位后PC值为0O0OH,表明复位后程序 产复位操作通常有两种盖本形式:上电商动复位、平动楼能美位。 从00O0开始执行 P3口值为F >广在80C51单片机的5T引所上前入高电平并至少保神两个北毒周期(中24 寄存器 个推藩周期)以上时,复位过担即可党成,如果RST引脚种埃保种高电 ACC 平,单片就处于环复位快 00H PSW 0P3 OFFH- 6x60e000D 再用 E ●××00000B T00 00H TCON 00 TLO,TLI THO.THI SBUF 不 ON0×××0000B 31 8
2019/11/26 8 8051单片机的复位电路 一、复位功能 • 复位是单片机的初始化操作。 • 复位功能是把PC初始化为0000H,使CPU从0000H单元开始执行程 序;复位操作同时还对其他一些寄存器有影响,但内部RAM的数 据是不变的。 • 除了进入系统的正常初始化之外,当由于程序运行出错或操作错 误使系统处于死锁状态时,为摆脱困境,也需要按复位键重新启 动。 • 二、复位条件 • 单片机复位的条件是:必须使RST/VPD (9)加上持续两个机器周期(即24 个振荡周期)的高电平。例如,若时钟频率为12 MHz,每机器周期为1 μs, 则只需 2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期 执行复位。 三、复位电路 复位操作通常有两种基本形式:上电自动复位、手动按键复位。 在80C51单片机的RST引脚上输入高电平并至少保持两个机器周期(即24 个振荡周期)以上时,复位过程即可完成。如果RST引脚持续保持高电 平,单片机就处于循环复位状态 MCS-51 VCC VCC RESET VSS 22 F 1 k MCS-51 VCC VCC RESET VSS 22 F RESET R1R2 (a) (b) 200 • 四、复位后状态 寄存器 复位状态 寄存器 复位状态 PC 0000H ACC 00H B 00H PSW 00H SP 07H DPTR 0000H P0~P3 0FFH IP ×××00000B IE 0××00000B TMOD 00H TCON 00H TL0,TL1 00H TH0,TH1 00H SCON 00H SBUF 不定 PCON 0×××0000B SP值为07H,表明堆栈底部在07H。一 般需重新设置SP值 P0~P3口值为FFH。P0~P3口用作输入口 时,必须先写入“1”。单片机在复位后, 已使P0~P3口每一端线为“1”, 为这些端线用作输入口做好了准备 复位后PC值为0000H,表明复位后程序 从0000H开始执行 29 30 31 32

2019/11/26 单片机低功耗工作方式 SMOD///GF1 GFO PD IDL 电源撞制等悬PC0N不可位寻址,李节地址为87H ,80C51单片机有雨种功礼节电方式 ≥S0D成种中倍增位,在幸行通信中座用。 变偏者式(le mode】 产/保留位。 ,排电方式(power down mode) 一G别用产通用拆志1, ·空阴方式尔神电方式部是由情珠功能青存器中的电绿拉制青存馨PC0N的有 GF0用户通用标志0。 关拉制位来拉制的。 >D粹电方式拉制位,D=1,毕片机进入掉电方式。 >一DL空佩(种机)方式枚制位,DL=1,单片机此入变闲方式。 33 34 9
2019/11/26 9 单片机低功耗工作方式 • 80C51单片机有两种功耗节电方式: • 空闲方式(idle mode) • 掉电方式(power down mode) • 空闲方式和掉电方式都是由特殊功能寄存器中的电源控制寄存器PCON的有 关控制位来控制的。 电源控制寄器PCON不可位寻址,字节地址为87H SMOD 波特率倍增位,在串行通信中应用。 / 保留位。 GF1 用户通用标志1。 GF0 用户通用标志0。 PD 掉电方式控制位,PD=1,单片机进入掉电方式。 IDL 空闲(待机)方式控制位,IDL=1,单片机进入空闲方式。 33 34