Skip to content

GPIO垫控制

本页说明了树莓派 GPIO引脚的当前功能。它适用于 3B +及以下的所有型号。需要注意的主要事情是,GPIO驱动器的强度不是最大电流,而是焊盘仍将符合规格的最大电流。您应设置 GPIO 驱动强度以匹配所连接的设备,以使设备正常工作。

如何控制驱动强度

垫内有许多并行驱动器。如果将驱动强度设置为低(000),则大多数驱动器处于三态,因此它们不会对输出电流产生任何影响。如果增加驱动强度,则会有越来越多的驱动器并联使用。下图显示了该行为:

GPIO驱动强度图

当前值是什么意思?

电流值指定焊盘仍将符合规格的最大电流

1.垫将提供的电流不是" **" 1.这不是电流限制,因此垫不会爆炸

焊盘输出是一个电压源:

如果设置为高电平,则打击垫将尝试将输出驱动到轨电压,树莓派上为 3V3 (3.3伏) 如果设置为低电平,则打击垫将尝试将输出驱动到地(0伏)

打击垫将尝试将输出驱动为高电平或低电平。成功将取决于所连接事物的要求。如果焊盘短路接地,它将无法驱动至高电平。实际上,它会尝试提供尽可能多的电流,并且电流仅受内部电阻限制。

如果将焊盘驱动为高电平并将其短路接地,则它将在适当的时候失效。如果将其连接到 3V3 并将其驱动为低电平,则同样适用。

满足规格由保证电压水平决定。由于垫是数字的,因此有两个电压电平,高电平和低电平。 I/O端口具有两个用于处理输出级别的参数:

  • V IL ,最大低电平电压(3V3 VDD IO时为 0 .9V)
  • V IH ,最小高电平电压(在 3V3 VDD IO时为 1 .6V)

V IL = 0.9V表示如果输出为低,它将为<= 0.9V。 V IH = 1.6V表示如果输出为高电平,则它将> = 1.6V。

因此,16mA的驱动强度意味着:

如果将焊盘设置为高电平,则可以吸收高达 16mA 的电流,并且保证输出电压为> = V IH 。这也意味着,如果将驱动强度设置为 2mA 并绘制 16mA ,则电压将"不是" V IH ,而是更低。实际上,它可能不够高,无法被外部设备视为很高。

有关 GPIO 引脚物理特性的更多信息,请参见。请注意,在计算模块设备上,可以从标准 3V3 更改 VDD IO。在这种情况下,V IL 和 V IH 将根据链接页面上的表进行更改。

为什么不将所有打击垫设置为最大电流?

两个原因:

  1. 树莓派 3V3电源设计为每个 GPIO 引脚的最大电流约为 3mA 。如果为每个引脚加载 16mA 的电流,则总电流为 272mA 。在该负载水平下,3V3电源将崩溃。 1.将会出现大电流尖峰,尤其是在您具有容性负载的情况下。这将在其附近的所有其他引脚周围"反弹"。这很可能会干扰 SD 卡甚至 SDRAM 的行为。

什么是安全电流?

焊盘的所有电子元件均设计为 16mA 。这是一个安全值,在该值下您不会损坏设备。即使将驱动强度设置为 2mA ,然后再加载它,以便输出 16mA 电流,这也不会损坏设备。除此之外,没有保证的最大安全电流。

GPIO地址

  • 0x 7e10 002c PADS(GPIO 0-27)
  • 0x 7e10 0030 PADS(GPIO 28-45)
  • 0x 7e10 0034 PADS(GPIO 46-53)

位|栏位名称|描述类型重启 --- | --- | --- | --- | --- 31:24 |通行证|写作时必须为 5A ;意外写保护密码| W | 0 23:5 | | 保留-写为 0 ,读为无关| | 4 | SLEW |摆率; 0 =摆率受限; 1 =摆率不受限制| RW | 0x1 3 | HYST |启用输入迟滞; 0 =禁用; 1 =启用| RW | 0x1 2:0 |驱动器驱动强度,请参阅下面的故障清单| RW | 0x3

谨防 SSO (同步开关输出)限制取决于设备,并且取决于 PCB 的质量和布局,去耦电容器的数量和质量,焊盘上的负载类型(电阻,电容),以及树莓派无法控制的其他因素。

驱动强度列表

  • 0 = 2mA
  • 1 = 4mA
  • 2 = 6mA
  • 3 = 8mA
  • 4 = 10mA
  • 5 = 12mA
  • 6 = 14mA
  • 7 = 16mA