资讯详情

单片机io口输出电流范围及问题详解

准双向口输出类型可用作无需重新配置口线输出状态的输出和输入功能。这是因为当口线输出为1时,驱动能力非常弱,允许外部设备降低。当引脚输出较低时,其驱动能力非常强,可以吸收相当大的电流。(准双向口有三个上拉晶体管,以满足不同的需要)在阅读准双向口的外部状态之前,定为 ?只有读到正确的外部状态。

小结:

灌电流能力强,拉电流能力弱

阅读外部状态前锁定1(断开下拉晶体管)

读IO口状态的原则是非高或低,只能准确识别外部低电平信号,不能区分悬挂和真正的高电平

作为输入,输入阻抗不是高电阻,外部低电平可能被误读为高电平(例如上拉电阻10K,外部电阻100K,IO=5*100/110=4.54V)

单片机io口输出电流范围及问题详解

其应用参考:

当使用准双向口作为输入时,可以连接地面按钮,如图1所示,当然也可以删除R1直接连接按钮,当按钮关闭时,端口被拉到低电平,当按钮松开时,端口被内部极弱上拉晶体管拉到高电平。

当端口作为输出时,不应外接地面LED如图2所示,端口驱动能力弱(拉电流能力弱),LED如果要驱动的话,只能发微弱的光LED,采用图3的方法,使准双向口在输出低时能吸收20mA的电流(灌电流能力强),故能驱动LED。图4的方法也可以,但是LED不发光时,端口应吸收大量电流。

推拉输出配置的下拉结构与泄漏输出和准双向口的下拉结构相同,但当锁定器为1时提供连续的强拉。推拉模式通常用于需要更大的驱动电流。

如果两个推拉输出结构连接在一起,一个输出高电平,即上述MOS导通,下面的MOS关闭时;同时,另一个输出低电平,即上述MOS关闭,下面的MOS导通时。电流将从第一个引脚开始VCC通过上端MOS然后通过第二个引脚的下端MOS直接流向GND。整个通道电阻小,会短路,可能对端口造成损坏。这就是为什么推挽输出无法实现 线与的原因。

输入口有施密特触发输入和干扰抑制电路。

小结:

通过外部上拉电阻输出高电平

外部上拉可作为输入IO读取外部状态(同准双向)IO,先锁存“1”)

电平转换与外部设备兼容

小结:

电路不能流入流出,只能用作输入数据

传统单片机一般为10台ma约20-25单片机ma,但多个IO总电流有限,根据厂家和包装的不同而变化,有的不能超过200ma,有的不能超400ma

如果外设要求的驱动电流较大,少量IO三极管可用于口扩流,IO 当口数较多时,常用7406 TDG2003等驱动芯片

问:单片机除P0口外,其他输出为5V对吗?那为什么要加三极管来驱动数码管呢?比如加100欧元的电阻,电流高达5V/100欧=50mA,而数码管才20mA?再者,为什么三极管没有标明电流放大倍数?

答:这类似于电源的内阻。输出电流越大,内部消耗的电压降越大。输出电压=5V-内部压降。

51单片机上拉管典型电阻20k,如果外部开路,内部压降=0,输出为5V,如果IO接个5k电阻到GND,那么外部电阻的电压=5V÷(5+20)×5=1V,而外部5K电阻上的电流只有1V/5k=200uA。

所以你接100欧元的电阻,IO输出电压很小,不到5V÷100欧=50mA的水平,

一般来说,高电平输出能力为100-200uA,低电平输出能力8mA-10mA (AT89C2051等IO已强化,可吸入20mA电流)。你可以自己看看这么小的电流驱动数码管,所以加三极管驱动。数码管20mA电流一般较大,静态显示时,一般选择5-15mA即可。动态显示可以适当增加到20mA左右,否则亮度低。

一般三级管的静态放大值可以估计为100。例如,驱动5V线圈继电器(额定电压)V/120欧=40mA,单片机一般只能输出10mA,不能驱动。然后由三极管驱动,基极驱动电流=40mA/100=400uA》200uA,

若使用PNP型三极管由低电平驱动,基极电阻=(5-0.7)V÷0.4mA=10k,

若使用NPN型三极管由高电平驱动,如上所述,最多输出能力为200uA,达不到400uA,至少使用上拉电阻2000uA上拉电阻=(5-0.7)V/0.2mA=21.5k这些计算值都是临界值,在这个值的基础上选择一点保险点就好。

标签: io口限流电阻单片机应如何正确驱动继电器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台