我发现在使用gpio-admin的Raspbian 常规安装中,许多GPIO引脚不可用。
例如,我将继电器连接到GPIO 21,只是在经过一些调试后才发现它无法按预期工作。它的邻居GPIO 17和GPIO 22均按预期工作。GPIO 21被标记为PCMD_OUT,所以我猜它正在被用于其他目的。
因此,我想以一种简单的方式解释一些事情:
- 哪些引脚可用于“开箱即用”的读/写?
- 哪些引脚可以进行一些修改(以及如何使用)?
- 哪些引脚完全不能使用?
我发现在使用gpio-admin的Raspbian 常规安装中,许多GPIO引脚不可用。
例如,我将继电器连接到GPIO 21,只是在经过一些调试后才发现它无法按预期工作。它的邻居GPIO 17和GPIO 22均按预期工作。GPIO 21被标记为PCMD_OUT,所以我猜它正在被用于其他目的。
因此,我想以一种简单的方式解释一些事情:
Answers:
复位时,仅将GPIO 14和15引脚分配给备用功能UART,这两个引脚可以切换回GPIO,以提供总共17个GPIO引脚
您有Rev2板吗?看这里
R-Pi PCB修订版2更新:根据Eben在[1]的介绍,从2012年9月开始推出的R-Pi Rev.2板在名为P5的新连接器上增加了4个GPIO,并更改了一些现有的P1 GPIO引脚排列。在Rev2上,将GPIO_GEN2 [BCM2835 / GPIO27]路由至P1引脚13,并将原来的SCL0 / SDA0更改为SCL1 / SDA1:将SCL1 [BCM2835 / GPIO3]路由至P1引脚5,将SDA1 [BCM2835 / GPIO2]路由至P1引脚3。先前在P1上标记为“请勿连接”的电源和接地连接也将保持连接状态,特别是:P1-04:+ 5V0,P1-09:GND,P1-14:GND,P1-17:+ 3V3,P1-20:GND,P1-25:GND。根据此评论 [2](并在本帖子[3]中得到证实),预计在当前的Rev.2布局之外,P1引脚的将来不会改变。
在这种情况下,您应该尝试使用GPIO 27而不是GPIO 21
这是P1连接器的布局:
P1-02 5V 5V
P1-04 5V 5V
P1-06 GND GND
P1-08 GPIO14 GPIO14
P1-10 GPIO15 GPIO15
P1-12 GPIO18 GPIO18
P1-14 GND GND
P1-16 GPIO23 GPIO23
P1-18 GPIO24 GPIO24
P1-20 GND GND
P1-22 GPIO25 GPIO25
P1-24 GPIO8 GPIO8
P1-26 GPIO7 GPIO7
P1-01 3.3V 3.3V
P1-03 GPIO0 GPIO2
P1-05 GPIO1 GPIO3
P1-07 GPIO4 GPIO4
P1-09 GND GND
P1-11 GPIO17 GPIO17
P1-13 GPIO21 GPIO27
P1-15 GPIO22 GPIO22
P1-17 3.3V 3.3V
P1-19 GPIO10 GPIO10
P1-21 GPIO9 GPIO9
P1-23 GPIO11 GPIO11
P1-25 GND
该表同时显示了Rev1和Rev2布局。如您所见,在Rev2中,GPIO17和GPIO22之间的bin是GPIO27而不是GPIO21。这可能是您问题的根源。