1)4个并行I/O接口:P0、P1、P2、P3,每个接口皆有8位。
2)每个接口皆有1个八位数据锁存器和1个八位数据缓冲器,其中八位数据锁存器和端口号P0、P1、P2和P3同名,属于21个特殊功能寄存器中的4个,用于存放需要输出的数据,8个数据缓冲器用于对接口引脚上的数据进行缓冲,但不能锁存。另外还包括输出驱动器、逻辑电路等。
3)2个三态输入缓冲器,分别用于锁存器数据和引脚数据的输入缓冲。
4)
MCS-51系列单片机各通道某位的结构如图7-1所示。
1.P0接口的位结构及其特点
图7-1a所示的是P0接口位结构图,它包含两个输入缓冲器、1个输出锁存器以及输出驱动电路、输出控制电路。2个输入缓冲器分别受“读锁存器”和“读引脚”控制信号控制。输出驱动电路由两只场效应管V1和V2组成,其工作状态受输出控制电路的控制。输出控制电路包括与门、非门和多路模拟开关MUX。
P0接口既可以用作通用I/O接口,又可以用作地址/数据总线。
(1)用作通用I/O接口 用作通用I/O接口时,CPU发出的控制信号为低电平,这使多路开关MUX接通B端即输出锁存器的Q端。同时使与门输出低电平,场效应管V1截止,因而输出级为开漏输出电路。
1)当作为通用I/O接口输出数据时,“写入”信号加在锁存器的时钟端CP,内部总线接锁存器D端,数据经反相后接通MUX电子开关的下方,再经V2反相,内部总线上的数据就通过接口电路转为引脚电平。
P0接口电路的八位数据锁存器是片内SFR区的P0寄存器,字节地址为80H。SFR单元P0寄存器的每一位数据1(或0)都能使其对应的电路引脚输出高(或低)电平。由于输出级为开漏电路,所以在用作输出口时应外接上拉电阻。
2)当作为通用I/O接口输入数据时,由于接口中有2个输入缓冲器,因此这时有两种工作方式:读引脚方式和读锁存器方式。
当CPU执行通用的接口输入指令时,“读引脚”信号使P0接口位结构中(图7-1a)下面1个缓冲器开通,于是接口引脚上的数据经过缓冲器输入到内部总线上。
当CPU执行“读-修改-写”一类指令(如ANL、ORL和XRL等)时,“读锁存器”信号使上面1个缓冲器开通,锁存器Q端的数据经缓冲器输入内部数据总线。
(2)用作地址/数据总线P0接口常用作分时复用的地址总线低八位和数据总线,供系统扩展时使用。这时CPU发出的控制信号为高电平,多路开关MUX接通A端。从“地址/数据”端送来信号均可经过输出驱动器输出。
1)“地址/数据”端送来信号=1时,经非门使V2截止,同时V1开通,P0接口对应引脚输出1(高电平)。
2)“地址/数据”端送来信号=0时,经非门使V2开通,与门输出低电平,V1截止,P0接口对应引脚输出0(低电平)。
2.P1接口的位结构及其特点
P1接口只能作为通用的I/O接口使用,只传送数据,因此它不需要多路转接开关。另外,由于P1接口的输出电路中有上拉电阻,上拉电阻与场效应晶体管V2共同组成输出驱动电路,如图7-1b所示。因此当P1接口作为输入口使用时,已能对外提供推拉电流负载,不需外加上拉电阻;当作为输出口使用,输入引脚信号时,应先向其锁存器写入“1”,使输出驱动电路的场效应晶体管截止。
图7-1 MCS-51各通道某位的结构
a)P0接口位结构 b)P1接口位结构 c)P2接口位结构 d)P3接口位结构
P1接口输出驱动部分的“内部上拉电阻”的作用如下。
1)该引脚用作输出引脚时,增加驱动能力。(www.xing528.com)
2)该引脚用作输入引脚时,减小对外电路的影响。
3)有利于提高速度。
3.P2接口的位结构及其特点
图7-1c所示为P2接口位结构图,它包含两个输入缓冲器、一个输出锁存器以及输出驱动电路、输出控制电路。两个输入缓冲器分别受“读锁存器”和“读引脚”控制信号控制。输出驱动电路由场效应晶体管V和上拉电阻R组成,其工作状态受输出控制电路的控制。输出控制电路包括多路模拟开关MUX和非门。
P2接口既可以用作通用I/O接口,又可以用作地址总线。
(1)用作通用I/O接口 当控制信号为低电平时,多路开关MUX接到B端,此时P2接口的功能和使用方法与P1接口相同。
(2)用作地址总线 当控制信号为高电平时,多路开关MUX接到A端,地址信号经非门、场效应晶体管V从引脚输出。这时P2接口输出地址总线高8位,供系统扩展使用。
4.P3接口的位结构及其特点
P3接口虽然可以作为通用I/O接口,但在实际应用中第二功能更为重要,为适应引脚第二功能的需要,在P3接口的电路中增加了第二功能控制逻辑,如图7-1d所示。P3接口(单元地址B0H)各位的第二功能情况见表7-1。
表7-1 P3接口的第二功能情况
(1)作为通用I/O接口 当P3接口用作通用I/O接口时,“第二功能输出”端为高电平。这时与非门开通,以维持从锁存器到输出端数据输出通道的畅通,即对输入端Q来说相当于非门,位结构与P2接口完全相同,因此P3接口用作通用I/O接口时的功能和使用方法与P2接口、P1接口相同。
(2)用作第二功能 当P3接口的某一位作为第二功能输出信号时,该位的锁存器自动置“1”,使与非门的输出状态只受“第二功能输出”端的控制,“第二功能输出”端的状态经与非门和驱动管V输出到该位引脚上。
当P3接口的某一位作为第二功能输入信号时,在位结构中的输入通道上增加了一个缓冲器,输入的信号从该缓冲器的输出端读取。该位的“第二功能输出”端自动为高电平,锁存器同时置为“1”。这样,该位引脚上的输入信号经缓冲器送入“第二功能输入”端。
下面着重对P0接口作为地址/数据总线,P2接口作为地址总线的情况进行说明。P0、P2接口送地址时的电路工作原理如图7-2所示。
P0送地址数据、P2接口送地址时,MUX电子开关接通A端,则P0、P2接口各引脚P.x、P2.x的输出信号情况为:
1)输出信号与锁存器无关。
2)输出信号由地址信号对V1/V2作用后输出相应电平。
①当低位地址信号某位为1时,P0接口等效电路情况如图7-2a所示,地址信号与控制信号经过与门后仍为高电平,V1开通;地址信号经非门,使V2截止,则P0.x输出1(高电平)。
②当高位地址信号某位为1时,该位P2接口电路情况如图7-2b所示,地址信号经过非门,使V2截止,则P2.x由上拉电阻R置为高电平。
图7-2 P0、P2接口送地址时的电路工作原理
a)P0接口某位地址信号为1时 b)P2接口某位地址信号为1时
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。