设计与开发

单片机io口输入 51单片机IO口的四种使用方法

小编 2024-10-21 设计与开发 23 0

51单片机IO口的四种使用方法

传统51单片机IO接口只可以作为标准双向IO接口,如果用其来驱动LED只能用灌电流的方式或是用三极管外扩驱动电路。

灌电流方式:LED正极接VCC,负极接IO口。IO为高电平是LED两极电平相同,没有电流,LED熄灭;IO为低电平时,电流从VCC流入IO,LED点亮。但是当你吧LED正极接在IO接口,负极接GND时,将IO接口置于高电平,LED会亮,但因为IO接口上拉能力不足而使亮度不理想,可以用下面介绍的方式解决这个问题。

推挽工作方式:LED正负极分别接在两个IO口上,然后设置正极IO接口为推挽输出,负极IO接口为标准双向灌电流输入。推挽方式具有强上拉能力,可以实现高电平驱动LED。

IO口的四种使用方法

从I/O口的特性上看,标准51的P0口在作为I/O口使用时,是开漏结构,在实际应用中通常要添加上拉电阻1、P2、P3都是准双向I/O,内部有上拉电阻,既可作为输入又可以作为输出。而LPC900系列单片机的I/O口特性有一定的不同,它们可以被配置成4种不同的工作模式:准双向I/O、推挽输出、高阻输入、开漏。

准双向I/O模式与标准51相比,虽然在内部结构上是不同的,但在用法上类同,比如要作为输入时都必须先写“1”置成高电平,然后才能去读引脚的电平状态。!!!!!为什么是这样子?见下面分析。

推挽输出的特点是不论输出高电平还是低电平都能驱动较大的电流,比如输出高电平时可以直接点亮LED(要串联几百欧限流电阻),而在准双向I/O模式下很难办到。

高阻输入模式的特点是只能作为输入使用,但是可以获得比较高的输入阻抗,这在模拟比较器和ADC应用中是必需的。

开漏模式与准双向模式相似,但是没有内部上拉电阻。开漏模式的优点是电气兼容性好,外部上拉电阻接3V电源,就能和3V逻辑器件接口,如果上拉电阻接5V电源,又可以与5V逻辑器件接口。此外,开漏模式还可以方便地实现“线与”逻辑功能。

对于上面疑问的解释,有这样一个资料:

高阻态这是一个数字电路里常见的术语,指的是电路的一种输出状态,既不是高电平也不是低电平,如果高阻态再输入下一级电路的话,对下级电路无任何影响,和没接一样,如果用万用表测的话有可能是高电平也有可能是低电平,随它后面接的东西定。

电路分析时高阻态可做开路理解。你可以把它看作输出(输入)电阻非常大。他的极限可以认为悬空。

高阻态的典型应用:

1、在总线连接的结构上。总线上挂有多个设备,设备与总线以高阻的形式连接。这样在设备不占用总线时自动释放总线,以方便其他设备获得总线的使用权。

2、大部分单片机I/O使用时都可以设置为高阻输入,如凌阳,AVR等等。高阻输入可以认为输入电阻是无穷大的,认为I/O对前级影响极小,而且不产生电流(不衰减),而且在一定程度上也增加了芯片的抗电压冲击能力。

51单片机IO端口基础知识及应用

文章目录

89C51单片机引脚信息 单片机IO端口内部结构 单片机IO引脚输出应用 单片机IO引脚输入应用 总结

89C51单片机引脚信息

我们在学习使用任何芯片到时候,可能第一个要注意的就是芯片的引脚信息了,因为我们必须弄懂每个引脚的功能才能更好的设计出对应的电路。本文就来说下89C51单片机的引脚IO端口及应用,学习单片机的IO口的应用也是入门单片机的第一步。

上图是89C51单片机的封装引脚图,89C51单片机有4个IO端口为P0~P3,每个端口有8个引脚,分别对应8个位0~7,每个端口的引脚都可以作为输入输出使用。

单片机IO端口内部结构

其中P3端口有复用功能,比如串口和外部中断功能等,从上两张图中引脚信息也可以看出。

在有使用外部存储器时,P2用作访问外部总线的高8位地址,P0端口用作分时访问外部总线低8位地址和8位数据。

另外P0口没有内部上拉电阻,是一个真正的双向口 ,引脚内的是一个开漏结构。

P1、P2、P3口的位结构都有一个上拉电阻,因而被称为"准双向口 "。正是由于此上拉电阻的存在,所以有些时候P1、P2、P3端口的引脚的外部上拉电阻可以省略,P0端口的引脚某些时候需要考虑使用上拉电阻。下面就以P1端口为例,介绍下单片机引脚输入输出功能的应用。

单片机IO引脚输出应用

单片机IO引脚作为输出时,其实就是控制其引脚内部开关管的通断,从而使引脚输出对应的高低电平。下面给出一张控制led灯的电路图,并讲解IO输出高低电平的控制过程。

