良许Linux教程网 干货合集 MCU的I/O驱动能力是啥?

MCU的I/O驱动能力是啥?

经常可以听到有人说MCU某个I/O的驱动能力是xxmA,那么究竟什么是驱动能力呢?如果某个I/O的驱动能力是5mA,那么它就不能输出超过5mA的电流了吗?又为什么不同的I/O有不同的驱动能力呢?

要回答这些问题,首先需要了解MCU内部的I/O结构。

image-20231104213205347
image-20231104213205347

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

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

image-20231104213208528
image-20231104213208528

这时驱动能力是指,在输出电流小于等于最大输出电流的情况下,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,如下图红色箭头所示

image-20231104213212261
image-20231104213212261

这时驱动能力是指,在小于等于最大输入电流的情况下,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都做成了高驱动能力。

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

image-20231104213215612
image-20231104213215612

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

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

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部