最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

单片机1IO口

IT圈 admin 29浏览 0评论

2024年6月3日发(作者:达陶)

第二讲MCS - 51并行1/O端口

例子:

IO口做输出利用

点灯,LED闪烁,LED流水灯。

2.一名数码管静态显示,两位数码管动态显示,四位数码管动态显示(有两种方式:main

中扫描,和按时器扫描)。

IO口做输入利用

1. 一名按键状态读取。(软件去抖动)

2. 8位—16位按键状态读取。

程序练习:

1. 两个按键操纵数码管加减功能。

2. 楼道灯

3. 入口人数计数器

第一节 MCS - 51并行1/O端口结构

MCS-51共有4个8位的I/O口,别离记作P0、P1、P2、P3。每一个口都包括一个锁存

器、一个输出驱动器和输入缓冲器。事实上,它们已被归入专用寄放器之列,而且具有字节

寻址和位寻址功能。

在访问片外扩展存储器时,低8位地址和数据由P0分时传送,高8位地址由P2口传

送。在无片外扩展存储器的系统中,这4个口的每一名都可作为双向的I/O端口利用。

MCS-51单片机的4个I/O口都是8位双向口,这些口在结构和特性上是大体相同的,

但又各具特点,以下将别离介绍之。

1 P0口

P0口的口线逻辑电路如图1所示。

图 P0口某位结构

如图所见,电路中包括一个数据输出锁存器、两个三态数据输入缓冲器、一个数据输出

的驱动电路和一个输出操纵电路。当对P0口进行写操作时,由锁存器和驱动电路组成数据

输出通路。由于通路中已有输入锁存器,因此数据输出时能够与外设直接连接,而不需再加

数据锁存电路。

考虑到P0口既能够作为通用的I/O口进行数据输入/输出,也能够作为单片机系统的地

址/数据线利用,为此在P0口的电路中有一个多路转接电路MUX。在操纵信号的作用下,

多路转接电路能够别离接通锁存器输出或地址/数据线。看成为通用的I/O口利历时,内部

的操纵信号为低电平,封锁与门,将输出电路的上拉场效应管(FET)截止,同时使多路转

接电路MUX接通封锁存器

Q

端的输出通路。

当P0口作为输出口利历时,内部的写脉冲加在D触发器的CP端,数据写入锁存器,

并向端口输出。

当P0口作为输入口利历时,应区分读引脚和读端口两种情形,为此,在端口电路中有

两个用于读入驱动的三态缓冲器。所谓读引脚确实是读芯片引脚的数据,这时利用下方的数

据缓冲器,由“读引脚”信号把缓冲器打开,把端口引脚上的数据从缓冲器通过内部总线读

进来。利用传送指令(MOV)进行读端口操作都是属于这种情形。

读端口是指通过上面的缓冲器读锁存器Q端的状态。在端口已处于输出状态的情形下,

Q端与引脚信号是一致的,如此安排的目的是为了适应付端口进行“读——修改——写”操

作指令的需要。例如,“ANL P0,A”确实是属于这种指令,执行时先读入P0口锁存器中

的数据,然后与A的内容进行逻辑与,再把结果送回P0口。关于这种“读——修改——写”

指令,不直接读引脚而读锁存器是为了幸免可能显现的错误。因为在端口已处于输出状态的

情形下,若是端口的负载正是一个晶体管的基极,导通了的PN结会把端口引脚的高电平拉

低,如此直接读引脚就会把本来的“1”误读为“0”。但假设从锁存器Q端读,就能够幸免

如此的错误,取得正确得数据。

但要注意,当P0口进行一样的I/O输出时,由于输出电路是漏极开路电路,因此必需

外接上拉电阻才能有高电平输出;当P0口进行一样的I/O输入时,必需先向电路中的锁存

器写入“1”,使FET截止,以幸免锁存器为“0”状态时对引脚读入的封锁。

在实际应用中,P0口绝大多数情形下都是作为单片机系统的地址/数据线利用,这要比

作一样I/O口应用简单。当输出地址或数据时,由内部发出操纵信号,打开上面的与门,并

使多路转接电路MUX处于内部地址/数据线与驱动场效应管栅极反向接通状态。这时输出

驱动电路由于上、下两个FET处于反相,形成推拉式电路结构,使负载能力大为提高。而

当输入数据时,数据信号那么直接从引脚通过输入缓冲器进入内部总线。

2 P1口

P1口的口线逻辑电路如图1所示。

因为P1口一般是作为通用I/O口利用的,因

此在电路结构上与P0口有一些不同的地方:第一

它再也不需要多路转接电路MUX;第二是电路的

内部有上拉电阻,与场效应管一起组成输出驱电

路。为此,P1口作为输出口利历时,已经能向外

提供推拉电流负载,无需再外接上拉电阻。当P1

口作为输入口利历时,一样也需先向锁驱动电路

FET截止。

图 P1口某位结构

3 P2口

P2口的口线逻辑电路如图1所示。

P2口电路比P1口电路多了一个多路

转接电路MUX,这又正好与P0口一样。

P2口能够作为通用I/O口利用,这时多路

转接电路开关倒向锁存器Q端。通常情形

下,P2口是作为高位地址线利用,现在多

