除了供电针脚(包括 GND,3.3V 和 5V ),所有的GPIO针脚均可被用于数字输入或输出。
- 树莓派2代,3代B版本接口图
树莓派2代B版本接口说明图
需要特别注意,标注为 ID EEPROM 的 pin27 以及 pin28 是为ID EEPROM设备预留的I2C接口,这个I2C接口会在系统启动的时候自动检测与B+板卡相连的相关ID EEPROM设备,用以自动配置GPIO口以及Linux驱动,不能作为其它功能使用。
P3B支持硬件PWM,位于引脚编号12上,即 GPIO18
针脚编号规则说明
在RPi.GPIO中,同时支持树莓派上的两种GPIO引脚编号。
第一种编号是 BOARD 编号,这和树莓派电路板上的物理引脚编号相对应。使用这种编号的好处是,你的硬件将是一直可以使用的,不用担心树莓派的版本问题。因此,在电路板升级后,你不需要重写连接器或代码。
第二种编号是 BCM 规则,是更底层的工作方式,它和Broadcom的片上系统中信道编号相对应。在使用一个引脚时,你需要查找信道号和物理引脚编号之间的对应规则。对于不同的树莓派版本,编写的脚本文件也可能是无法通用的。
针脚编号规则说明
在RPi.GPIO中,同时支持树莓派上的两种GPIO引脚编号。
第一种编号是 BOARD 编号,这和树莓派电路板上的物理引脚编号相对应。使用这种编号的好处是,你的硬件将是一直可以使用的,不用担心树莓派的版本问题。因此,在电路板升级后,你不需要重写连接器或代码。
第二种编号是 BCM 规则,是更底层的工作方式,它和Broadcom的片上系统中信道编号相对应。在使用一个引脚时,你需要查找信道号和物理引脚编号之间的对应规则。对于不同的树莓派版本,编写的脚本文件也可能是无法通用的。

- 树莓派1代 B版本接口图
- GPIO的sysfs接口
进入目录/sys/class/gpio中,可以看到三个文件
export 负责导出GPIO接口
gpiochip0 GPIO控制器0的控制接口
unexport 负责取消GPIO的导出