上图中使用P1端口的一个引脚控制一个Led灯,红色剪头已经指出了Led亮时电流的流向,主要就是控制引脚内部的开关管的通断来控制Led灯亮灭。

如上图所示,输出数据0时,IO引脚内部开关管导通,从而使IO引脚低电平接地,所以Led灯亮。

当内部总线输出数据为1时,IO引脚内部开关管截止,IO引脚与地断开,通过内部上拉电阻连接到Vcc,所以Led灭。

单片机IO引脚输入应用

单片机IO引脚作为输入时,主要通过外部不同的高低电平输入,从而读出对应的数据1和0的过程,下面就以一张按键输入电路为例讲解按键的识别过程。

从上图中可以很直观的知道,在IO引脚作为输入时,需要先控制其内部开关管断开,不然开关管导通会使IO引脚一直接地,从而读到的会一直是0。在配置开关管断开后,我们就可以读IO引脚数据了,如果读到1,说明按键没有按下,引脚通过上拉电阻接到电源Vcc,如果读到0,说明按键按下,引脚通过按键连接到地。这样我们就可以判断按键按下了。

总结:

1.单片机每一个I/O口都可以独立地作输入或输出口使用,但P0和P2在访问外部存储器时作地址/数据总线,此时它们将不能再作为I/O口使用。

2.当I/O口作为输入时,必须通过程序输出1使内部开关管截止,这样从"管脚Px.x"输入的信号才能在"读管脚"信号的帮助下被正确读走。

3.P1、P2、P3因为内部上拉电阻而被称为"准双向口"。在作输入时,上拉电阻将"管脚Px.x"拉高并在外设输入低电平时向外输出电流。

4.P0口没有内部上拉电阻,是一个真正的双向口。作输入时因开漏结构而浮地。

欢迎大家点赞、评论、转发、收藏!有什么不对、不详细的地方也请大家指出补充。分享是种美德,如果觉得此文讲的不错的话,欢迎给个转发分享给更多的朋友。有什么问题也欢迎评论一起交流。更多有关电子电路、单片机、嵌入式、C语言编程、RTOS的知识,请关注我头条号:单片机嵌入式爱好者 。会有更多干货文章分享,帮您加速解决实际工程中遇到的问题。

相关问答

51 单片机 IO口 有几种方法?

51单机片读IO口有4种不同的工作模式:准双向I/O、推挽输出、高阻输入、开漏。准双向I/O模式与标准51相比,虽然在内部结构上是不同的,但在用法上类同,比如要作...

51 单片机io口 是什么有效?

51单片机上的IO口无所谓高低电平有效,高低电平有效是指触发条件,可以自设定的。只有P0口是OC输出的,需要外部加上拉电阻,其它端口都带有上拉。在单片机系统...

为了节省 单片机 IO口 一般需要在数码管 输入 端接上什么进行地址译码?

为了节省单片机的IO口,我们通常在数码管输入端接上地址译码器。地址译码器的作用是将输入的地址信号转换成对应的输出信号,这样就可以实现对数码管的选择和驱...

51 单片机 中P0口作I/O使用时,为何要在外部接上拉电阻-ZOL问答

我从面向单片机程序员的角度补充一点:若未执行指令对P0口某位P0x置0时,上拉电阻可确保P0x状态为1,有利于提高I/O状态的稳定及控制的可靠性。也不会怎样额额...

关于 单片机IO口输入输出 复用問題-ZOL问答

首先电阻应该接电源正极,按键一端接地,但还不行,按键检测时,IO口先输出高电平,若有按键按下则检测到低电平,所以在你检测按键之前,LED已经处于亮态了,这和你检...

单片机 输出PWM波 IO口 ,可以直接接H桥驱动电路的 输入 信号吗?

如果单片机输出电压合适,应该可以驱动9110,9110的两个输入都是TTL/CMOS兼容的,3.3V~5V的单片机都可以。如果单片机输出电压合适,应该可以驱动9110,9110的两个...

请问如何用 单片机 IO口 直接控制继电器?

你的电路接法是否错误呢?查看一下,单片机从理论上讲是不能直接驱动继电器的,不管你的接法如何,直接连接可能会烧坏单片机I/O口,你的原因可能是已经把I/O口烧...

51 单片机 什么口需要配置 io口 模式?

1.51单片机的P0口和P2口需要配置IO口模式。2.51单片机的P0口和P2口是通用IO口,可以用于输入和输出。在使用这些口时,需要通过配置IO口模式来确定口的工作方...

51 单片机 按键对应的端口?

51单片机所有的lO口都可以作为输入或者输出,按键作为输入可以接任何lO口为了简单独立按键一般直接接于IO引脚和地之间,利用内部上拉电阻如果接于IO和电源VCC...

单片机 一个 IO口 如何控制两颗发光二极管(LED)?

单片机的一个GPIO只能输出0和1两种状态,如果控制一个LED灯的话,可以实现LED的亮灭控制。两个LED具有四个状态:1)同时亮;2)同时灭;3)一个亮一个灭;4)一个灭...单...

猜你喜欢