打印
[资源共享]

浅谈MCU内部的I/O结构,I/O驱动有何差异

[复制链接]
1260|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

经常会听到MCU某I/O的驱动能力是xxmA,那么到底什么是驱动能力呢?如果某IO的驱动能力是5mA,它就输出不了超过5mA的电流了吗?为什么IO的驱动能力有差异呢?

要回答以上问题,需要先了解MCU内部的I/O结构,

(本图来源于STM32F103参考手册)

当输出高电平1时,I/O内部VDD经过PMOS流向I/O引脚,如下图红色箭头所示,

这时驱动能力是指,在输出电流小于等于最大输出电流的情况下,I/O引脚可以正常的输出逻辑1。

P-MOS管的源极(S)接VDD,当MCU输出1时,P-MOS管导通,电流从源极(S)流向漏极(D)。I/O引脚外接负载大小不同,流过P-MOS管的电流、VDS(源漏电压)就会不同。输出电流越大,VDS越大,I/O电压就越小。当电压低到Voh时的这个输出电流,就表示驱动能力。

当输出低电平0时,I/O引脚经过N-MOS流向I/O内部VSS,如下图红色箭头所示

这时驱动能力是指,在小于等于最大输入电流的情况下,I/O引脚可以正常的输出逻辑0。道理同上,流过N-MOS电流越大,N-MOS产生压降越大,I/O口电压越大。当电压达到逻辑0的最高电压Vol时,这时的电流就表示驱动能力。

以上看明白后,文章开头的3个问题也就有了答案,

1)I/O驱动能力是指在同时满足Voh(输出引脚为逻辑1时的最小电压值) 和 Vol(输出引脚为逻辑0时的最大电压值)前提下,最大可以输出和吸收的电流大小。Voh和Vol的值在芯片数据手册中可以查到。

2)如果某I/O的驱动能力是5mA,并不是表示它输出不了超过5mA的电流,只是当输出电流超过5mA之后,它的输出电压会下降,电压会小于Voh。

3)I/O驱动能力的差异来源于MOS管自身的特性,要想过电流能力大,MOS管体积就要大,芯片所需的面积就会更大,成本自然也会更高。所以通常MCU只是一部分I/O具有高驱动能力,并不是每一个I/O都做成了高驱动能力。

说了这么多,其实可以用下面这个简单的电路来解释:

MCU的IO引脚上外接一个电阻到GND,只要这个电阻不是太小,那么IO引脚的电压是基本不变的,只是微小的下降。电阻很小、电流较大时,电压会明显下降。

感兴趣的可以实际测试下,不过要注意别把电流整太大烧坏IO哦。


使用特权

评论回复
沙发
tpgf| | 2022-11-2 11:36 | 只看该作者
基本输入结构;

推挽电路结构;

开漏结构;

弱上拉/准双向结构;

准双向结构;

使用特权

评论回复
板凳
nawu| | 2022-11-2 11:50 | 只看该作者
漏极开路。可作为输入输出。这也是IIC接口选用I/O结构时需要选用开漏结构的原因。当然用作IIC接口时,还需外接若上拉电阻。

使用特权

评论回复
地板
aoyi| | 2022-11-2 12:06 | 只看该作者

推挽电路结构:

该I/O电路结构不能作为输入口使用。该结构具有极强的输入输出能力(具有两个MOUS管的原因)。


使用特权

评论回复
5
zljiu| | 2022-11-2 12:30 | 只看该作者

基本输入结构:

左边的电路,读到的电压可能会在某个范围期间;

中间的电路,使得读到的电压波形程矩形波;

右边的电路,改善了中间电路随端口干扰而时读到的数据产生变化。


使用特权

评论回复
6
gwsan| | 2022-11-2 13:23 | 只看该作者
弱上拉/准双向结构:

左边电路为弱上拉电路结构,右边电路为准双向结构(可输入/输出)。该结构输出高电平时驱动能力弱,输出低电平时驱动能力强。



使用特权

评论回复
7
tfqi| | 2022-11-2 13:39 | 只看该作者
单片机输出端口受驱动能力的限制,一般情况下均需专用的接口芯片。其输出虽因控制对象的不同而千差万别,但一般情况下均满足对输出电压、电流、开关频率、波形上升下降速率和隔离抗干扰的要求。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1116

主题

4963

帖子

11

粉丝