




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2023/7/23MCS-51单片机原理与应用1
从应用的角度介绍单片机的体系结构,了解单片机内部功能模块框图、CPU时序,熟悉时钟电路及复位电路,掌握单片机引脚及其外特性以及几个重要SFR的使用,对单片机的存储器分配要非常清晰。第2章MCS-51单片机硬件结构2023/7/23MCS-51单片机原理与应用2
MCS-51是Intel公司1980年推出的8位高性能单片机系列,它们的外部引脚和指令系统完全兼容,差别只在于片内程序存储器的不同。
8031无片内ROM,8051有4KB片内掩膜ROM,8751有4KB片内EPROM。选用新一代80C51中的FLASH版本AT89系列芯片。2.1单片机的结构2023/7/23MCS-51单片机原理与应用3
MCS-51系列芯片及制造工艺如下:2023/7/23MCS-51单片机原理与应用4
MCS-51内部主要有如下五部分组成:CPU结构、存储器结构、I/O端口、定时器/计数器、中断系统。2023/7/23MCS-51单片机原理与应用5
MCS-51内部资源有:(1)微处理器(CPU);(2)数据存储器(RAM);(3)程序存储器(4KBFlashROM);(4)4个8位可编程并行I/O口(P0口、P1口、P2口、 P3口);(5)1个全双工串行口;(6)2个16位定时器/计数器;(7)中断系统;(8)特殊功能寄存器(SFR)。2023/7/23MCS-51单片机原理与应用62.1.1单片机内部结构框图一、CPU结构
MCS-51内部有如下三部分电路组成:ALU、定时控制部件、专用寄存器组。(一)算术逻辑单元ALU
ALU是一个性能极强的运算器,可以进行四则运算,也可以进行逻辑运算等功能。2023/7/23MCS-51单片机原理与应用7(二)定时控制部件MCS-51定时控制部件有如下三部分组成
1、指令寄存器IR
存放当前要执行指令的操作码
2、振荡器OSC
输入端---XTAT1和XTAT2接晶振振荡器输出。输入端---输出系列方波
3、定时控制逻辑
根据IR中内容结合OSC输出,产生节拍脉冲序列,完成不同指令的运行。2023/7/23MCS-51单片机原理与应用8
OSC振荡器产生的矩形时钟脉冲序列,其频率是单片机的重要性能指标之一,时钟频率越高,单片机控制器的控制节拍就越快,运算速度就越快。
因此不同型号的单片机需要的时钟频率也是不相同的。(三)专用寄存器组—特殊功能寄存器
专用寄存器组主要用来指示当前要执行指令的内存地址、存放操作数和指示指令执行后的状态。2023/7/23MCS-51单片机原理与应用9
专用寄存器组主要包括程序计数器PC、累加器A、程序状态字PSW、堆栈指针SP、数据指针DPTR和通用寄存器B等。二、存储器
程序存储器:
4KB片内ROM;
数据存储器:128B片内RAM;
21个片内特殊功能寄存器SFR。 可寻址外部程序存储器和数据存储器空间各为64KB。2023/7/23MCS-51单片机原理与应用10三、I/O端口
I/O端口是MCS-51对外部实现控制和信息交换的必经之路,I/O端口有串行和并行之分。
MCS-51具有4个8位并行I/O口P0~P3,作为输入/输出;
1个全双工串行口UART,用于串行通信。
串行一次传送1位二进制信息。
并行一次传送8为二进制信息。2023/7/23MCS-51单片机原理与应用11四、定时器/计数器
MCS-51内部有2个16位定时/计数器分别为T0和T1,可用作定时或计数。五、中断系统
具有5个中断源:2个外中断INT0和INTl,3个内中断:即2个定时/计数中断,一个串口中断。
具有2个中断优先级嵌套结构。2023/7/23MCS-51单片机原理与应用122023/7/23MCS-51单片机原理与应用13
CPU与各部件间通过内部总线相连。三总线结构(地址总线AB,数据总线DB,控制总线CB)MCS-51共有如下两种封装1、双列直插式封装(HMOS型器件)2.1.2单片机引脚及其外特性2023/7/23MCS-51单片机原理与应用142、方形封装(CHMOS型器件)2023/7/23MCS-51单片机原理与应用158051是40引脚双列直插型封装。将其分为3部分来说明。(1)主电源与时钟引脚
VCC:电源端,+5V;
VSS:接地端;
XTAL1:外接晶振端,
片内反相放大器输入端;
XTAL2:外接晶振端,
片内反相放大器输出端;2023/7/23MCS-51单片机原理与应用16(2)控制引脚
RST/VPD:复位信号输入端,高电平有效。晶振工作时,RST引脚保持2个机器周期以上高电平将使单片机复位。第二功能VPD,备用电源的输入端。
:程序存储允许输出端,低电平有效。访问片外程序存储器时,此端口定时输出负脉冲作为读选通信号。
ALE/
:地址锁存允许信号输出端。访问片外存储器时,ALE作为锁存低8位地址的控制信号。
2023/7/23MCS-51单片机原理与应用17
不访问片外存储器时,ALE引脚周期性地以1/6振荡器频率向外输出正脉冲信号。
/Vpp:外部程序存储器地址允许输入端/固化编程电压输入端。
当引脚接高电平时,CPU只访问片内程序存储器,但当PC值超过0FFFH时,将自动转向访问片外程序存储器。
当
引脚接低电平时,CPU只访问片外程序存储器。2023/7/23MCS-51单片机原理与应用18
无片内ROM的8031系统,需外扩EPROM,该引脚须接地。
(3)I/O引脚
P0口:漏极开路8位双向I/O口。负载驱动能力为每位8个LS型TTL。
P1~P3口:带内部上拉电阻的8位准双向I/O口。负载驱动能力为每位4个LS型TTL。P3口每个引脚还具有第二功能,在图中是用括号括起来的。2023/7/23MCS-51单片机原理与应用192.2单片机时钟电路及CPU时序2.2.1单片机时钟电路 单片机是一个按照时钟节拍工作的复杂数字电路。图(a)是采用内部时钟的电路。C1和C2:30pF±10pF,晶振频率:1.2~12MHz。常用为6MHz或12MHz。2023/7/23MCS-51单片机原理与应用202.2.2CPU时序
CPU在执行指令时,是将一条指令分解为一系列特定的微操作,这些微操作所对应的脉冲信号在时间上的先后次序称为时序。1.描述时序的单位(1)振荡周期(又叫节拍,用P表示)
为单片机提供定时信号的振荡源的周期。如外接晶振频率为
,振荡周期就为其倒数,即1/
。2023/7/23MCS-51单片机原理与应用21(2)状态周期(状态用S表示)
振荡脉冲经过片内时钟电路二分频后就是单片机的时钟信号,该时钟信号的周期称为状态周期。
1个状态包含2个节拍,前半周期对应的节拍表示为S1P1,后半周期对应的节拍表示为S1P2。(3)机器周期
指令执行过程可划分为几个基本操作,如取指令、读存储器、写存储器等,完成一个基本操作所需的时间称为机器周期。2023/7/23MCS-51单片机原理与应用22
一个机器周期由6个状态,或者12个振荡周期组成,即12/
。一个机器周期中的12个振荡周期可依次表示为S1P1、S1P2、S2P1、S2P2、…、S6P1、S6P2。(4)指令周期
执行一条指令所占用的全部时间称为指令周期。 通常指令周期由1~4个机器周期组成,乘除法指令执行时间最长,为4个机器周期。其余均为单周期和双周期指令。2023/7/23MCS-51单片机原理与应用23
例2.1选用=6MHz晶振,求振荡周期、状态周期、机器周期和最长指令周期。解:振荡周期=1/=1/6μs,状态周期=2/=1/3μs,机器周期=12/=2μs,最长指令周期为4个机器周期,即8μs。
在MCS-51指令系统中,指令由单字节、双字节和三字节组成。2023/7/23MCS-51单片机原理与应用24
从指令的执行速度来看,单字节和双字节指令一般为1~2机器周期,而三字节指令都是2机器周期,只有乘、除指令占4个机器周期。
MCS-指令可分为六类:1)单字节单周期指令4)双字节单周期指令2)单字节双周期指令 5)双字节双周期指令3)单字节四周期指令6)三字节双周期指令2023/7/23MCS-51单片机原理与应用25
MCS-51执行一条指令分为取指和执行两个阶段。
取指令----根据PC取指令码
执行指令-根据OP码产生微操作序列,完成指令2.MCS-51取指/执行时序
MCS-51取指/执行时序如图3.4所示,也可以通过示波器观察XTAL2和ALE端信号。在每个机器周期内ALE引脚上的信号两次有效,第1次出现在S1P2和S2P1期间,第2次出现在S4P2和S5P1期间。2023/7/23MCS-51单片机原理与应用262023/7/23MCS-51单片机原理与应用272.3.1复位操作的主要功能
复位是单片机的初始化,复位后CPU和系统中的其它功能部件都处在一个初始状态,并从此状态开始工作2.3单片机复位2023/7/23MCS-51单片机原理与应用28
复位后不会改变片内RAM中低128B的内容,但将使特殊功能寄存器SFR初始化。
复位后,除了堆栈指针SP为07H,
IP、IE、SBUF和PCON有不定状态出现,以及P0~P3输出高电平而设置为输入外,其余专用寄存器都清0。2023/7/23MCS-51单片机原理与应用29
如程序指针PC清零,将使单片机从复位入口0000H单元开始执行程序。如果单片机运行时出错或进入死循环,可以按复位按钮重新启动。
2.3.2复位电路
单片机的外部复位方式有上电复位和手动复位两种,要使单片机复位,必须使RST引脚加上两个机器周期以上的高电平,也就是此电路中时间常数RC必须满足:RC>2×12/。2023/7/23MCS-51单片机原理与应用30
一般取RC值在10ms以上,如图中的RC=22ms,完全能满足复位条件。2023/7/23MCS-51单片机原理与应用31MCS-51单片机的工作方式
单片机的工作方式是进行系统设计的基础,包括:复位方式、程序执行方式、节电方式以及编程和校验方式。一、复位方式
通过复位电路来实现,从而使CPU以及其他的功能部件处于一个确定的初始状态,并从这个状态开始工作。2023/7/23MCS-51单片机原理与应用32二、程序执行方式
程序执行方式是单片机的基本工作方式,通常可分为单步执行和连续执行两种。
单步执行方式是指单片机在某个按键的控制下逐条执行用户程序中指令的方式,即按一次单步执行键就执行一条用户指令。常用于用户程序的调试。
这种方式利用单片机外部中断功能来实现的。例如:LOOP1:JNBP3.2,LOOP1;P3.2=0不往下执行
LOOP2:JBP3.2,LOOP2;P3.2=1不往下执行2023/7/23MCS-51单片机原理与应用33
连续执行方式是指所有单片机都需要的一种工作方式,被执行的程序放在ROM中,复位后从0000H开始运行,所以0000H处常放一条转移指令,以便转移到用户程序执行。三、节电工作方式 节电方式是一种降低功耗的方式,只有CMOS器件才有这种方式。由电源控制寄存器PCON控制。2023/7/23MCS-51单片机原理与应用34
节电工作方式有空闲方式和掉电方式两种。1)空闲方式
状态:
CPU不工作,片内功能保持(片内RAM,SFR内容)不变;中断、定时器、串行口等电路正常工作。
进入方法: CPU执行如下指令可以进入:MOV PCON ,#01H
退出方法:1、被允许的中断源发出中断请求。
2、硬件复位。2023/7/23MCS-51单片机原理与应用352)掉电方式
状态:
时钟停振,片内RAM、SFR内容不变;功耗:电流5~50微安,电压Vcc降为3V。
中断、定时器、串行口电路不工作。
进入方法:
CPU执行如下指令可以进入:MOV PCON ,#02H
退出方法:1、先使Vcc=5V。
2、硬件复位。2023/7/23MCS-51单片机原理与应用36
从使用的角度看有3个存储空间,如图所示。程序存储器:
片内外统一编址64KB数据存储器:
片外64KB片内数据存储器:
256B2.4单片机的存储器分配2023/7/23MCS-51单片机原理与应用372.4.1程序存储器地址空间
程序存储器用于存放用户的应用程序,使用时是只读的。8051程序存储空间片内外统一编址,都用MOVC指令,程序存储器地址分配如下:片内4KB: 0000H~0FFFH片外扩展64KB: 0000H~FFFFH
如何区分低4KB重叠的地址?
当
接高电平时,PC在0000H~0FFFH低4KB范围内执行片内ROM中程序,只有当指令地址超过0FFFH后,才自动转向片外ROM取指。2023/7/23MCS-51单片机原理与应用38
当
接低电平时,PC在0000H~FFFFH范围都执行片外ROM中程序。8031片内不带ROM,所以使用时必须使
接地,以便能够从外部扩展ROM中取指令。
程序存储器中有些固定的单元是留给系统用的,专门用于存放复位和中断处理程序的入口地址,不要与这些入口地址冲突。2023/7/23MCS-51单片机原理与应用390000H:复位入口,系统复位后PC指向0000H,程序就从0000H开始执行。0003H:外中断0入口地址;000BH:定时器T0中断入口地址;0013H:外中断1入口地址;001BH:定时器T1中断入口地址;0023H:串口中断入口地址;2023/7/23MCS-51单片机原理与应用40
MCS-51数据存储器用于存放程序执行的中间结果、数据缓冲等,使用时它们均可读写。片外RAM
64KB:0000H~FFFFH片内RAM256B分为2部分:
低128B用户RAM区:00H~7FH
特殊功能寄存器区SFR:80H~FFH2.4.2数据存储器地址空间2023/7/23MCS-51单片机原理与应用418052多了第3部分,与80H~FFH空间重叠的高128B。 片内RAM低128B又可分为工作寄存器区、位寻址区和用户数据区3部分。2023/7/23MCS-51单片机原理与应用42(1)工作寄存器区
4个工作寄存器组:地址00H~1FH,每组有8个工作寄存器,都以R0~R7命名。
通过对程序状态字寄存器PSW中RS1、RS0这2位的4个组合来指定哪一组。
其它未选中的工作寄存器组,可用做一般RAM单元。CPU复位后,选中的是第0组工作寄存器。2023/7/23MCS-51单片机原理与应用43
工作寄存器区的寻址方式最灵活,存取速度也最快。(2)位寻址区 位寻址区16个字节128位,每位都对应一个地址。
字节地址:
20H~2FH
位地址:
00H~7FHCPU能直接寻址这些位,执行置位、清零等位操作。2023/7/23MCS-51单片机原理与应用44
MCS-51布尔处理的存储空间指的就是位寻址区。这些单元也可作为一般RAM使用,进行字节操作。 如何区分00H~7FH是位地址还是字节地址呢?
观察是否使用了位操作指令来区分,位操作指令中使用的是一位累加器C,而不是字节操作指令中8位累加器A。2023/7/23MCS-51单片机原理与应用453.4.2数据存储器地址空间42023/7/23MCS-51单片机原理与应用46(3)用户RAM区
用户RAM区:30H~7FH,是供用户随意使用,如用于建立堆栈、数据缓冲和数据暂存等用途。
30H~7FH可以采用直接寻址和寄存器间接寻址;8052的80H~FFH用户RAM,只能通过寄存器间接寻址来访问。2023/7/23MCS-51单片机原理与应用472.4.3特殊功能寄存器
特殊功能寄存器SFR:80H~FFH,用来对单片机各功能模块进行控制和管理。
21个SFR,其功能已作了专门的规定,用户不能修改其结构,用户也不能访问除这21个以外的地址。 访问特殊功能寄存器仅允许使用直接寻址,但对表中字节地址的末位为“0”或“8”的SFR还允许使用位寻址。2023/7/23MCS-51单片机原理与应用482023/7/23MCS-51单片机原理与应用493.4.2数据存储器地址空间82023/7/23MCS-51单片机原理与应用50(1)程序计数器PC(ProgramCounter)
程序计数器在物理上是独立的,它不属于SFR。
PC是一个16位的计数器,寻址范围为64KB。PC用于存放下一条要执行的指令地址,能自动加1,实现程序的顺序执行。
PC本身没有地址,无法对它进行访问,但可通过控制转移指令改变其内容,实现PC指向哪里,程序就执行到哪里。2023/7/23MCS-51单片机原理与应用51(2)累加器ACC(Accumulator)
累加器是8位寄存器,它既可用于存放操作数,也可存放运算的中间结果。 大部分指令中的一个操作数多取自累加器,大部分算术逻辑运算都是通过累加器进行,运算结果也再存放入累加器中,累加器由此而得名。 在指令中用A作为累加器ACC的助记符。2023/7/23MCS-51单片机原理与应用52(3)B寄存器
B寄存器也是8位寄存器,主要用于乘除法指令中。B也可作为一般通用寄存器用。(4)数据指针DPTR(Datapointer) 数据指针为用户可操作的唯一的16位寄存器。程序中既可按16位寄存器使用,也可以分为高8位寄存器DPH和低8位寄存器DPL来用。2023/7/23MCS-51单片机原理与应用53用于访问片外RAM时:MOVXA,@DPTR
;读取外RAM单元数据MOVX@DPTR,A
;数据存入外RAM单元用于访问程序存储器时:MOVCA,@A+DPTR
;读取ROM单元数据2023/7/23MCS-51单片机原理与应用54(5)堆栈指针SP(StackPointer)
堆栈:按照先进后出的原则进行存取的一段存储器区域。最先入栈的数据放在堆栈的最底部,而最后入栈的数据放在栈的顶部,因此,最后入栈的数据出栈时则是最先的。
堆栈指示器SP(称堆栈指针):在MCS-51片内RAM任何一个连续区间中开辟一个区域作为堆栈区,并用一个专用的寄存器来指示堆栈中数据存取的位置2023/7/23MCS-51单片机原理与应用55
这个寄存器就叫堆栈指针SP,它是一个8位地址寄存器,总是指向堆栈中栈顶的位置。栈顶:堆栈中最上面单元。栈底:堆栈指针的初值称为堆栈的栈底。
堆栈操作都是对栈顶进行的。进栈:数据写入堆栈,或称压入,使用PUSH指令;2023/7/23MCS-51单片机原理与应用56
图(b)为数据压入示意,先执行SP←SP+1,使SP指向69H,后执行数据A压入;
出栈:从堆栈中取出数据,或称弹出,使用POP指令。图(c)为数据弹出示意,先执行SP←SP-1,使SP指向68H,后执行数据A弹出。2023/7/23MCS-51单片机原理与应用57
堆栈设立是为了中断响应或子程序调用时,保护断点和保护现场。(6)程序状态字PSW(ProgramStatusWord)
程序状态字PSW是一个8位寄存器,用于存放程序运行的状态信息,有些位可由软件设置,有些位则由硬件运行时自动设置。2023/7/23MCS-51单片机原理与应用58
PSW的各位定义如表所示,其中PSW.1是保留位,未使用,其余各位定义如下:①CY(PSW.7)进位标志
当加减结果产生进位或借位时,由硬件自动将CY置1,否则清0;在位操作中作位累加器C使用。②AC(PSW.6)辅助进位标志2023/7/23MCS-51单片机原理与应用59
加减运算中当低4位向高4位进位或借位时,AC由硬件置位,否则清0。在十进制调整中也要用到AC位状态。③F0(PSW.5)用户标志④RSl和RS0(PSW.4,PSW.3)工作寄存器组选择位用于设定当前工作寄存器的组号,上电复位后RS1、RS0为00B,CPU选择第0组为当前工作寄存器组。切换当前工作寄存器组到1区指令:MOV
PSW,#00001000B,即08H~0FH的R0~R7。2023/7/23MCS-51单片机原理与应用60⑤OV(PSW.2)溢出标志位
在有符数加减运算中,OV=1表示加减运算结果超出了累加器A所能表示的有符数范围(-128~+127),
产生了溢出,运算结果是错误的;OV=0表示运算正确。 在乘法运算中,OV=1表示乘积超过255,即乘积分别在B与A中;否则,OV=0,表示乘积只在A中。 在除法运算中,OV=1表示除数为0,除法不能进行;否则,OV=0,除数不为0,除法可正常进行。2023/7/23MCS-51单片机原理与应用61⑥P(PSW.0)奇偶标志位
表明累加器A中内容的奇偶性,每个指令周期都由硬件来置位或清零。如果A中有奇数个“1”,则P=1,否则,P=0。凡是改变累加器A中内容的指令均会影响P标志。 例:指出表中各指令分别属于MCS-51哪个存储空间?指出所属存储空间本身的寻址范围为多大?2023/7/23MCS-51单片机原理与应用62
思路:根据各指令的助词符和操作数标识,可得到各指令所属的存储空间和所属存储空间的寻址范围。2023/7/23MCS-51单片机原理与应用63一、I/O接口的作用1、I/O接口的地位
I/O接口处于外设和CPU间,是CPU和外设间的桥梁和通道2.5单片机的并行口2023/7/23MCS-51单片机原理与应用64 2、I/O接口的作用1.实现CPU和不同外设的速度匹配
大多数的外设的速度很慢,无法和µs量级的单片机速度相比。
传送的方式有同步、异步、中断和DMA方式
要求:必须实现CPU与外设速度匹配2.改变数据传送方式
并行传送---串行传送 串行传送---并行传送2023/7/23MCS-51单片机原理与应用653.改变信号性质和信号电平
1)改变信号性质
2)改变信号电平二、外部设备的编址
首先搞清楚I/O接口(Interface)和I/O端口(Port)的概念。
I/O端口:简称I/O口,指具有端口地址的寄存器或缓冲器。2023/7/23MCS-51单片机原理与应用66
I/O接口:是指单片机与外设间的I/O接口芯片,一个接口中可以有几个I/O端口。例如:Intel8255、Intel8155一个I/O接口芯片可以有多个I/O端口,分为:
(1)数据口(2)命令口(3)状态口I/O端口编址是给所有I/O接口中的寄存器编址。I/O端口编址两种方式:独立编址与统一编址。2023/7/23MCS-51单片机原理与应用67
1.独立编址
I/O寄存器地址空间和存储器地址空间分开编址,不占存储器地址,但需专门读写I/O的指令和控制信号。
2.统一编址
I/O寄存器与数据存储器单元同等对待,作为存储单元统一编址。2023/7/23MCS-51单片机原理与应用68
不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O操作,简单、方便且功能强。
每一接口芯片中的一个功能寄存器(端口)的地址,就相当于一个RAM单元。2023/7/23MCS-51单片机原理与应用69
优点:1.不需要专门的指令,访问外部存储器的指令适用于I/O口的访问,增强了CPU对外部端口的处理能力。2.外设端口地址安排灵活,数量不受限制三、I/O数据的四种传送方式
为实现和不同的外设的速度匹配,I/O接口必须根据不同外设选择恰当的I/O数据传送方式。
I/O数据传送的几种传送方式是:(1)同步传送(2)异步传送(3)中断传送(4)DMA传送2023/7/23MCS-51单片机原理与应用701.同步传送方式--无条件传送
1、当外设速度和单片机的速度相比拟时,常采用同步传送方式,最典型的同步传送就是单片机和外部数据存储器之间的数据传送。
2、外设速度非常慢,CPU总认为外设处于准备好状态2023/7/23MCS-51单片机原理与应用712.异步传送--查询传送--条件传送查询外设“准备好”后,再进行数据传送优点:通用性好,硬件连线和查询程序十分简单缺点:效率不高。为提高效率,通常采用中断传送方式2023/7/23MCS-51单片机原理与应用723.中断传送方式
外设准备好后,发中断请求,单片机进入与外设数据传送的中断服务程序,进行数据的传送
中断服务完成后又返回主程序继续执行。工作效率高
CPU可以和外设并行工作,效率高;系统的实时性好2023/7/23MCS-51单片机原理与应用734.DMA传送(DirectMemoryAccess)
DMA是一种由硬件执行数据传送的工作方式,不需要经过CPU直接在外设和内存之间传送。
DMA传送必须依靠带有DMA功能的CPU和专用的DMA控制器。
适合批量传送
速度很快
2023/7/23MCS-51单片机原理与应用74四、I/O接口的类型
MCS-51有两种I/O传送方式1、串行I/O接口1.串行发送---中断一次,发送一个字节
1)CPU将发送的数据字节送到串行口
2)串口发送完1字节,产生一次中断请求
3)CPU响应后完成
发送第2字节2.串行接收---中断一次,接收一个字节
2023/7/23MCS-51单片机原理与应用752、并行I/O接口
并行I/O接口可以同时传送多位信息,需要多条数据线 一、MCS-51内部并行I/O端口
每个I/O口都有一个8位的数据锁存器和一个8位的数据缓冲器.
八位数据锁存器P0、P1、P2、P3为21个特殊寄存器中的四个,用来放需要输出的数据。2023/7/23MCS-51单片机原理与应用76
数据缓冲器对端口引脚上的数据进行缓冲,但不能锁存,需要保持到CPU将数据读走。
MCS-51有4个8位准双向并行I/O口P0~P3(占32根引脚),是SFR中4个寄存器,能字节寻址和位寻址。MCS-51内部并行I/O端口的应用(一)并行I/O口的操作方式
MCS-51内部并行I/O口有三种工作方式
1、输出数据方式
直接使用以端口为目的的操作指令
2023/7/23MCS-51单片机原理与应用77MOV P0,AORL P1,#DATAANL P2,AXRL P3,#DATA2、读端口数据方式(读端口锁存器中数据)
直接使用以端口为源操作指令
MOV A,P0ORL R1,P1ANL 20H,P23、读引脚方式(读端口线上的数据) 方法:使欲读端口对应的锁存器为1;用数据传送指令读该端口
MOV P1,#0FHMOV A,P12023/7/23MCS-51单片机原理与应用78 1P0口
P0口的一位由一个输出锁存器、两个三态输入缓冲器、输出驱动电路以及输出控制电路组成。
输出控制电路由一个与门,一个反相器和一个模拟开关MUX构成,控制口线工作在不同的工作状态。2023/7/23MCS-51单片机原理与应用79(1)P0作通用I/O口
当P0口作为通用I/O口使用,控制信号为“0”。此信号一方面使模拟开关MUX把锁存器的
端与T2栅极接通;另一方面把与门封锁,使T1截止。
因此,输出驱动工作在需外接上拉电阻的漏极开路方式。信号流程为?2023/7/23MCS-51单片机原理与应用80
P0口输出:内部总线信号→锁存器D端→锁存器的
端(作了第一次倒相)→
T2栅极(经T2再次反相)→P0口的引脚上。 内部总线送来的信号与到达P0口引脚上的信号是相同的。
2023/7/23MCS-51单片机原理与应用81
P0口输入:输入信号除加在三态缓冲器输入端上,还加在T2的阳极上,输入信号可能会受到T2状态的影响。
如果此前该端口曾输出锁存过数据“0”,则T2是导通的,这样引脚上的电位将被T2箝位在“0”电平上,使输入的“1”信号无法读入。2023/7/23MCS-51单片机原理与应用82
在输入数据前,应先向端口写“1”,使T2截止,
去除T2对读1的影响。因此,要遵循“先写1,后读入”才能正确使用,因此,P0口被称为准双向口。图中上面一个三态缓冲器是为读锁存器Q端信号而设置的,即用于所谓“读-改-写”类指令。2023/7/23MCS-51单片机原理与应用83
如执行“ANLP0,A”指令时,CPU是先读入P0口锁存器中的数据,以避免读引脚时可能会受到负载的影响,再将该数据和累加器A中的数据相“与”,经过运算修改,最后将结果送回P0口。(2)P0作地址/数据总线
在扩展系统中访问片外存储器时,P0口是作为复用的地址/数据总线。2023/7/23MCS-51单片机原理与应用84
此时,控制信号为“1”。一方面使模拟开关MUX与反相器输出端接通,把地址/数据信息经反相器和T2接通,另一方面使与门打开。信息通过与门驱动T1,又经反相器后去驱动T2,两个FET构成推拉式输出电路,
负载能力增强,可以驱动8个LSTTL负载。2023/7/23MCS-51单片机原理与应用85若地址/数据信息为“0”
T1截止,T2导通,引脚上输出为“0”;若地址/数据信息为“1”
T1导通,T2截止,引脚上输出为“1”。2023/7/23MCS-51单片机原理与应用86
P0口输入数据时,首先低8位地址信息出现在地址/数据总线上,引脚的状态与地址/数据总线的地址信息相同。
2023/7/23MCS-51单片机原理与应用87
硬件会自动使开关MUX拨向锁存器
端,并向P0口写入FFH,同时“读引脚”信号有效,数据经下面缓冲器读入内部数据总线。
P0口只有在作为地址/数据总线使用时才是一个真正的双向口。2023/7/23MCS-51单片机原理与应用88 2P2口
P2口结构与P0口类似。不同之处是省去了与门,T1改为上拉电阻,P2作为输出口时,能向外提供推拉电流。MUX改接到锁存器的Q端,并经反相器接到输出管T的栅极。2023/7/23MCS-51单片机原理与应用89(1)P2作通用I/O口
控制信号将锁存器Q端与输出级接通,信号路径:
内部总线→D端→Q端→MUX→反相器→驱动输出管的栅极→阳极输出至P2口引脚。2023/7/23MCS-51单片机原理与应用90P2口作输入:
输入信号从下面三态缓冲器输入到内部总线。也要“先写1,后读入”因此,P2口也是一个准双向口。2023/7/23MCS-51单片机原理与应用91(2)P2作地址总线
在访问片外存储器时P2口作为高8位的地址总线,控制信号将MUX与地址信号接通,地址信号经反相器去驱动输出管T的栅极,从T的阳极输出到P2口的引脚上。2023/7/23MCS-51单片机原理与应用92
访问片外ROM时,P2口输出高8位地址A8~A15,该地址来源于程序计数器PC的高8位;
以16位地
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年酸溶钛渣项目市场调查研究报告
- 2025年道路监控闯红灯抓拍回放系统项目市场调查研究报告
- 2025年送纬条板项目市场调查研究报告
- 2025年过滤器芯项目市场调查研究报告
- 2025年玻璃供料机配件项目市场调查研究报告
- 2025年果树苗木项目市场调查研究报告
- 探索数字技术在老年教育中提升学习体验的途径
- 大数据驱动的医疗管理与服务创新研究
- 思维导图赋能中高级对外汉语阅读教学:策略与实践探究
- 当代大学生理想信念教育研究
- GB/T 18964.2-2003塑料抗冲击聚苯乙烯(PS-I)模塑和挤出材料第2部分:试样制备和性能测定
- GA/T 1661-2019法医学关节活动度检验规范
- 他达拉非课件
- 资料交接移交确认单
- 风对起飞和着陆影响及修正和风切变完整版课件
- 大数据时代的互联网信息安全题库
- DL∕T 1776-2017 电力系统用交流滤波电容器技术导则
- 浙江省绍兴市上虞区2021-2022学年六年级下学期期末质量检测英语试题(word版无答案无听力音频和原文)
- 护理体查操作评分标准
- 《交通调查与数据分析》课程教学大纲(本科)
- 两轮自平衡小车的设计毕业设计论文
评论
0/150
提交评论