MCS-51单片机硬件结构和原理课件.ppt

上传人:飞****2 文档编号:69735215 上传时间:2023-01-08 格式:PPT 页数:104 大小:1.76MB
返回 下载 相关 举报
MCS-51单片机硬件结构和原理课件.ppt_第1页
第1页 / 共104页
MCS-51单片机硬件结构和原理课件.ppt_第2页
第2页 / 共104页
点击查看更多>>
资源描述

《MCS-51单片机硬件结构和原理课件.ppt》由会员分享,可在线阅读,更多相关《MCS-51单片机硬件结构和原理课件.ppt(104页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1*单片机原理与接口技术太原理工大学电子工业出版社第2章 MCS-51单片机硬件结构和原理制作 张兴忠 修审牛昱光2*n熟悉熟悉MCS-51单片机单片机CPU内部组成结构、各功内部组成结构、各功能部件的作用;能部件的作用;n掌握掌握MCS-51单片机引脚功能;单片机引脚功能;n掌握存储器的组织结构;掌握存储器的组织结构;n掌握掌握P0P3并行并行I/O口结构;口结构;n掌握时钟电路、掌握时钟电路、CPU时序和复位电路。时序和复位电路。本章教学要求本章教学要求 3*本本章章目目录录2.1 MCS-51系列单片机分类系列单片机分类2.2 单片机硬件结构单片机硬件结构 2.2.1 单片机的引脚功能单

2、片机的引脚功能 2.2.2 单片机的内部结构单片机的内部结构2.3 中央处理器(中央处理器(CPU)2.3.1 运算器运算器2.3.2 2.3.2 控制器控制器2.3.3 2.3.3 布尔(位)处理器布尔(位)处理器2.4 2.4 存储器存储器 2.4.1 2.4.1 程序存储器程序存储器 2.4.2 2.4.2 数据存储器数据存储器4*本 章 目 录2.7 2.7 单片机的工作方式单片机的工作方式 2.7.1 2.7.1 复位方式复位方式 2.7.2 2.7.2 程序执行方式程序执行方式 2.7.3 2.7.3 低功耗运行方式低功耗运行方式习题与思考题习题与思考题2.5 2.5 并行输入并行

3、输入/输出端口输出端口 2.5.1 P12.5.1 P1口口 2.5.2 P22.5.2 P2口口 2.5.3 P32.5.3 P3口口 2.5.4 P02.5.4 P0口口 2.5.5 2.5.5 并行口的应用并行口的应用2.6 2.6 时钟电路和时序时钟电路和时序 2.6.1 2.6.1 时钟电路时钟电路 2.6.2 2.6.2 时序时序5*2.1MCS-51系列单片机的分类系列单片机的分类 自自从从Intel公公司司于于20世世纪纪80年年代代初初推推出出MCS-51系系列列单单片片机机以以后后,所所有有的的51系系列列单单片片机机都都是是以以Intel公公司司最最早早的的典典型型产产品

4、品8051为为核核心心,增增加加一一定定的的功功能能部部件件后后构构成成的的。本本章章以以8051为为主主阐阐述述MCS-51系系列列单单片片机机的的系系统统结结构构、工工作作原原理理和和应应用用中中的的一一些些技技术术问题。问题。MCS-51系列可分为两大系列:系列可分为两大系列:51子系列子系列和和52子系列子系列。51子系列主要有子系列主要有8031、8051和和8751三种机三种机型。型。52子系列主要有子系列主要有8032、8052和和8752三种机型。三种机型。6*表2-1 MCS-51系列单片机的性能一览表 2.1 MCS-51系列单片机的分类 7*2.2单片机硬件结构单片机硬件

5、结构 芯片引脚按功能分成芯片引脚按功能分成3类,即:类,即:2.2.1 2.2.1 单片机的引脚功能单片机的引脚功能5151单片机的引脚功能单片机的引脚功能数据总线数据总线地址总线地址总线控制总线控制总线8*1.主电源引脚主电源引脚Vcc和和VssVcc(+5V)电源输入端电源输入端Vss(GND)共用接地端共用接地端2.2.1 单片机的引脚功能5151单片机电源引脚单片机电源引脚9*2.时钟振荡电路引脚时钟振荡电路引脚XTAL1和和XTAL2 XTAL1和和XTAL2分分别别用用做做晶晶体体振振荡荡电电路路的的反反相相器器输输入入端端和和输输出出端端。在在使使用用内内部部振振荡荡电电路路时时

6、,这这两两个个端端子子用用来来外外接接石石英英晶晶体体,振振荡荡频频率率为为晶晶体体振振荡荡频频率率,振振荡荡信信号号送送至至内内部部时时钟钟电电路路产产生生时钟脉冲信号。时钟脉冲信号。2.2.1 单片机的引脚功能5151单片机时钟引脚单片机时钟引脚10*3.控制信号引脚控制信号引脚RSTRST为复位信号输入端为复位信号输入端VPDVPD为内部为内部RAMRAM的备用电源输入端的备用电源输入端PSEN PSEN 外部程序存储器的读选通信外部程序存储器的读选通信号号ALEALE地址锁存允许信号地址锁存允许信号2.2.1 单片机的引脚功能复位复位/外部存储器外部存储器/地址锁存引脚地址锁存引脚11

7、*n 复位信号输入端复位信号输入端RST当当RST(RESET)端端保保持持两两个个机机器器周周期期(24个个时时钟钟周周期期)以以上上的的高高电电平平时时,单单片片机机完完成成复复位位操操作作。VPD为为内内部部RAM的的备备用用电电源源输输入入端端。当当主主电电源源Vcc一一旦旦发发生生断断电电或或电电压压降降到到一一定定值值时时,可可通通过过VPD为为单单片片机机内内部部RAM提提供供电电源源,以以保保护护片片内内RAM中中的的信信息息不不丢丢失失,使使Vcc上电后能继续正常运行。上电后能继续正常运行。2.2.1 单片机的引脚功能复位引脚复位引脚12*外外部部程程序序存存储储器器的的读读

8、选选通通信信号号。当当访访问问外外部部ROM时时,产产生生负负脉脉冲冲作作为为外外部部ROM的选通信号。的选通信号。2.2.1 单片机的引脚功能ALE ALE 与与PSENPSEN引脚引脚 地址锁存允许信号地址锁存允许信号ALEALE在访问外部存储器时,在访问外部存储器时,ALEALE用来锁存用来锁存P0P0送出的低送出的低8 8位地位地址信号。址信号。PROGPROG是对是对87518751内内部部EPROMEPROM编程时的编程脉编程时的编程脉冲输入端。冲输入端。读选通信号读选通信号PSENPSEN13*n外部程序存储器外部程序存储器控制信号控制信号EAEA=0:访问外部程序存储器。访问外

9、部程序存储器。EA=1:访问片内与片外程序存访问片内与片外程序存储器。储器。VPP为为8751EPROM的的21V编程电源输入端。编程电源输入端。2.2.1 单片机的引脚功能内外程序存储器控制引脚内外程序存储器控制引脚14*P0端口端口nP0端口(端口(P0.0P0.7)第一功能:是一个第一功能:是一个8位位漏极漏极开路型的双向开路型的双向I/O口口,这时,这时P0口可看成用户数据总线;口可看成用户数据总线;第二功能:是在访问外部存第二功能:是在访问外部存储器时,分时储器时,分时提供低提供低8位地位地址和址和8位双向数据总线位双向数据总线,这,这时先用做地址总线再用做数时先用做地址总线再用做数

10、据总线。据总线。4.P04.P0、P1P1、P2P2、P3P3端口端口2.2.1 单片机的引脚功能15*nP1口(口(P1.0P1.7)内部带上拉电阻的内部带上拉电阻的8位准双向位准双向I/O口。口。nP2口(口(P2.0P2.7)第第一一功功能能:一一个个内内部部带带上上拉拉电电阻阻的的8位准双向位准双向I/O口。口。第第二二功功能能:在在访访问问外外部部存存储储器器时时,输输出高出高8位地址。位地址。nP3口(口(P3.0P3.7)第第一一功功能能:内内部部带带上上拉拉电电阻阻的的8位位准准双双向向I/O口口。在在系系统统中中,这这8个个引引脚脚都都有各自的第二功能。有各自的第二功能。2.

11、2.1 单片机的引脚功能P1P1、P2P2和和P3 P3 端口端口16*2.2.2单片机的内部结构单片机的内部结构一个一个8 8位位CPUCPU;4 KB4 KB程序存储器,采用程序存储器,采用ROMROM或或EPROMEPROM(80318031无无ROMROM););128 B128 B通用数据存储器;通用数据存储器;2121个特殊功能寄存器(个特殊功能寄存器(SFRSFR););4 4个个8 8位并行口,其中位并行口,其中P0P0、P2P2、P3P3是复用口(是复用口(P0P0和和P2P2为为地址地址/数据线,可寻址数据线,可寻址64 KB ROM64 KB ROM和和64 KB RAM

12、64 KB RAM););一个可编程全双工串行口;一个可编程全双工串行口;具有具有5 5个中断源,两个优先级嵌套结构;个中断源,两个优先级嵌套结构;两个两个1616位定时位定时/计数器;计数器;一个片内振荡器与时钟电路。一个片内振荡器与时钟电路。5151单片机内部主要器件单片机内部主要器件17*2.2.2 单片机的内部结构5151单片机内部主要部件单片机内部主要部件18*2.3中央处理器(中央处理器(CPU)单片机的核心部分是单片机的核心部分是CPU,由运算器、控制器和布尔(位)由运算器、控制器和布尔(位)处理器组成。处理器组成。19*2.3.1运算器运算器 运算器运算器算术逻算术逻辑单元(辑

13、单元(ALUALU)包括:包括:累加器(累加器(ACCACC)程序状态字(程序状态字(PSWPSW)暂存器暂存器B B寄存器等部件寄存器等部件运算器的组成运算器的组成20*1.累加器累加器累加器是一个8位寄存器。在指令系统中,累加器在直接寻址时的助记符为ACC。除此之外全部用助记符A表示。2.3.1 运算器 累加器累加器21*算术算术/逻辑部件逻辑部件算算术术/逻逻辑辑部部件件ALU是是用用于于对对数数据据进进行行算算术术运运算算和和逻逻辑辑操操作作的的执执行行部部件件,由由加加法法器器和和其其他他逻逻辑辑电电路路(移移位位电电路和判断电路等)组成。路和判断电路等)组成。在在控控制制信信号号的

14、的作作用用下下,完完成成算算术术加加、减减、乘乘、除除和和逻逻辑辑与与、或或、异异或或等等运运算算,以以及及循循环环移移位位操操作作、位位操操作作等等功能。功能。2.3.1 运算器2.2.算术算术/逻辑部件逻辑部件22*程序状态字寄存器程序状态字寄存器 程序状态字寄存器程序状态字寄存器PSWPSW是一个是一个8 8位寄存器,用来存放运位寄存器,用来存放运算结果的一些特征。算结果的一些特征。进进位位标标志志位位半半进进位位标标志志位位用用户户自自定定义义标标志志位位工工作作寄寄存存器器组组选选择择位位溢溢出出标标志志位位奇奇偶偶校校验验标标志志位位2.3.1 运算器3.3.程序状态字寄存器程序状

15、态字寄存器 23*RS1、RS0与片内工作寄存器组的对应关系与片内工作寄存器组的对应关系 2.3.1 运算器片内四组工作寄存器的选择片内四组工作寄存器的选择24*4.B寄存器寄存器在在进进行行乘乘法法、除除法法运运算算时时,B寄寄存存器器作作为为ALU的的输输入入之之一一,与与ACC配配合合完完成成运运算算,并并存存放放运运算算结结果果。在在无无乘乘除除运运算算时时,它它可可作作为为内内部部RAM的的一一个个单单元。元。2.3.1 运算器寄存器寄存器25*2.3.2控制器控制器定时控制逻辑定时控制逻辑指令寄存器指令寄存器数据指针(数据指针(DPTR)程序计数器(程序计数器(PC)堆栈指针(堆栈

16、指针(SP)地址寄存器地址寄存器地址缓冲器地址缓冲器控制器的组成控制器的组成控制器控制器是是CPUCPU的大脑中枢,它包括:的大脑中枢,它包括:26*1.程序计数器程序计数器程程序序计计数数器器(ProgramCounter,PC)用用来来存存放放下下一一条条要要执执行行的的指指令令的的地地址址。当当按按照照PC所所指指的的地地址址从从存存储储器器中中取取出出一一条条指指令令后后,PC会会自自动动加加l,即即指向下一条指令。指向下一条指令。2.3.2 控制器程序计数器程序计数器27*2.堆栈指针堆栈指针堆堆栈栈指指针针(StackPointer,SP)是是 指指 在在 片片 内内 RAM的的l

17、28B(52子子系系列列为为256B)空空间间中中开开辟辟的的堆堆栈栈区区的的栈栈顶顶地地址址,并随时跟踪栈顶地址变化。并随时跟踪栈顶地址变化。堆堆栈栈是是按按先先进进后后出出的的原原则则存存取取数数据据的的,开开机机复复位位后后,单单片片机栈底地址为机栈底地址为07H。2.3.2 控制器堆栈指针堆栈指针28*3.指令寄存器和指令译码器指令寄存器和指令译码器指指令令寄寄存存器器和和指指令令译译码码器器(InstructionRegister,IR)的的功功能能是是对对将将要要执执行行的的指指令令进进行行存存储储和和译译码码。当当指指令令送送入入指指令令寄寄存存器器后后,对对该该指指令令进进行行

18、译译码码,即即把把指指令令转转变变成成所所需需的的电电平平信信号号,CPU根根据据译译码码输输出出的的电电平平信信号号,使使定定时时控控制制电电路路产产生生执执行行该该指指令令所所需需的的各各种种控控制制信信号号,以以便便计计算算机机能能正正确确地地执执行行指指令令所所要求的操作。要求的操作。2.3.2 控制器指令寄存与译码指令寄存与译码29*4.数据指针数据指针由由于于8051系系列列单单片片机机可可以以外外接接64KB的的数数据据存存储储器器和和I/O接接口口电电路路,故故在在单单片片机机内内设设置置了了l6位位的的数数据据指指针针寄寄存存器器(DataPointer,DPTR)。它它可可

19、以以对对64KB的的外外部部数数据据存存储储器器和和I/O进进行行寻寻址址,DPTR可可分分为为高高8位位数数据据指指针针寄寄存存器器(DPH)和和低低8位位数数据据指指针针寄存器(寄存器(DPL),地址分别为),地址分别为83H和和82H。2.3.2 控制器数据指针数据指针30*5.布尔(位)处理器布尔(位)处理器 在在80518051单片机系统中,与字节处理器相对单片机系统中,与字节处理器相对应,还特别设置应,还特别设置布尔(位)处理器布尔(位)处理器。CyCy:进位标志位:进位标志位位寻址寄存器位寻址寄存器位寻址的并行位寻址的并行I/OI/O口口位操作指令系统位操作指令系统2.3.2 控

20、制器位处理器位处理器31*2.4存储器存储器80518051在物理结构上有在物理结构上有4 4个存储空间:个存储空间:片内程序存储器片内程序存储器片外程序存储器片外程序存储器(ROM)(ROM)片内数据存储器片内数据存储器片外数据存储器片外数据存储器(RAM)(RAM)从用户使用的角度上,从用户使用的角度上,MSC-51MSC-51有有3 3个存储空间:个存储空间:片内外统一编址的片内外统一编址的64 KB64 KB程序存储器空间(用程序存储器空间(用1616位地址)位地址)256 B256 B片内数据存储器空间(用片内数据存储器空间(用8 8位地址)位地址)64KB64KB片外数据存储器地址

21、空间片外数据存储器地址空间5151单片机存储器布局单片机存储器布局32*存储器结构存储器结构2.4 存储器33*2.4.1程序存储器程序存储器程程序序存存储储器器用用于于存存放放编编好好的的程程序序或或表表格格常常数数。51子子系系列列片片内内有有4KB ROM,52子子系系列列片片内内有有8KBROM,二二者者片片外外地地址址线线均均为为16位位,最最多多可可扩展扩展64KBROM,片内片外统一编址。,片内片外统一编址。若若EA端端保保持持低低电电平平,则则所所有有取取指指令令操操作作均均在片外程序存储器中进行,在片外程序存储器中进行,0000H地址在片外。地址在片外。若若EA端端保保持持高

22、高电电平平,0000H地地址址在在片片内内,所所有取指令操作均在片内程序存储器中进行。有取指令操作均在片内程序存储器中进行。程序存储器的用途程序存储器的用途34*程序存储器程序存储器在程序存储器的开始部分,定义了一段具有特殊功在程序存储器的开始部分,定义了一段具有特殊功能的地址段,用作程序起始和各种中断的入口。能的地址段,用作程序起始和各种中断的入口。2.4.1 程序存储器程序入口地址程序入口地址35*2.4.2数据存储器数据存储器数数据据存存储储器器用用于于存存放放中中间间运运算算结结果果、数数据据暂暂存存和和缓冲、标志位等。缓冲、标志位等。MCS-51系系列列单单片片机机的的片片内内数数据

23、据存存储储器器除除RAM块块外,还有特殊功能寄存器(外,还有特殊功能寄存器(SFR)块。)块。片片内内数数据据存存储储器器的的容容量量很很小小,常常需需要要扩扩展展片片外外数数据据存存储储器器。MCS-51系系列列单单片片机机有有一一个个数数据据指指针针寄寄存存器器,可可用用于于寻寻址址程程序序存存储储器器或或数数据据存存储储器器单单元元,它它有有16位位,寻址范围可达寻址范围可达64KB。数数据据存存储储器器分分为为片片外外数数据据存存储储器器、片片内内数数据据存存储储器、特殊功能存储器,以下分别加以介绍。器、特殊功能存储器,以下分别加以介绍。数据存储器的用途数据存储器的用途36*2.4.2

24、数据存储器数据存储器片内通用数据存储器有:片内通用数据存储器有:工作寄存器区工作寄存器区位寻址区位寻址区数据缓冲区数据缓冲区片内数据存储器片内数据存储器3 3个区域个区域1.1.片内通用数据存储器片内通用数据存储器37*片内数据存储器片内数据存储器2.4.2 数据存储器工作寄工作寄存器区存器区位位寻寻址址区区数据缓数据缓冲器区冲器区38*(1)工作寄存器区)工作寄存器区工工作作寄寄存存器器也也称称为为通通用用寄寄存存器器,供供用用户户编编程程时时使使用用,用于临时存储用于临时存储8位数据信息。位数据信息。工工作作寄寄存存器器地地址址为为00H1FH的的32个个单单元元,并并分分成成4个个工工作

25、作寄寄存存器器组组,每每个个组组有有8个个工工作作寄寄存存器器,名名称称为为R0R7。工作寄存器和。工作寄存器和RAM地址的对应关系如表所示。地址的对应关系如表所示。2.4.2 数据存储器工作寄存器区工作寄存器区每个工作寄存器组都可被选为每个工作寄存器组都可被选为CPUCPU的当前工作寄存的当前工作寄存器,通过改变程序状态字寄存器(器,通过改变程序状态字寄存器(PSWPSW)中的)中的RS1RS1、RS0RS0两位来实现。两位来实现。39*(2)位寻址区)位寻址区内内部部RAM中中地地址址为为20H2FH的的16个个单单元元,CPU不不仅仅具具有有字字节节寻寻址址功功能能,而而且且还还具具有有

26、位位寻寻址址功功能能。这这16个个单单元元共共1282.4.2 数据存储器位寻址区位寻址区位,每一位,每一位都赋予位都赋予1 1个位地个位地址,址,位地位地址址范围是范围是00H00H7FH7FH。40*(3)数据缓冲区)数据缓冲区30H7FH是是数数据据缓缓冲冲区区,即即用用户户RAM区区,共共80个个单单元元。52子子系系列列片片内内RAM有有256个个单单元元,工工作作寄寄存存器器区区和和位位寻寻址址区区的的单单元元数数与与地地址址都都和和51子子系系列列的的一一致致,而数据缓冲区有而数据缓冲区有208个单元,地址范围是个单元,地址范围是30HFFH。2.4.2 数据存储器数据缓冲区数据

27、缓冲区41*(4)堆栈与堆栈指针)堆栈与堆栈指针堆堆栈栈是是一一种种执执行行“后后进进先先出出”算算法法的的数数据据结结构构。是是在在内内存存中中的的一一个个存存储储区区域域,数数据据一一个个一一个个顺顺序序地地存存入入(也也就就是是“压入压入pushpush”)这个区域之中。)这个区域之中。有有一一个个地地址址指指针针(堆堆栈栈指指针针)总总指指向向最最后后一一个个压压入入堆堆栈栈的的数数据据所所在在的的存存储储单单元元,存存放放这这个个地地址址指指针针的的寄寄存存器器就就叫叫做做堆栈指示器堆栈指示器。开开始始放放入入数数据据的的单单元元叫叫做做“栈栈底底”。数数据据一一个个一一个个地地存存

28、入入,这这个个过过程程叫叫做做“压压栈栈”。读读取取这这些些数数据据时时,按按照照堆堆栈栈指指示示器器中中的的地地址址读读取取数数据据,堆堆栈栈指指示示器器中中的的地地址址数数自自动动减减 1 1。这这个个过过程程叫叫做做“弹弹出出poppop”。如如此此就就实实现现了了后后进进先先出出的的原原则。则。2.4.2 数据存储器堆栈指针堆栈指针42*2.特殊功能寄存器特殊功能寄存器概念概念 特殊功能寄存器特殊功能寄存器(Special Function RegisterSpecial Function Register,SFRSFR)也称为专用寄存器,用于控制、管理单)也称为专用寄存器,用于控制、

29、管理单片机内部算术逻辑部件、并行片机内部算术逻辑部件、并行I/OI/O口、串行口、串行I/OI/O口、定时器口、定时器/计数器、中断系统等功能模块的工计数器、中断系统等功能模块的工作。作。使用使用 系统初始化时针对使用的功能部件编程设定。系统初始化时针对使用的功能部件编程设定。2.4.2 数据存储器特殊功能寄存器特殊功能寄存器43*表表2-6特殊功能寄存器地址对照表特殊功能寄存器地址对照表2.4.2 数据存储器特殊功能寄存器特殊功能寄存器44*PSW与与ACC(1 1)程序状态字寄存器(程序状态字寄存器(PSWPSW)PSWPSW是是8 8位寄存器,存放程序运行状态的标位寄存器,存放程序运行状

30、态的标志,字节地址为志,字节地址为D0HD0H。可以进行位寻址。可以进行位寻址。(2 2)累加器(累加器(ACCACC)ACCACC是是8 8位寄存器,用于算术或逻辑操作的位寄存器,用于算术或逻辑操作的输入和运算结果的输出。在指令系统中累加器输入和运算结果的输出。在指令系统中累加器的助记符为的助记符为A A,作为直接地址时助记符为,作为直接地址时助记符为ACCACC。2.4.2 数据存储器PSWPSW与与ACCACC45*(3)数据指针寄存器()数据指针寄存器(DPTR)16位的专用地址指针寄存器。可对外部存储器和位的专用地址指针寄存器。可对外部存储器和I/O口进行寻址,也可拆成高字节口进行寻

31、址,也可拆成高字节DPH和低字节和低字节DPL两两个独立的个独立的8位寄存器,在位寄存器,在CPU内分别占据内分别占据83H和和82H两个地址。两个地址。当对当对64KB外部数据存储器寻址时,外部数据存储器寻址时,DPTR可作为间可作为间接寻址寄存器使用:接寻址寄存器使用:从外部数据存储器取数从外部数据存储器取数MOVXA,DPTR送数到外部数据存储器送数到外部数据存储器MOVXDPTR,A2.4.2 数据存储器DPTRDPTR46*(4)B寄存器寄存器X*YX/Y在乘、除法运算中用在乘、除法运算中用B寄存器暂存数据。乘法寄存器暂存数据。乘法指令的两个操作数分别取自指令的两个操作数分别取自A和

32、和B,结果再存于,结果再存于B和和A中,即中,即A存低字节,存低字节,B存高字节。除法指令中存高字节。除法指令中被除数取自被除数取自A,除数取自,除数取自B,结果商存于,结果商存于A中,余中,余数存放在数存放在B中。在其他指令中,中。在其他指令中,B寄存器可作为寄存器可作为RAM中的一个单元使用。中的一个单元使用。B寄存器的地址为寄存器的地址为B0H。2.4.2 数据存储器B B寄存器寄存器47*(5)堆栈指针()堆栈指针(SP)堆栈是个特殊的存储区,主要功能是暂时存放数堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。它的特点据和地址,通常用来保护断点和现场。它的特

33、点是按照先进后出的原则存取数据,这里的进与出是按照先进后出的原则存取数据,这里的进与出是指进栈与出栈操作。是指进栈与出栈操作。2.4.2 数据存储器堆栈指针(堆栈指针(SPSP)与)与P0 P0 P3P3锁存器锁存器(6 6)端口)端口P0P0P3P3特殊功能寄存器特殊功能寄存器P0P0P3P3分别是分别是I/OI/O端口端口P0P0P3P3的锁存器。的锁存器。48*(7)定时器)定时器/计数器计数器TL0、TH0、TL1、TH1MSC-51单片机中有两个单片机中有两个16位的定时器位的定时器/计数器计数器T0和和T1,它们由,它们由4个个8位寄存器(位寄存器(TH0、TL0、TH1和和TL1

34、)组成。)组成。两个两个16位定时器位定时器/计数器是完全独立的,可以单计数器是完全独立的,可以单独对这独对这4个寄存器寻址。个寄存器寻址。2.4.2 数据存储器定时器定时器/计数器计数器49*(8)串行数据缓冲器()串行数据缓冲器(SBUF)功能:功能:存放需要发送和接收的数据。存放需要发送和接收的数据。组成:组成:由两个独立的寄存器构成,一个是发送缓冲器,由两个独立的寄存器构成,一个是发送缓冲器,一个是接收缓冲器,但寄存器名称统一为一个是接收缓冲器,但寄存器名称统一为SUBF。使用:发送指令使用:发送指令MOVSUBF,A;使用发送缓冲器。;使用发送缓冲器。接收指令接收指令MOVA,SUB

35、F;使用接收缓冲器。;使用接收缓冲器。2.4.2 数据存储器串行数据缓冲器串行数据缓冲器50*(9)控制寄存器)控制寄存器控制寄存器有控制寄存器有5种。种。中断优先级控制寄存器(中断优先级控制寄存器(IP)中断允许控制寄存器(中断允许控制寄存器(IE)定时器定时器/计数器控制寄存器(计数器控制寄存器(TCON)串行口控制寄存器(串行口控制寄存器(SCON)电源控制寄存器(电源控制寄存器(PCON)它们将在后续章节中详细介绍。它们将在后续章节中详细介绍。2.4.2 数据存储器控制寄存器控制寄存器51*可位寻址的位地址分布可位寻址的位地址分布MCS-51可直接位寻址的空间有可直接位寻址的空间有21

36、6位。其中内位。其中内部部RAM的的20H2FH这这16个单元具有个单元具有128个位地址个位地址空间,位地址为空间,位地址为00H7FH;另一部分位地址在特殊功能寄存器中,这些特另一部分位地址在特殊功能寄存器中,这些特殊功能寄存器是一些能被殊功能寄存器是一些能被8整除的字节单元,地址整除的字节单元,地址在在80HFFH区间,只用了区间,只用了11个字节,它们都可进个字节,它们都可进行位寻址,共计行位寻址,共计88位。如表位。如表2-8所示。所示。2.4.2 数据存储器可位寻址的位地址分布可位寻址的位地址分布52*可可位位寻寻址址的的位位地地址址分分布布2.4.2 数据存储器可位寻址的位地址分

37、布可位寻址的位地址分布53*位操作与字节操作位操作与字节操作尽管位地址和字节地址有重叠,读尽管位地址和字节地址有重叠,读/写位寻址写位寻址空间时也采用空间时也采用MOV指令形式,但指令形式,但所有的位操作指令所有的位操作指令都是以位地址为一个操作数,以进位位(都是以位地址为一个操作数,以进位位(Cy)为另)为另一个操作数。一个操作数。例如,读位地址例如,读位地址90H,用指令:,用指令:MOVC,90H或或MOVC,P1.0写位地址写位地址90H,用指令:,用指令:MOV90H,C或或MOVP1.0,C2.4.2 数据存储器位操作与字节操作位操作与字节操作54*2.5并行输入并行输入/输出(输

38、出(I/O)端口)端口接口的主要功能包括:接口的主要功能包括:缓冲与锁存数据、地址译码、信息格式转换、传递缓冲与锁存数据、地址译码、信息格式转换、传递状态(外设状态)和发布命令等。状态(外设状态)和发布命令等。I/O接口有:接口有:并行接口、串行接口、定时并行接口、串行接口、定时/计数器、计数器、A/D、D/A等。等。根据外设的不同情况和要求选择不同的接口。根据外设的不同情况和要求选择不同的接口。本节介绍本节介绍MCS-51单片机的并行输入单片机的并行输入/输出接口。输出接口。55*并行输入并行输入/输出接口输出接口MCS-51单片机有单片机有P0、P1、P2、P3四个四个8位双向并行位双向并

39、行I/O口,每个端口可以按字节输入口,每个端口可以按字节输入或输出,也可以按位进行输入或输出,或输出,也可以按位进行输入或输出,4个并个并行口共有行口共有32根端口线,用做位控制十分方便。根端口线,用做位控制十分方便。并行并行I/O口具有如下特点。口具有如下特点。2.5 并行输入/输出(I/O)端口56*并行并行I/O口特点口特点(1)4个个并并行行I/O口口都都是是双双向向的的。P0口口为为漏漏极极开开路路驱驱动动;P1、P2、P3口口均均具具有有内内部部上上拉拉电电阻阻驱驱动,它们有时称为准双向口。动,它们有时称为准双向口。(2)32根根端端口口线线都都可可用用做做输输入入或或输输出出,还

40、还可可进进行行位操作。位操作。(3)当当并并行行I/O口口作作为为输输入入时时,该该口口的的锁锁存存器器必必须须先先写写入入“1”,这这是是一一个个重重要要条条件件。否否则则,该该口不能读入正确数据。口不能读入正确数据。2.5 并行输入/输出(I/O)端口57*2.5.1P1口口MCS-51单片机的单片机的Pl口只有一种功能,即口只有一种功能,即通用输入通用输入/输出接口输出接口。P1口每位的内部结构如图口每位的内部结构如图2-5所示。所示。图图2-5 P12-5 P1口每位的内部结构示意图口每位的内部结构示意图58*1.输出方式输出方式当当CPU执行写执行写P1口的指令口的指令(如(如MOV

41、Pl,#data)时,)时,P1口工作于输口工作于输出方式,此时出方式,此时数据数据data经内经内部总线送入锁部总线送入锁存器锁存。存器锁存。如果某位的数据为如果某位的数据为1 1,则该位锁存器输出,则该位锁存器输出端端Q=1Q=1,而使,而使T T截止,从而在引脚截止,从而在引脚P1.xP1.x上出现高电平,即输出数据上出现高电平,即输出数据“1”1”。反之,。反之,如果数据为如果数据为0 0,则,则Q=0Q=0,而使,而使T T导通,导通,P1.xP1.x上出现低电平,即输出数据上出现低电平,即输出数据“0”0”。2.5.1 P1口P1P1口工作原理口工作原理59*2.输入方式输入方式当

42、当CPU执行读执行读P1口的指令(如口的指令(如MOVA,P1)时,)时,P1口工作于输入方式。口工作于输入方式。2.5.1 P1口P1P1口工作原理口工作原理60*2.5.2P2口口P2口有两种用途:口有两种用途:通用通用I/O口或高口或高8位地址总线。位地址总线。P2P2口内部结构口内部结构图图2-6 P22-6 P2口每位的内部结构示意图口每位的内部结构示意图通用通用I/OI/O与地址线的选择可根据指令由控制信号完成。与地址线的选择可根据指令由控制信号完成。61*MOVXA,Ri或或MOVXRi,A此时,此时,Ri寄存器提供的是寄存器提供的是8位地址,由位地址,由P0口送出,不口送出,不

43、需要需要P2口,口,P2口引脚原有的数据在访问片外口引脚原有的数据在访问片外RAM期期间不受影响,故间不受影响,故P2口仍可用做通用口仍可用做通用I/O口。口。当片外当片外RAM容量较大需要由容量较大需要由P2口和口和P0口送出口送出16位地位地址时,址时,P2口不再用做通用口不再用做通用I/O口。口。P2口用作地址线口用作地址线/通用通用I/O口口2.5.2 P2口P2P2口用作地址线口用作地址线当当P2P2口作为准双向通用口作为准双向通用I/OI/O口使用时,其功能与口使用时,其功能与P1P1口相同,工作方式、负载能力口相同,工作方式、负载能力也相同。也相同。P2P2口用作通用口用作通用I

44、/OI/O口口62*2.5.3P3口口P3口是双功能口,默认为第一功能(通用口是双功能口,默认为第一功能(通用I/O),),通过编程可设定为第二功能。通过编程可设定为第二功能。通用通用I/OI/O口状态口状态图图2-7 P32-7 P3口每位的内部结构示意图口每位的内部结构示意图1.通用I/O口状态 P3口用做准双向通用I/O口时,其功能与P1口相同。63*2.第二功能第二功能状态状态2.5.3 P3口第二功能状态第二功能状态P3P3口作为第二功能操作时,其锁存器口作为第二功能操作时,其锁存器QQ端必须为高电平端必须为高电平(可用输出指令向端口写(可用输出指令向端口写1 1,以使,以使Q=1Q

45、=1。单片机复位时,。单片机复位时,锁存器输出端为高电平),否则无法输入或输出第二功能锁存器输出端为高电平),否则无法输入或输出第二功能信号。信号。P3P3口第二功能中的输入信号经三态门口第二功能中的输入信号经三态门2 2输入,可直输入,可直接进入内部总线。接进入内部总线。P3P3口第二功能定义如表口第二功能定义如表2-82-8所示。所示。64*2.5.3 P3口第二功能状态第二功能状态表表2-8 P32-8 P3口第二功能口第二功能65*P3口使用口使用P3口口的的每每一一位位都都可可独独立立地地定定义义为为第第一一功功能能I/O或或第第二二功功能能使使用用。P3的的第第二二功功能能涉涉及及

46、到到串串行行口口、外外部部中中断断、定定时时器器,与与特特殊殊功功能能寄寄存存器器有有关关,它它们们的的结结构构、功功能能等等在在后后面面章章节节中中再作进一步介绍。再作进一步介绍。2.5.3 P3口P3P3口使用口使用P3P3口的地址为口的地址为B0HB0H,对应,对应P3.0P3.7P3.0P3.7的的位地址为位地址为B0HB7HB0HB7H。66*2.5.4P0口口地址地址/数据分时复用总线数据分时复用总线通用通用I/O口口P0P0口的功能口的功能图图2-8 P02-8 P0口每位的内部结构示意图口每位的内部结构示意图P0P0口有两种功能口有两种功能P0P0口内部无上拉电阻,作为口内部无

47、上拉电阻,作为I/OI/O口时,必须外接上拉电阻。口时,必须外接上拉电阻。67*地址地址/数据总线状态数据总线状态2.5.4 P0口P0P0口作为地址口作为地址/数据总线的工作原理(输出)数据总线的工作原理(输出)P0P0口作为输入端口的工作原理(输入)口作为输入端口的工作原理(输入)P0P0口作为通用口作为通用I/OI/O口时的工作原理口时的工作原理图图2-8 P02-8 P0口每位的内部结构示意图口每位的内部结构示意图68*n当当CPU向向端端口口输输出出数数据据时时,写写脉脉冲冲加加在在锁锁存存器器的的时时钟钟端端CL上上。由由于于输输出出驱驱动动级级是是漏漏极极开开路路电电路路(因因V

48、T0截截止止),在在作作为为I/O口使用时应外接口使用时应外接10K的的上拉电阻上拉电阻。n当当CPU从端口读数据时,端口中两个三态门用于读操作。从端口读数据时,端口中两个三态门用于读操作。P0口读口读/写数据写数据2.5.4 P0口图图2-8 P02-8 P0口每位的内部结构示意图口每位的内部结构示意图69*P0口读口读-修改修改-写写当当执执行行“读读-修修改改-写写”指指令令(即即读读端端口口信信息息,在在片片内内加加以以运运算算修修改改后后,再再输输出出到到该该端端口口的的某某些些指指令令如如:ANLP0,A指指令令),即即是是读读锁锁存存器器Q的的数数据据。究究竟竟是是读读引引脚脚还

49、还是是读读锁锁存存器器,CPU内内部部会会自自行判断是发读引脚脉冲还是读锁存器脉冲,读者不必在意。行判断是发读引脚脉冲还是读锁存器脉冲,读者不必在意。2.5.4 P0口P0P0口的读口的读-修改修改-写操作写操作70*当当作作输输入入端端口口使使用用时时,应应先先对对该该口口写写入入“1”以以使使场场效效应应管管VT1截截止止,再再进进行行读读入入操操作作,以以防防场场效效应应管管处于导通状态而使引脚箝位到零,引起误读。处于导通状态而使引脚箝位到零,引起误读。读引脚时注意读引脚时注意2.5.4 P0口P0P0口用作输入端时应注意口用作输入端时应注意71*4个并行口使用注意事项个并行口使用注意事

50、项(1)如果单片机内部有程序存贮器,不需要扩展外部存贮)如果单片机内部有程序存贮器,不需要扩展外部存贮器和器和I/O接口,单片机的接口,单片机的4个口均可作为个口均可作为I/O口使用;口使用;(2)4个口在作为输入口使用时,均应先对其写个口在作为输入口使用时,均应先对其写“1”,以,以避免误读;避免误读;(3)P0口作为口作为I/O口使用时应外接口使用时应外接10K的上拉电阻,其它口的上拉电阻,其它口则可不必;则可不必;(4)P2口某几根口线作地址使用时,剩下的口线不能作为口某几根口线作地址使用时,剩下的口线不能作为I/O口线使用;口线使用;(5)P3口的某些口线作第二功能时,剩下的口线可以单

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