从零开始玩转树莓派4B:40个引脚背后的硬核控制逻辑
你有没有过这样的经历?手握一块树莓派4B,插上电源、连上显示器,系统跑起来了,但当你拿起杜邦线想接个LED时,突然懵了——这40个针脚到底哪个是GPIO?哪个能通信?哪个一碰就烧板子?
别慌。几乎所有刚入门嵌入式开发的人都会卡在这一步: 看得见硬件,却读不懂那排小小的金属针脚背后隐藏的规则 。
今天我们就来彻底拆解这块“万能小电脑”顶部的40针排阵,不讲空话套话,只说你能用得上的实战知识。我们不会堆砌参数表,而是带你一层层揭开这些引脚是如何真正驱动外部世界的。
那排40个针脚,到底藏着什么?
树莓派4B顶部那一排2×20的金属针脚,官方叫它 40-pin GPIO Header 。它不只是“通用输入输出”,而是一个集成了数字控制、电源供给和多种通信协议的微型中枢系统。
你可以把它想象成树莓派对外交流的“神经末梢”:
- 某些引脚像手指,可以点亮灯、按下按钮;
- 某些像是耳朵和嘴巴,能听传感器说话,也能向屏幕发指令;
- 还有一些是血管,为外设输送能量(3.3V/5V/GND)。
但这40个物理位置,并不是每个都随随便便就能拿来用。关键在于搞清楚两个编号体系:
| 类型 | 说明 |
|---|---|
| 物理引脚号(Physical Pin) | 从1到40,按实际排列顺序数,适合初学者接线参考 |
| BCM GPIO 编号 | 芯片内部定义的真实编号(如GPIO18),程序中必须使用 |
🔥 记住一句话: 接线看物理号,编程用BCM号 。
比如你想控制一个LED,通常会选择 BCM 18(对应物理引脚12)。为什么选它?因为它还支持PWM,能让LED实现呼吸灯效果——这种细节,只有理解了引脚复用机制才能掌握。
GPIO不是开关,而是可编程的“智能端口”
很多人以为GPIO就是简单的高低电平输出,其实远不止如此。
它的核心能力有三项:
- 方向控制 :设置为输入或输出;
- 电平读写 :输出高/低电压,或读取外部信号状态;
- 中断响应 :当某个按钮被按下时自动触发事件,无需轮询。
在底层,这一切由Broadcom BCM2711芯片通过内存映射寄存器管理。用户空间可以通过 /dev/gpiomem 或 sysfs 接口安全访问,避免直接操作硬件地址。
实战代码:让LED闪起来(推荐做法)
import RPi.GPIO as GPIO
import time
# 使用BCM编号模式(强烈建议)
GPIO.setmode(GPIO.BCM


5695


被折叠的 条评论
为什么被折叠?



