单片机的IO引脚结构
单片机的IO口配置与操作技巧
单片机的IO口配置与操作技巧单片机是一种集成电路,其中包含了处理器、存储器和各种输入输出接口。其中,IO口是单片机最重要的部分之一,它可以用于连接和控制外部设备,实现数据输入和输出。本文将介绍单片机IO口的配置和操作技巧,帮助读者更好地理解和应用单片机。
一、IO口的基本概念
IO口是单片机与外部设备进行数据交互的接口,它可以用于输入数据或输出数据。在单片机中,IO口通常由多个引脚(Pin)组成,每个引脚都可作为一个IO口使用。
二、IO口的配置方法
1. 硬件配置
IO口的硬件配置是指通过设置相关硬件连接器的方式来配置IO口的功能。根据具体的单片机型号和规格,硬件配置方法可能会有所不同。一般来说,可以通过连接跳线和选择器等方式将特定的引脚配置为IO口,并设置相应的电平逻辑,以实现输入输出功能。
2. 软件配置
软件配置是通过单片机内部的寄存器来配置IO口的功能。可以通过写入特定的数值或位操作来设置IO口的输入输出状态、电平逻辑和控制方式等。通常,可以使用特定的编程语言或软件工具来实现软件配置。
三、IO口的操作技巧
1. 输入操作
当将IO口配置为输入状态时,可以使用读取寄存器的方式来获取
外部设备传递的数据。读取寄存器时需要注意数据的有效性和稳定性,可采用轮询、中断等方式进行读取。
2. 输出操作
当将IO口配置为输出状态时,可以使用写入寄存器的方式将特定
的数据发送至外部设备。输出操作需要注意数据的正确性和稳定性,
可以通过设置特定的输出保护电路来防止因输出电流过大而引起的电
源电流波动等问题。
3. 状态检测与改变
单片机IO端口工作原理
一、P0端口的结构及工作原理
P0端口8位中的一位结构图见下图:
输入缓冲器:在P0口中,有两个三态的缓冲器,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态。图中有一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为‘读锁存器’端)有效。图中另一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为‘读引脚’的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。
D锁存器:一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的。图中的锁存器,D端是数据输入端,CP是控制端(也就是时序控制信号输入端),Q是输出端,Q非是反向输出端。
对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失了,这时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来了)。如果下一个时序控制脉冲信号来了,这时D端的数据才再次传送到Q端,从而改变Q端的状态。
多路开关:在51单片机中,当内部的存储器够用(也就是不需要外扩展存储器时,这里讲的存储器包括数据存储器及程序存储器)时,P0口可以作为通用的输入输出端口(即I/O)使用,对于8031(内部没有ROM)的单片机或者编写的程序超过了单片机内部的存储器容量,需要外扩存储器时,P0口就作为‘地址/数据’总线使用。那么这个多路选择开关就是用于选择是做为普通I/O口使用还是作为‘数据/地址’总线使用的选择开关了。大家看上图,当多路开关与下面接通时,P0口是作为普通的I/O口使用的,当多路开关是与上面接通时,P0口是作为‘地址/数据’总线使用的。
单片机IO端口工作原理(P0端口,漏极开路,推挽,上拉电阻,准双向口)
单片机IO端口工作原理(P0端口,漏极开路,推挽,上拉电阻,准双向口)
一、P0端口的结构及工作原理
P0端口8位中的一位结构图见下图:
输入缓冲器:在P0口中,有两个三态的缓冲器,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态。图中有一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为‘读锁存器’端)有效。图中另一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为‘读引脚’的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。
D锁存器:一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的。图中的锁存器,D 端是数据输入端,CP是控制端(也就是时序控制信号输入端),Q是输出端,Q 非是反向输出端。
对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失了,这时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来了)。如果下一个时序控制脉冲信号来了,这时D端的数据才再次传送到Q端,从而改变Q端的状态。
多路开关:在51单片机中,当内部的存储器够用(也就是不需要外扩展存储器时,这里讲的存储器包括数据存储器及程序存储器)时,P0口可以作为通用的输入输出端口(即I/O)使用,对于8031(内部没有ROM)的单片机或者编写的程序超过了单片机内部的存储器容量,需要外扩存储器时,P0口就作为‘地址/数据’总线使用。那么这个多路选择开关就是用于选择是做为普通I/O口使用还是作为‘数据/地址’总线使用的选择开关了。大家看上图,当多路开关与下面接通时,P0口是作为普通的I/O口使用的,当多路开关是与上面接通时,P0口是作为‘地址/数据’总线使用的。
51单片机IO引脚IO口工作原理
51单片机IO引脚IO口工作原理
一、IO引脚的基本特性
1.输入与输出:IO引脚可以配置为输入(接收外部信号)或输出
(发送信号到外部设备)。
2. 高低电平:IO引脚可以输出高电平(通常为Vcc电压)或低电平(通常为接地GND电压)。
3.上拉与下拉:IO引脚可以通过上拉电阻或下拉电阻实现电平的稳定。
4. 悬空状态:未配置输入的IO引脚可能处于悬空状态(floating),容易受到噪声的干扰。
二、IO口的工作原理
1.寄存器配置:通过对相应的寄存器进行配置,可以选择IO引脚的
工作模式(输入或输出)、电平(高或低)、上拉或下拉等。
2.IO端口的控制:通过对控制寄存器进行设置,可以使IO引脚产生
相应的电平信号,控制外部设备的操作。
3.输入输出驱动能力:IO引脚的输出能力决定了其能够驱动的外部
设备的负载能力。对于较重的负载,需要考虑使用缓冲电路或者外部驱动
芯片。
三、IO口的配置与操作
1.选择IO引脚功能:通过寄存器配置,将IO引脚配置为输入模式(将输入电平传递给芯片内部)或输出模式(将芯片内部的电平输出到外部设备)。
2.设置电平状态:对于输出模式的引脚,可以通过寄存器来设置输出电平的状态,使其输出高电平或低电平。
3.上拉与下拉电阻:通过配置相关寄存器,可以启用上拉电阻(使引脚在悬空状态时拉高到高电平)或下拉电阻(使引脚在悬空状态时拉低到低电平)。
四、IO端口的应用
1.输入:将外部设备的信号输入到IO引脚,通过编程来实现对信号的判断和处理。例如,读取按键的状态、读取传感器的数据等。
2.输出:将芯片内部产生的信号输出到外部设备,用于控制和驱动外部设备的操作。例如,控制LED灯的亮灭、控制继电器的开关等。
单片机的IO引脚结构
单片机的IO引脚结构
单片机(MCU)的IO引脚结构是指单片机芯片上的输入输出引脚的组
织结构和功能。单片机的引脚结构通常由内部逻辑电路和外部物理引脚组成,它们通过输入输出方式与外部电路或器件进行信息交互。下面将对单
片机的IO引脚结构进行详细描述。
一、输入输出引脚组织结构
单片机的输入输出引脚通常由三个主要组成部分构成:引脚功能区、
输入输出缓冲区和引脚控制寄存器。
1.引脚功能区:是指单片机芯片上与外部引脚相连接的内部逻辑电路
部分。该电路决定了引脚的功能,包括输入、输出、模拟输入、模拟输出、复用功能等。
2.输入输出缓冲区:是单片机芯片内部的电路,用于将引脚与CPU内
部总线之间的电平信号进行相互转换。输入缓冲器用于输入引脚,将外部
电平信号转换为内部电平信号;输出缓冲器用于输出引脚,将内部电平信
号转换为外部电平信号。
3.引脚控制寄存器:是用于配置和控制引脚的寄存器。它可以设置引
脚的输入/输出模式、上拉/下拉电阻、中断使能等功能。通过对引脚控制
寄存器的设置,可以实现对引脚功能和特性的灵活配置。
二、引脚的功能和特性
1.输入功能:可以将外部电平信号输入到单片机内部。输入引脚通常
具有输入缓冲器,用于接收外部电平信号。可以通过设置引脚控制寄存器
来配置输入功能的参数,如输入模式、上拉/下拉电阻、中断使能等。
2.输出功能:可以将单片机内部的电平信号输出到外部。输出引脚通
常具有输出缓冲器,用于将内部电平信号转换为外部电平信号。可以通过
设置引脚控制寄存器来配置输出功能的参数,如输出模式、上拉/下拉电
阻等。
3.模拟输入功能:部分单片机的引脚具有模拟输入功能,可以接收模
51单片机资料-单片机IO口介绍
DQ CLK Q
T1
P0.n P0口
T2
引脚
MUX
读引脚
7
② 输入时----分读引脚或读锁存器
读锁存器:有些指令 如:ANL P0,A称为“读-改-写”
指令,需要读锁存器。
上面一个缓冲器用于读端口锁存器数据。
读锁存器
内部总线 写锁存器
地址/数据 VCC 控制
DQ CLK Q
T1
T2 MUX
P0.n P0口 引脚
CPU发出控制电平“1”,打开“与”门,又使多路开 关MUX把CPU的地址/数据总线与T2栅极反相接通,输出地 址或数据。由图上可以看出,上下两个FET处于反相,构 成了推拉式的输出电路,其负载能力大大增强。
读锁存器
内部总线 写锁存器
地址/数据 VCC 控制
DQ CLK Q
T1
T2 MUX
P0.n P0口 引脚
读锁存器
内部总线 写锁存器
地址/数据 VCC 控制
DQ CLK Q
T1
T2 MUX
P0.n P0口 引脚
读引脚
4
1、P0口作为普通I/O口
①输出时
CPU发出控制电平“0”封锁“与”门,将输出上拉场效 应管T1截止,同时使多路开关MUX把锁存器与输出
读锁存器
内部总线 写锁存器
地址/数据 VCC 控制
51单片机IO口工作原理——P2、P3(转载)
51单⽚机IO⼝⼯作原理——P2、P3(转载)
三、P2端⼝的结构及⼯作原理:
P2端⼝的⼀位结构见下图:
由图可见,P2端⼝在⽚内既有上拉电阻,⼜有切换开关MUX,所以P2端⼝在功能上兼有P0端⼝和P1端⼝的特点。这主要表现在输出功能上,当切换开关向下接通时,从内部总线输出的⼀位数据经反相器和场效应管反相后,输出在端⼝引脚线上;当多路开关向上时,输出的⼀位地址信号也经反相器和场效应管反相后,输出在端⼝引脚线上。
对于8031单⽚机必须外接程序存储器才能构成应⽤电路(或者我们的应⽤电路扩展了外部存储器),⽽P2端⼝就是⽤来周期性地输出从外存中取指令的地址(⾼8位地址),因此,P2端⼝的多路开关总是在进⾏切换,分时地输出从内部总线来的数据和从地址信号线上来的地址。因此P2端⼝是动态的I/O端⼝。输出数据虽被锁存,但不是稳定地出现在端⼝线上。其实,这⾥输出的数据往往也是⼀种地址,只不过是外部RAM的⾼8位地址。
在输⼊功能⽅⾯,P2端⼝与P0和H端⼝相同,有读引脚和读锁存器之分,并且P2端⼝也是准双向⼝。
可见,P2端⼝的主要特点包括:
①不能输出静态的数据;
②⾃⾝输出外部程序存储器的⾼8位地址;
②执⾏MOVX指令时,还输出外部RAM的⾼位地址,故称P2端⼝为动态地址端⼝。
即然P2⼝可以作为I/O⼝使⽤,也可以作为地址总线使⽤,下⾯我们就不分析下它的两种⼯作状态。
1、作为I/O端⼝使⽤时的⼯作过程
当没有外部程序存储器或虽然有外部数据存储器,但容易不⼤于256B,即不需要⾼8位地址时(在这种情况下,不能通过数据地址寄存器DPTR读写外部数据存储器),P2⼝可以I/O⼝使⽤。这时,“控制”信号为“0”,多路开关转向锁存器同相输出端Q,输出信号经内部总线→锁存器同相输出端Q→反相器→V2管栅极→V2管9漏极输出。
单片机IO口结构及上拉电阻
单片机IO口结构及上拉电阻
MCS-51有4组8位I/O口:P0、P1、P2和P3口,P1、P2和P3为准双向口,P0口则为双向三态输入输出口,下面我们分别介绍这几个口线。
一、P0口和P2口
图1和图2为P0口和P2口其中一位的电路图。由图可见,电路中包含一个数据输出锁存器(D触发器)和两个三态数据输入缓冲器,另外还有一个数据输出的驱动(T1和T2)和控制电路。这两组口线用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口,而不能象P1、P3直接用作输出口。它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。
图1 单片机P0口内部一位结构图
图2 单片机P0口内部一位结构图
P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口
AB8-AB15,P0口由ALE选通作为地址总线的低8位输出口AB0-AB7。外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD读写信号选通,因为
2^16=64k,所以MCS-51最大可外接64kB的程序存储器和数据存储器。
二、P1口
图3为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
图3 单片机P2口内部一位结构图
作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。
单片机IO口内部结构
一、P0端口的结构和工作原理
结构图如下:
1、图解:
(1)输入缓冲器:在P0端口中有两个三态缓冲器,上图中的上面一个是读锁
存器的缓冲器,也就是说,要读取D 锁存器输出端Q 的数据,那就得使读锁存器的这个缓冲器的三态控制端(图中的“读锁存器”端)有效。下面的是读引脚的缓冲器,要读取P0.x 引脚上的数据,也要使标号为“读引脚”的这个三态缓冲器的控制端有效,引脚上的数据才会传输到单片机的内部数据总线上。
(2)D 锁存器:
结构如图:
它有两个输入端,数据输入端D 和使能输入端CP 。当CP=0时,G3、G4输出均为0,使G1、G2构成的基本SR 锁存器处于保持状态,无论D 信号怎么变化,输出Q 和Q 非均保持不变。当需要更新状态时,可将门控信号CP 置1,此时,根据送到D 端新的二值信息将锁存器置为新的状态。
2、当控制信号为低电平“0”,P0口作为通用IO 接口使用时,控制信号为0,转换开关把输出级与锁存器__
Q 端接通,在CPU 向端口输出数据时,因与门输出为0,是
V1
24G
截止,此时,输出级是漏极开路电路,类似于OD门,当驱动上接电流负载时,需要外接上拉电阻,否则输出电平就没有高低之分了。
下图为内部数据总线向P0口输出数据的流程图:
二、P1、P2、P3口作IO口使用时原理与P0口类似,他们的内部结构分别为:
单片机IO口介绍
T1 P0.n
内部总线 写锁存器
读引脚
D
Q
CLK Q
MUX
T2
P0口 引脚
二、P2的内部结构 1.P2口作为普通I/O口
CPU发出控制电平“0” ,使多路开关MUX倒向锁存 器 输出Q端,构成一个准双向口。其功能与P1相同。
读锁存器 内部总线 写锁存器 读引脚
D Q MUX
地址
控制
VCC
设计要求 :如原理图所示,监视开关K1(接在 P3.0端口上),用发光二极管L1(接在单片机 P1.0端口上)显示开关状态,如果开关合上, L1亮,开关打开,L1熄灭。 元器件选取
①AT89C52:单片机;②RES:电阻;③CRYSTAL: 晶振; ④CAP、CAP-ELEC:电容、电解电容;⑤ LED-GREEN:绿色发光二极管;⑥SWITCH:开关
第二输出功能
VCC
R
读锁存器
内部总线 写锁存器 读引脚
D Q
W
P3.n P3口 T
引脚
CLK Q
第二输入功能
②P3的内部结构
二、P3第二功能(Q=1) 此时引脚部分输入(Q=1、W=1) ,部分输出(Q=1、W输出)
第二输出功能
。
VCC
R
读锁存器
内部总线 写锁存器 读引脚
单片机IO口工作原理
单片机I/O口工作原理
一、P0端口的结构及工作原理
P0端口8位中的一位结构图见下图:
由上图可见,P0端口由锁存器、输入缓冲器、切换开关、一个与非门、一个与门及场效应管驱动电路构成。再看图的右边,标号为P0.X引脚的图标,也就是说P0.X引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。
下面,我们先就组成P0口的每个单元部份跟大家介绍一下:
先看输入缓冲器:在P0口中,有两个三态的缓冲器,在学数字电路时,我们已知道,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态(或称为禁止状态),大家看上图,上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为…读锁存器‟端)有效。下面一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为…读引脚‟的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。
D锁存器:构成一个锁存器,通常要用一个时序电路,时序的单元电路在学数字电路时我们已知道,一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的。大家看上图中的D锁存器,D端是数据输入端,CP是控制端(也就是时序控制信号输
入端),Q是输出端,Q非是反向输出端。
对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失了,这时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来了)。如果下一个时序控制脉冲信号来了,这时D端的数据才再次传送到Q端,从而改变Q端的状态。
单片机IO口
51单片机I/O引脚IO口工作原理
一、P0端口的结构及工作原理
P0端口8位中的一位结构图见下图:
由上图可见,P0端口由锁存器、输入缓冲器、切换开关、一个与非门、一个与门及场效应管驱动电路构成。再看图的右边,标号为P0.X引脚的图标,也就是说P0.X引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。
下面,我们先就组成P0口的每个单元部份跟大家介绍一下:
先看输入缓冲器:在P0口中,有两个三态的缓冲器,在学数字电路时,我们已知道,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态(或称为禁止状态),大家看上图,上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为‘读锁存器’端)有效。下面一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为‘读引脚’的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。
D锁存器:构成一个锁存器,通常要用一个时序电路,时序的单元电路在学数字电路时我们已知道,一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的。大家看上图中的D锁存器,D端是数据输入端,CP是控制端(也就是时序控制信号输入端),Q是输出端,Q非是反向输出端。
对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失
51单片机常用芯片引脚图
常用芯片引脚图
一、 单片机类
1、MCS-51
芯片介绍:MCS-51系列单片机是美国Intel 公司开发的8位单片机,又可以分为多个子系
列。MCS-51系列单片机共有40条引脚,包
括32条I/O 接口引脚、4条控制引脚、2条
电源引脚、2条时钟引脚。 引脚说明: P0.0~P0.7:P0口8位口线,第一功能作为通用I/O 接口,第二功能作为存储器扩展时
的位置/数据复用口。 P1.0~P1.7:P1口8位口线,通用I/O 接口
无第二功能。 P2.0~P2.7:P2口8位口线,第一功能作为
通用I/O 接口,第二功能作为存储器扩展时传送高8位位置。
P3.0~P3.7:P3口8位口线,第一功能作为通用I/O 接口,第二功能作为为单片机的控
制信号。
ALE/ PROG :位置锁存允许/编程脉冲输入信号线(输出信号)
PSEN :片外程序存储器开发信号引脚(输出信号)
EA/Vpp :片外程序存储器使用信号引脚/编程电源输入引脚
RST/VPD :复位/备用电源引脚
2、MCS-96
芯片介绍:MCS-96系列单片机是美国Intel 公司继MCS-51系列单片机之后推出的16位单
片机系列。它含有比较丰富的软、硬件
资源,适用于要求较高的实时控制场合。
它分为48引脚和68引脚两种,以48引
脚居多。
引脚说明:
RXD/P2.1 TXD/P2.0:串行数据传出分发
送和接受引脚,同时也作为P2口的两条
口线
HS1.0~HS1.3:高速输入器的输入端
HS0.0~HS0.5:高速输出器的输出端(有
两个和HS1共用)
Vcc :主电源引脚(+5V )
第3课_单片机IO接口特性
第 3 课
内容提要
P0口的一般结构
单 片 机 I/O 接 口 特 性
P1、P2、P3口的一般结构
I/O接口驱动实例
一、P0口的一般结构
图2-1 P0口某位结构
二、 P1、P2、P3口的一般结构
图2-2
P1口某位结构
wenku.baidu.com
三、 I/O接口驱动实例
1、驱动LED实例
2、驱动继电器实例
图2-6(c)
3、光耦器件的接口电路
单片机应用-单片机并行IO端口
2.4.1 并行I/O端口电路结构
51单片机典型芯片8051共有4个8位并行I/O端口,分别用 P0、P1、P2、P3表示。每个I/O端口既可以按位操作使用单 个引脚,也可以按字节操作使用8个引脚。
Leabharlann Baidu
P0口位电路结构
P1口位电路结构
问题:NPN型三极管的基极给高电平的时候,CE和之间是什么状态?1.导通 2.截止
2.4.3 作为输出端口使用
P1 P0
P3 P2
单片机
输出 输入
P1 P0
。+5V
4.7K×8
P3 P2
单片机 P0口作为输出接口的时候,需要给它在外部电路中连接上拉电阻。
输出操作
P0口需外接上拉电阻才能有高电平输出
P1、P2和P3口作为输出端口使用时,外接可 以不接上拉电阻。
2.4.4 I/O端口的第二功能
简单专职P1口 身兼两职P3口
8位双向 8位双向
第二功能
P1 P0
P3 P2
单片机
8位双向 8位双向
一专多能P0口 专兼皆备P2口
感谢您的观看
Thanks for your attention.
问题:IO端口的问题
P2口位电路结构
P3口位电路结构
2.4.2 作为输入端口使用
P1 P0
单片机IO口介绍(OK)
单片机I/O口的使用
对单片机的控制,其实就是对I/O口的控制,无论单片机对外界进行何种控制,或接受外部的何种控制,都是通过I/O口进行的。51单片机总共有P0、P1、P2、P3四个8位双向输入输出端口,每个端口都有锁存器、输出驱动器和输入缓冲器。4个I/O端口都能作输入输出口用,其中P0和P2通常用于对外部存储器的访问。
51系列单片机有4个I/O端口,每个端口都是8位准双向口,共占32根引脚。每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输出驱动器和输入缓冲器。通常把4个端口笼统地表示为P0~P3。
在无片外扩展存储器的系统中,这4个端口的每一位都可以作为准双向通用I/O端口使用。在具有片外扩展存储器的系统中,P2口作为高8位地址线,P0口分时作为低8位地址线和双向数据总线。
51单片机4个I/O端口线路设计的非常巧妙,学习I/O端口逻辑电路,不但有利于正确合理地使用端口,而且会给设计单片机外围逻辑电路有所启发。
下面简单介绍一下输入/输出端口结构。
一、P0口和P2的结构
1、P0口的结构
下图为P0口的某位P0.n(n=0~7)结构图,它由一个输出锁存器、两个三态输入缓冲器和输出驱动电路及控制电路组成。从图中可以看出,P0口既可以作为I/O用,也可以作为地址/数据线用。
A、P0口作为普通I/O口
①输出时
CPU发出控制电平“0”封锁“与”门,将输出上拉场效应管T1截止,同时使多路开关MUX 把锁存器与输出驱动场效应管T2栅极接通。故内部总线与P0口同相。由于输出驱动级是漏极开路电路,若驱动NMOS或其它拉流负载时,需要外接上拉电阻。P0的输出级可驱动8个LSTTL负载。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
D CK Q /Q
地址高8位 地址高 位 控制 =0
Vcc 内部上拉电阻 1 =1
1
1
3
0
截 止
引脚P2.X 引脚
1 读引脚 =0 控制=0时 控制 时,此脚作通用输出口: 输出=1时 输出 时
单片机的引脚(P2口 单片机的引脚(P2口)
P2.0— 双向I/O 内置了上拉电阻) P2.0—P2.7: 双向I/O (内置了上拉电阻) 寻址外部程序存储器时输出高 位地址; 输出高8 寻址外部程序存储器时输出高8位地址;不接外 部程序存储器时可作为8 准双向I/O 使用。 I/O口 部程序存储器时可作为8位准双向I/O口使用。
读锁存器 2 内部 总线 写锁 存器
D CK Q /Q
地址高8位 控制=1 地址高 位 控制 =1
Vcc 内部上拉电阻 1 =1
1
3
0
截 止
引脚P2.X 引脚
1 读引脚 =0 控制=1 输出口: 控制 时,此脚作高8位地址A8—A15输出口: 位地址 输出口 当输出 =1 时
单片机的引脚(P2口 单片机的引脚(P2口)
输出数据 = 1 时
读锁存器 2 内部 总线 1 写锁 存器 =1
D CK Q /Q
Vcc 内部上拉电阻
1 0
引脚P1.X 截 引脚 止
1 读引脚
单片机的引脚(P1口)
P1.0— 准双向I/O I/O口 内置了上拉电阻) P1.0—P1.7: 准双向I/O口(内置了上拉电阻) 输出时一切照常,仅在作输入口 输入口用时要先对其 输出时一切照常,仅在作输入口用时要先对其 写 “ 1” 。
P2.0— 双向I/O 内置了上拉电阻) P2.0—P2.7: 双向I/O (内置了上拉电阻) 寻址外部程序存储器时输出高 位地址; 输出高8 寻址外部程序存储器时输出高8位地址;不接外 部程序存储器时可作为8 准双向I/O 使用。 I/O口 部程序存储器时可作为8位准双向I/O口使用。
读锁存器 2 内部 总线 写锁 存器
光路阻断, 光路阻断,R暗≈ 400K Ω
R暗 >250K Ω 暗
单片机的引脚(P0口)
P0.0—P0.7: 双向I/O 内置场效应管上拉) 场效应管上拉 P0.0 P0.7: 双向I/O (内置场效应管上拉) 寻址外部程序存储器时分时作为双向 分时作为双向8 寻址外部程序存储器时分时作为双向8位数据口 输出低8位地址复用口 复用口; 和输出低8位地址复用口;不接外部程序存储器 时可作为 作为8 准双向I/O 使用。 I/O口 时可作为8位准双向I/O口使用。
Vcc 读锁存器 2 内部 总线 写锁 存器
D CK Q /Q
内部上拉电阻
引脚P1.X 引脚
1 读引脚
单片机的引脚(P1口)
P1.0— 准双向I/O I/O口 内置了上拉电阻) P1.0—P1.7: 准双向I/O口(内置了上拉电阻) 输出时一切照常,仅在作输入口 输入口用时要先对其 输出时一切照常,仅在作输入口用时要先对其 写 “ 1” 。
单片机的引脚(P0口)
P0.0—P0.7: 双向I/O 内置场效应管上拉) 场效应管上拉 P0.0 P0.7: 双向I/O (内置场效应管上拉) 寻址外部程序存储器时分时作为双向 双向8 寻址外部程序存储器时分时作为双向8位数据口 输出低8位地址复用口 复用口; 和输出低8位地址复用口;不接外部程序存储器 时可作为8 准双向I/O 使用。 I/O口 时可作为8位准双向I/O口使用。
第二功能输出 读锁存器 2 内部 总线 写锁 存器
D CK Q /Q
Vcc 内部上拉电阻
3
引脚 P3.X
1 读引脚 第二功能输入
4
单片机的引脚(P3口)
P3.0— 双功能口(内置了上拉电阻) P3.0—P3.7: 双功能口(内置了上拉电阻) 具有特定的第二功能。 它具有特定的第二功能。在不使用它的第二功 能时它就是普通的通用准双向I/O口 通用准双向I/O 能时它就是普通的通用准双向I/O口。
读锁存器 2 内部 总线 写锁 存器 1
D CK Q /Q
地址/数据 控制 =0 地址 数据 0 3 0
Vcc 截 止 引脚P0.X 引脚 截 止
4
0
0
1 读引脚 =1 控制=0 事先必须对它写“ ) 控制 时,此脚作输入口(事先必须对它写“1”)
单片机的引脚(P0口)
P0.0—P0.7: 双向I/O 内置场效应管上拉) 场效应管上拉 P0.0 P0.7: 双向I/O (内置场效应管上拉) 寻址外部程序存储器时分时作为双向 双向8 寻址外部程序存储器时分时作为双向8位数据口 输出低8位地址复用口 复用口; 和输出低8位地址复用口;不接外部程序存储器 时可作为8 准双向I/O 使用。 I/O口 时可作为8位准双向I/O口使用。
读锁存器 2 内部 总线 写锁 存器 0
D CK Q /Q
地址/数据 控制 地址 数据 控制=1 =1 4 1 3 1
Vcc 导 通 =1 0 引脚P0.X 截 引脚 止
1 读引脚 =0 控制=1时 此脚作地址 数据 控制 时,此脚作地址/数据复用口: (2)输出地址 数据 =1 时 )输出地址/数据
读锁存器 2 内部 总线 写锁 存器 0
D CK Q /Q
地址高8位 地址高 位 控制 =0
Vcc 内部上拉电阻 0 =0
0
0
3
1
导 通
引脚P2.X 引脚
1 读引脚 =0 控制=0时 控制 时,此脚作通用输出口: 输出=0时 输出 时
单片机的引脚(P2口)
P2.0— 双向I/O 内置了上拉电阻) P2.0—P2.7: 双向I/O (内置了上拉电阻) 寻址外部程序存储器时输出高 位地址; 输出高8 寻址外部程序存储器时输出高8位地址;不接外 部程序存储器时可作为8 准双向I/O 使用。 I/O口 部程序存储器时可作为8位准双向I/O口使用。
读锁存器 2 内部 总线 写锁 存器
D CK Q /Q
地址/数据 控制 地址 数据 控制=1 3 4
Vcc
引脚P0.X 引脚
1 读引脚 =1 控制=1时 此脚作地址 数据 控制 时,此脚作地址/数据复用口: (3)输入数据时,输入指令将使引脚与内部总线直通 )输入数据时,
单片机的引脚(P2口)
P2.0— 双向I/O 内置了上拉电阻) P2.0—P2.7: 双向I/O (内置了上拉电阻) 寻址外部程序存储器时输出高 位地址; 输出高8 寻址外部程序存储器时输出高8位地址;不接外 部程序存储器时可作为 作为8 准双向I/O 使用。 I/O口 部程序存储器时可作为8位准双向I/O口使用。
D CK Q /Q
地址高8位 控制=1 地址高 位 控制 =0
Vcc 内部上拉电阻 0 =0
0
3
1
导 通
引脚P2.X 引脚
1 读引脚 =0 控制=1 输出口: 控制 时,此脚作高8位地址A8—A15输出口: 位地址 输出口 当输出 =0 时
单片机的引脚(P3口)
P3.0— 双功能口(内置了上拉电阻) P3.0—P3.7: 双功能口(内置了上拉电阻) 具有特定的第二功能。 它具有特定的第二功能。在不使用它的第二功 能时它就是普通的通用准双向I/O口 通用准双向I/O 能时它就是普通的通用准双向I/O口。
此端自动= 此端自动=1 读锁存器 2 内部 总线 1 写锁 存器
D CK Q /Q
Vcc 内部上拉电阻
1 1
4 第二功能输入(RxD, 第二功能输入(RxD, 3
0
截 止
引脚 P3.X
1 读引脚
T0,T1,INT0,INT1) T0,T1,INT0,INT1)
第二功能输入时, 第二功能输入时,信号经 缓冲器4 缓冲器4 直接进入内总线
输出数据 = 0 时
读锁存器 2 内部 总线 0 写锁 存器 =0
D CK Q /Q
Vcc 内部上拉电阻
0 1
引脚P1.X 导 引脚 通
1 读引脚
单片机的引脚(P1口 单片机的引脚(P1口)
P1.0— 准双向I/O I/O口 内置了上拉电阻) P1.0—P1.7: 准双向I/O口(内置了上拉电阻) 输出时一切照常,仅在作输入口 输入口用时要先对其 输出时一切照常,仅在作输入口用时要先对其 写 “ 1” 。
P0.0—P0.7: 双向I/O 内置场效应管上拉) 场效应管上拉 P0.0 P0.7: 双向I/O (内置场效应管上拉) 寻址外部程序存储器时分时作为双向 双向8 寻址外部程序存储器时分时作为双向8位数据口 输出低8位地址复用口 复用口; 和输出低8位地址复用口;不接外部程序存储器 时可作为8 准双向I/O 使用。 I/O口 时可作为8位准双向I/O口使用。
单片机的I/O引脚结构
众多功能各异的I/O引脚源于它结构的不同
单片机的引脚(P1口)
P1.0— 准双向I/O I/O口 内置了上拉电阻) P1.0—P1.7: 准双向I/O口(内置了上拉电阻) 输出时一切照常,仅在作输入口 输入口用时要先对其 输出时一切照常,仅在作输入口用时要先对其 写 “ 1” 。
读锁存器 2 内部 总线 写锁 存器 1
D CK Q /Q
地址/数据 控制 地址 数据 控制=1 =0 4 1 3 0
Vcc 截 止 =0
1
引脚P0.X 导 引脚 通
1 读引脚 =0 控制=1时 此脚作地址 数据 控制 时,此脚作地址/数据复用口: (1)输出地址 数据 =0 时 )输出地址/数据
单片机的引脚(P0口)
读锁存器 2 内部 总线 写锁 存器
D CK Q /Q
地址高8位 地址高 位 控制
Vcc 内部上拉电阻
3
引脚 P2.X
1 读引脚
单片机的引脚(P2口)
P2.0— 双向I/O 内置了上拉电阻) P2.0—P2.7: 双向I/O (内置了上拉电阻) 寻址外部程序存储器时输出高 位地址; 输出高8 寻址外部程序存储器时输出高8位地址;不接外 部程序存储器时可作为8 准双向I/O 使用。 I/O口 部程序存储器时可作为8位准双向I/O口使用。
读锁存器 2 内部 总线 写锁 存器
D CK Q /Q
地址/数据 地址 数据 控制 3 4
Vcc
引脚P0.X 引脚
1 读引脚
单片机的引脚(P0口)
P0.0—P0.7: 双向I/O 内置场效应管上拉) 场效应管上拉 P0.0 P0.7: 双向I/O (内置场效应管上拉) 寻址外部程序存储器时分时作为双向 双向8 寻址外部程序存储器时分时作为双向8位数据口 输出低8位地址复用口 复用口; 和输出低8位地址复用口;不接外部程序存储器 时可作为8 准双向I/O 使用。 I/O口 时可作为8位准双向I/O口使用。
P3口第二功能表(P.2Fra Baidu bibliotek 表2-3)
引 脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第 二 功 能 RxD: 串行口接收数据输入端 TxD: 串行口发送数据输出端 INT0: 外部中断申请输入端 0 INT1: 外部中断申请输入端 1 T0: 外部计数脉冲输入端 0 T1: 外部计数脉冲输入端 1 WR: 写外设控制信号输出端 RD: 读外设控制信号输出端
输入数据时,要先对其写“1” 数据时,要先对其写“
读锁存器 2 内部 总线 1 写锁 存器
D CK Q /Q
Vcc 内部上拉电阻
1 0
引脚P1.X 截 引脚 止
1 读引脚 =1
简 单 测 控 实 例 原 理 图
P1.3
作 输 入 端 口
R亮 Ω 光路通畅,R 2.2KΩ , 光路通畅亮 < 亮≈2KΩ Ω
小结
51单片机的8个特殊引脚
GND: Vcc, GND: 电源端 XTAL1, XTAL2: 片内振荡电路输入、输出端 XTAL2: 片内振荡电路输入、 RESET: 正脉冲有效(宽度> mS) RESET: 复位端 正脉冲有效(宽度>8 mS) EA/Vpp 寻址外部ROM /Vpp: EA/Vpp: 寻址外部ROM控制端。低有效 片内有ROM时应当接高电平。 ROM时应当接高电平 片内有ROM时应当接高电平。 ALE/PROG /PROG: ALE/PROG: 地址锁存允许控制端。 PSEN:选通外部ROM的读(OE)控制端。 ROM的读 PSEN:选通外部ROM的读(OE)控制端。 低有效
第二功能输出 读锁存器 2 内部 总线 1 写锁 存器
D CK Q /Q (WR,RD,TxD) WR,RD,TxD)
Vcc 内部上拉电阻
1
反相器 3 1 4 第二功能输出时, 第二功能输出时,内部自动 D=1 引脚 P3.X
1 读引脚
单片机的引脚(P3口)
P3.0— 双功能口(内置了上拉电阻) P3.0—P3.7: 双功能口(内置了上拉电阻) 具有特定的第二功能。 它具有特定的第二功能。在不使用它的第二功 能时它就是普通的通用准双向I/O口 通用准双向I/O 能时它就是普通的通用准双向I/O口。