➤ 01 背景

在 电子小帮手电路中电源开关电路分析 中介绍测量模块电路实验原理的时候,对于 ATmega 系列的 单片机的输出端口进行了内部描述 。特别是对于端口做为 IO 输出口的时候,它可以等效为通过电阻 19Ω和 22Ω分别上拉到 VCC,或者下拉的 GND。

 

  • 电子小帮手电路中电源开关电路分析:
    https://zhuoqing.blog.csdn.net/article/details/109242259

 

  • 单片机的输出端口进行了内部描述:
    https://zhuoqing.blog.csdn.net/article/details/109238622

 

▲ ATMEGA 单片机 IO 口等效电路

 

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

 

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

 

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

 

  • ATMEGA8 DIP-28 面包板实验:
    https://zhuoqing.blog.csdn.net/article/details/109245968

 

➤ 02 测量方案

1. 测量端口电阻

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

 

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

 

2. 测量过程

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

 

▲ ATMEGA8 DIP-28 封装

 

➤ 03 测量数据

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

(1) IO 低电平内阻

 

▲ 测量电路图示意图

 

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

 

  • 低价电阻箱 - 阻值测试:
    https://zhuoqing.blog.csdn.net/article/details/107112157

 

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

 

▲ 端口电流与电压

 

通过线性拟合,可以建立输入电流(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

 

▲ 端口电压与电流

 

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

 

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

 

通过实际测量,可以看到 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 进行测量相应端口的内阻。

 

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

 

低电平 IO 内阻:

 

高电平 IO 内阻:

 

➤ ※ 结论

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

 

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

 

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