良许Linux教程网 干货合集 单片机端口输入输出阻抗如何测量?

单片机端口输入输出阻抗如何测量?

➤ 01背景

电子小助手电路中的电源开关电路分析[1] 中,我们对测量模块电路实验原理进行了介绍。这其中包括了对ATmega系列单片机输出端口的内部描述[2]。特别是当端口被配置为IO输出口时,它可以被等效为通过19Ω和22Ω电阻分别上拉至VCC或下拉至GND的电路。

image-20240215001959893▲ ATMEGA单片机IO口等效电路

那么就会出现一个新的问题,对于ATmega单片机,这个IO口的内阻究竟有多大呢?

通过实验来确定单片机输出IO口的实际电阻阻值,这为将来使用单片机进行测量工作提供数据基础。

利用在 ATMEGA8 DIP-28面包板实验[3] 中可以下载程序的实验方式,对于ATmega8单片机搭建在面包板上的测试芯片。通过实验来测量对应的IO端口在作为输出端时相对于GND,VCC的电阻阻抗。

➤ 02测量方案

1.测量端口电阻

测量电阻阻抗的方式可以通过以下三种方式来进行:

  1. 通过V-A方法检测,也就是通过测量IO口输入、输出电流一项相对应的IO口电压的变化,来获得端口的等效串联点租。
  2. 使用万用表直接测量;
  3. 使用手持LCR表来测。

2.测量过程

通过软件编程,使得单片机的PB4,PB3,PB2,PB1分别处于输出高电平,和输出低电平的情况,然后按照上面三种方法来测量对于端口的内部等效阻抗。

image-20240215002006430
image-20240215002006430

▲ ATMEGA8 DIP-28封装

➤ 03测量数据

1.使用V-A方法测量IO内阻

(1) IO低电平内阻

image-20240215002011077
image-20240215002011077

▲ 测量电路图示意图

使用在 低价电阻箱-阻值测试[4] 中的9999Ω电阻箱,分别改变IO端口的输出负载,记录不同电阻下输出端口的电压,进而可以进行获得内部电阻。

Current(mA) 3.068900 1.900500 1.376000 1.078700 0.889500 0.754900 0.655700 0.579500 0.519100
Voltage(V) 0.086651 0.055485 0.041959 0.034435 0.029279 0.025946 0.023526 0.021161 0.019959
image-20240215002016157
image-20240215002016157

▲ 端口电流与电压

通过线性拟合,可以建立输入电流(i,单位mA)与端口电压之间的线性关系。

通过上述线性方程,可以得到端口的输入电阻为:

(2) IO高电平内阻

测量不同输出电流下输出电压的变化。

Current(mA) 3.066000 1.897700 1.373900 1.077000 0.888000 0.753500 0.654500 0.578400 0.518200
Voltage(V) 0.077972 0.050410 0.038025 0.031065 0.026657 0.023490 0.021160 0.019415 0.018024
image-20240215002018906
image-20240215002018906

▲ 端口电压与电流

对上述电压电流线性拟合:

由此可以得到单片机高电平下输出内阻大约为:

通过实际测量,可以看到ATmega的IO口在输出状态下,内阻分别是26.15Ω(低电平)以及23.56Ω(高电平)。

2.使用万用表测量IO内阻

使用DM3068数字万用表,直接测量ATmega的输出低电平的IO对GND之间的电阻:

测量ATmega8输出高电平的IO对VCC(+5V)之间的直流电阻:

注意:由于存在输出静态电压,不能够测量输出高电平的IO对GND之间的电阻,或者输出低电平IO对VCC之间的电阻。

3.使用LCR表测量IO内阻

为了避免单片机端口的静态电压对于LCR表的测量影响,使用100uF的电解电容进行隔直之后,然后在使用Smart Tweezers进行测量相应端口的内阻。

image-20240215002026164
image-20240215002026164

▲ 使用隔直电容之后测量端口的内阻

低电平IO内阻:

高电平IO内阻:

➤ ※ 结论

单片机的IO如果作为输出端口,它可以等效一个内部穿有内阻的电压源。由于它内部是通过MOS管完成IO端口与VCC,GND的相连,所以内阻实际上是这些MOS管导通内阻。

通过对ATmega8单片机端口的内阻测量,可以看到这些内阻的大小在20欧姆到30欧姆之间。这与它的数据手册上相关的数值基本上是在同一数量级之内。

上文中使用了三种方法测量单片机IO口的内阻,它们的取值基本相似。因此上,在未来实际上应用中,可以根据具体情况来选择相应的测量方式。

参考资料

[1]电子小帮手电路中电源开关电路分析: https://zhuoqing.blog.csdn.net/article/details/109242259[2]单片机的输出端口进行了内部描述: https://zhuoqing.blog.csdn.net/article/details/109238622[3]ATMEGA8 DIP-28面包板实验: https://zhuoqing.blog.csdn.net/article/details/109245968[4]低价电阻箱-阻值测试: https://zhuoqing.blog.csdn.net/article/details/107112157

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

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

作者: 良许

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

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

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

微信扫一扫关注我们

关注微博
返回顶部