路转接电路开关应倒向相反方向。

2024年6月3日发(作者:达陶)

第二讲MCS - 51并行1/O端口

例子:

IO口做输出利用

点灯,LED闪烁,LED流水灯。

2.一名数码管静态显示,两位数码管动态显示,四位数码管动态显示(有两种方式:main

中扫描,和按时器扫描)。

IO口做输入利用

1. 一名按键状态读取。(软件去抖动)

2. 8位—16位按键状态读取。

程序练习:

1. 两个按键操纵数码管加减功能。

2. 楼道灯

3. 入口人数计数器

第一节 MCS - 51并行1/O端口结构

MCS-51共有4个8位的I/O口,别离记作P0、P1、P2、P3。每一个口都包括一个锁存

器、一个输出驱动器和输入缓冲器。事实上,它们已被归入专用寄放器之列,而且具有字节

寻址和位寻址功能。

在访问片外扩展存储器时,低8位地址和数据由P0分时传送,高8位地址由P2口传

送。在无片外扩展存储器的系统中,这4个口的每一名都可作为双向的I/O端口利用。

MCS-51单片机的4个I/O口都是8位双向口,这些口在结构和特性上是大体相同的,

但又各具特点,以下将别离介绍之。

1 P0口

P0口的口线逻辑电路如图1所示。

图 P0口某位结构

如图所见,电路中包括一个数据输出锁存器、两个三态数据输入缓冲器、一个数据输出

的驱动电路和一个输出操纵电路。当对P0口进行写操作时,由锁存器和驱动电路组成数据

输出通路。由于通路中已有输入锁存器,因此数据输出时能够与外设直接连接,而不需再加

数据锁存电路。

考虑到P0口既能够作为通用的I/O口进行数据输入/输出,也能够作为单片机系统的地

址/数据线利用,为此在P0口的电路中有一个多路转接电路MUX。在操纵信号的作用下,

多路转接电路能够别离接通锁存器输出或地址/数据线。看成为通用的I/O口利历时,内部

的操纵信号为低电平,封锁与门,将输出电路的上拉场效应管(FET)截止,同时使多路转

接电路MUX接通封锁存器

Q

端的输出通路。

当P0口作为输出口利历时,内部的写脉冲加在D触发器的CP端,数据写入锁存器,

并向端口输出。

当P0口作为输入口利历时,应区分读引脚和读端口两种情形,为此,在端口电路中有

两个用于读入驱动的三态缓冲器。所谓读引脚确实是读芯片引脚的数据,这时利用下方的数

据缓冲器,由“读引脚”信号把缓冲器打开,把端口引脚上的数据从缓冲器通过内部总线读

进来。利用传送指令(MOV)进行读端口操作都是属于这种情形。

读端口是指通过上面的缓冲器读锁存器Q端的状态。在端口已处于输出状态的情形下,

Q端与引脚信号是一致的,如此安排的目的是为了适应付端口进行“读——修改——写”操

作指令的需要。例如,“ANL P0,A”确实是属于这种指令,执行时先读入P0口锁存器中

的数据,然后与A的内容进行逻辑与,再把结果送回P0口。关于这种“读——修改——写”

指令,不直接读引脚而读锁存器是为了幸免可能显现的错误。因为在端口已处于输出状态的

情形下,若是端口的负载正是一个晶体管的基极,导通了的PN结会把端口引脚的高电平拉

低,如此直接读引脚就会把本来的“1”误读为“0”。但假设从锁存器Q端读,就能够幸免

如此的错误,取得正确得数据。

但要注意,当P0口进行一样的I/O输出时,由于输出电路是漏极开路电路,因此必需

外接上拉电阻才能有高电平输出;当P0口进行一样的I/O输入时,必需先向电路中的锁存

器写入“1”,使FET截止,以幸免锁存器为“0”状态时对引脚读入的封锁。

在实际应用中,P0口绝大多数情形下都是作为单片机系统的地址/数据线利用,这要比

作一样I/O口应用简单。当输出地址或数据时,由内部发出操纵信号,打开上面的与门,并

使多路转接电路MUX处于内部地址/数据线与驱动场效应管栅极反向接通状态。这时输出

驱动电路由于上、下两个FET处于反相,形成推拉式电路结构,使负载能力大为提高。而

当输入数据时,数据信号那么直接从引脚通过输入缓冲器进入内部总线。

2 P1口

P1口的口线逻辑电路如图1所示。

因为P1口一般是作为通用I/O口利用的,因

此在电路结构上与P0口有一些不同的地方:第一

它再也不需要多路转接电路MUX;第二是电路的

内部有上拉电阻,与场效应管一起组成输出驱电

路。为此,P1口作为输出口利历时,已经能向外

提供推拉电流负载,无需再外接上拉电阻。当P1

口作为输入口利历时,一样也需先向锁驱动电路

FET截止。

图 P1口某位结构

3 P2口

P2口的口线逻辑电路如图1所示。

P2口电路比P1口电路多了一个多路

转接电路MUX,这又正好与P0口一样。

P2口能够作为通用I/O口利用,这时多路

转接电路开关倒向锁存器Q端。通常情形

下,P2口是作为高位地址线利用,现在多

路转接电路开关应倒向相反方向。

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论