news 2026/4/16 13:07:33

树莓派5 GPIO引脚配置:手把手新手教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
树莓派5 GPIO引脚配置:手把手新手教程

树莓派5 GPIO从零开始:新手也能轻松上手的实战指南

你是不是也曾在拿到树莓派5后,盯着那40个密密麻麻的小针脚发愣?“哪个是电源?”、“GPIO18到底对应第几个孔?”、“接错了会不会烧板子?”——这些疑问几乎是每个初学者必经的坎。

别担心。本文不讲晦涩术语堆砌,也不搞复杂理论推导,而是带你一步一步、安全稳妥地掌握树莓派5的GPIO使用方法。无论你是学生、创客,还是刚转行嵌入式的新手工程师,只要跟着做,半小时内就能点亮第一颗LED,并理解背后的逻辑。


为什么GPIO是树莓派的灵魂?

树莓派再强大,如果不能和外部世界互动,它也只是台“迷你电脑”。而GPIO(通用输入输出)引脚,正是连接数字世界与物理世界的桥梁

你可以用它:
- 检测按钮是否被按下;
- 控制LED灯闪烁节奏;
- 驱动继电器开关家电;
- 读取温湿度传感器数据;
- 连接OLED屏幕显示信息。

在树莓派5上,这组接口不仅保留了前代兼容性,还优化了电源管理与信号稳定性,让控制更可靠。但对新手来说,真正的难点从来不是功能多强,而是——怎么安全又正确地用起来?

我们先来破除三个常见误解:

❌ “随便插一根线试试看” → 可能短路烧毁SoC
❌ “编号1就是GPIO1” → 实际是电源引脚!
❌ “5V和3.3V可以混接” → 直接接入5V可能永久损坏芯片

别急,接下来我们就把这些问题一个个拆开讲清楚。


看懂你的40个引脚:一张图胜过千言万语

树莓派5背面的40针排布遵循标准2×20布局,看起来很规整,但功能却五花八门。要安全使用,第一步就是分清哪些能编程、哪些是固定电源、哪些有特殊用途

先记住这几个关键位置(建议收藏)

引脚位置功能说明
第1针(左上角)3.3V电源(红色常用来标记)
第6针接地GND(最常用的地线之一)
第2/4针5V电源(最大输出约3A)
第3/5针I²C通信:SDA(数据)、SCL(时钟)
第8/10针UART串口:TXD(发送)、RXD(接收)
第19/21/23/24针SPI总线:MOSI、MISO、SCLK、CE0
第12/13/18/19针支持PWM输出(可用于调光、调速)

其中,真正可编程的GPIO共有28个(BCM0–BCM27),其余为专用或电源引脚。

🔍 小贴士:面对主板时,40针Header的“第1针”通常靠近SD卡槽一侧,且有一个白色圆点或缺口标识。


到底该用 BCM 还是 Board 编号?

这是新手最容易混淆的地方。树莓派有两种编号方式:

✅ 推荐使用:BCM编号

  • 基于Broadcom芯片内部通道命名;
  • Python库如RPi.GPIOgpiozero默认采用;
  • 跨项目一致性好,避免因物理位置变化出错。

例如:你想用的是物理第12脚,它的BCM编号是GPIO18

⚠️ 不推荐:Board编号

  • 按从1到40的物理顺序编号;
  • 看起来直观,但一旦换板子或查资料容易搞混;
  • 特别是在代码中混合使用时极易出错。

📌 所以记住一句话:写代码一律用BCM编号,接线时对照表格确认物理位置。


安全第一课:电压、电流与保护措施

再强大的功能,用错了也会变“事故”。以下是必须牢记的三大电气原则:

1. 所有GPIO都是3.3V逻辑电平

  • 输出高电平 ≈ 3.3V,低电平 = 0V;
  • 绝对不要直接接入5V信号!
  • 若需连接5V设备(如Arduino、某些传感器),必须加电平转换模块或光耦隔离。

2. 单个引脚驱动能力有限

  • 最大输出电流约16mA
  • 建议工作在8–12mA更安全;
  • 驱动普通LED需串联220Ω–330Ω限流电阻

3. 总电流不能超标

  • 所有GPIO合计不超过50mA(官方建议控制在30mA以内);
  • 多个LED同时亮起?最好外接电源驱动;
  • 控制电机、蜂鸣器等大功率负载?请通过三极管、MOSFET或继电器模块间接控制。

实战第一步:点亮一颗LED

现在我们来动手做一个最经典的入门实验——用Python控制LED闪烁

所需材料

  • 树莓派5 + 电源
  • 面包板 ×1
  • 杜邦线若干(公对母)
  • LED ×1
  • 220Ω电阻 ×1

接线步骤(务必断电操作!)

  1. 将LED长脚(阳极)接GPIO18(BCM编号)→ 物理第12针;
  2. 短脚(阴极)接220Ω电阻一端
  3. 电阻另一端接GND(建议选第6针)
  4. 检查无误后再通电。

✅ 提醒:接线前关闭树莓派电源,防止误短路!

编写控制程序

# blink.py - 控制LED闪烁 import RPi.GPIO as GPIO import time # 设置为BCM编号模式 GPIO.setmode(GPIO.BCM) # 定义使用的引脚 LED_PIN = 18 # 配置为输出模式 GPIO.setup(LED_PIN, GPIO.OUT) try: while True: GPIO.output(LED_PIN, GPIO.HIGH) # 亮 time.sleep(1) GPIO.output(LED_PIN, GPIO.LOW) # 灭 time.sleep(1) except KeyboardInterrupt: pass finally: GPIO.cleanup() # 释放资源,恢复默认状态

如何运行?

  1. 将文件保存为blink.py
  2. 打开终端,进入目录;
  3. 执行命令:
    bash python3 blink.py
  4. Ctrl+C停止程序。

💡 成功了吗?看到LED一秒一闪,恭喜你迈出了GPIO的第一步!

🛠️ 如果没反应,请检查:
- 是否以sudo运行?或者用户是否已加入gpio组;
- 引脚编号是否正确(BCM18 ≠ Board18);
- 接线是否松动或反接。


快速查看引脚状态:一个命令拯救小白

每次都要翻图表太麻烦?树莓派自带神器——pinout命令!

安装并使用

# 安装 gpiozero(包含 pinout 工具) sudo apt update sudo apt install python3-gpiozero # 查看当前引脚图 pinout

执行后你会看到一个彩色ASCII图示,清晰标注每个引脚的编号、功能、当前模式,甚至支持触摸屏旋转提示。

比如输入pinout 18,会直接告诉你物理第18针的信息:

Pin 18 GPIO: 24 Function: OUTPUT State: Low

这个工具简直是调试救星,强烈建议收藏。


加点挑战:按键控制LED

学会了输出,再来试试输入——让一个按钮控制LED开关。

硬件连接

  • 按键一脚接GPIO17(物理第11针)
  • 另一脚接GND(第9针)
  • 同时启用GPIO17的内置上拉电阻,确保未按下时为高电平。

💡 上拉电阻的作用:防止引脚浮空导致误读。树莓派多数GPIO都支持软件启用50kΩ上拉/下拉。

代码实现

# button_led.py - 按键控制LED import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) BUTTON_PIN = 17 LED_PIN = 18 # 按键设为输入,启用内部上拉 GPIO.setup(BUTTON_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP) GPIO.setup(LED_PIN, GPIO.OUT) try: while True: if GPIO.input(BUTTON_PIN) == GPIO.LOW: # 按下时接地,电平拉低 GPIO.output(LED_PIN, GPIO.HIGH) else: GPIO.output(LED_PIN, GPIO.LOW) except KeyboardInterrupt: pass finally: GPIO.cleanup()

运行后,按下按键,LED应立即点亮;松开即灭。


遇到问题怎么办?常见坑点与解决秘籍

❗ 问题1:程序报错 “Permission denied”

  • 原因:普通用户无权访问GPIO硬件。
  • 解决方案
    bash sudo usermod -aG gpio pi
    重启后生效,之后无需每次都用sudo运行脚本。

❗ 问题2:引脚没反应,但别人同样代码能用

  • 排查方向
  • 使用pinout查看该引脚是否已被其他服务占用(如摄像头启用会锁定部分引脚);
  • 检查是否启用了I²C/SPI等外设冲突;
  • /boot/config.txt中是否有禁用GPIO的设置。

❗ 问题3:多个I²C设备地址冲突

  • 使用命令扫描设备:
    bash i2cdetect -y 1
  • 若发现重复地址,尝试更换模块跳线或使用I²C多路复用器。

更进一步:选择合适的开发工具链

随着项目复杂度提升,你可以根据需求选择不同层级的库:

工具适用人群特点
gpiozero新手首选语法简洁,一行代码控LED,内置常用组件抽象
RPi.GPIO中级开发者控制精细,支持中断、PWM等高级功能
libgpiod高阶应用更底层、线程安全,适合工业级实时控制

例如,用gpiozero实现相同功能只需两行:

from gpiozero import LED, Button from signal import pause led = LED(18) btn = Button(17) btn.when_pressed = led.on btn.when_released = led.off pause() # 保持运行

简洁到令人发指,特别适合教学和快速原型验证。


让它开机自动运行:systemd来帮忙

想让你的灯光系统、监控脚本随系统启动自动运行?可以用systemd注册服务。

创建文件/etc/systemd/system/gpio-led.service

[Unit] Description=LED Control via GPIO After=multi-user.target [Service] Type=simple ExecStart=/usr/bin/python3 /home/pi/button_led.py User=pi [Install] WantedBy=multi-user.target

然后启用服务:

sudo systemctl enable gpio-led.service sudo systemctl start gpio-led.service

下次开机,你的程序就会默默运行,像一个真正的嵌入式系统。


写在最后:从点亮LED到创造无限可能

当你第一次亲手让一颗小小的LED按你设定的节奏闪烁时,那种成就感是无可替代的。而这只是开始。

掌握了树莓派5引脚定义和基本配置方法后,你可以继续探索:
- 用PWM调节LED亮度;
- 接DHT11读取温湿度;
- 驱动SG90舵机做机械臂;
- 搭建智能家居节点,联动WiFi远程控制。

每一个复杂的项目,都是由这样简单的一步起步的。

正如一位资深创客所说:“所有伟大的发明,最初都不过是一块面包板上的两个元件。”

所以,别再犹豫了——插上电源,打开终端,写下你的第一行GPIO代码吧。

如果你在实践中遇到任何问题,欢迎留言交流。我们一起把想法变成现实。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:23:13

HACS极速版实战手册:告别Home Assistant插件下载困境

在智能家居的构建过程中,你是否曾因插件下载缓慢而深感困扰?面对网络访问带来的种种不便,HACS极速版应运而生,为中国用户提供了一站式的解决方案。本文将带你深入探索这款工具的强大功能,助你轻松应对各种技术挑战。 【…

作者头像 李华
网站建设 2026/4/14 18:40:03

QualityScaler:终极AI图像视频增强神器免费使用指南

QualityScaler:终极AI图像视频增强神器免费使用指南 【免费下载链接】QualityScaler QualityScaler - image/video AI upscaler app 项目地址: https://gitcode.com/gh_mirrors/qu/QualityScaler 在当今数字媒体时代,图像和视频质量直接影响着内容…

作者头像 李华
网站建设 2026/4/16 0:42:47

掌握NXP mfgtools/uuu工具的5个高效烧录技巧

掌握NXP mfgtools/uuu工具的5个高效烧录技巧 【免费下载链接】mfgtools 项目地址: https://gitcode.com/gh_mirrors/mf/mfgtools 还在为嵌入式设备固件烧录效率低下而烦恼吗?NXP官方推出的mfgtools(又名uuu工具)作为跨平台固件烧写解…

作者头像 李华
网站建设 2026/4/16 12:28:55

QualityScaler:终极AI图像视频质量提升方案

QualityScaler:终极AI图像视频质量提升方案 【免费下载链接】QualityScaler QualityScaler - image/video AI upscaler app 项目地址: https://gitcode.com/gh_mirrors/qu/QualityScaler QualityScaler是一款基于人工智能技术的专业图像与视频增强工具&#…

作者头像 李华
网站建设 2026/4/12 18:19:21

SlideSCI插件终极配置指南:5步打造高效PPT制作环境

SlideSCI插件终极配置指南:5步打造高效PPT制作环境 【免费下载链接】SlideSCI PPT plugin, supports one-click to add image titles, copy and paste positions, one-click image alignment, and one-click to insert Markdown (including bold, hyperlinks, and o…

作者头像 李华
网站建设 2026/4/16 12:22:47

Synfig Studio 2D动画软件完整使用指南:从安装到创作实践

Synfig Studio 2D动画软件完整使用指南:从安装到创作实践 【免费下载链接】synfig This is the Official source code repository of the Synfig project 项目地址: https://gitcode.com/gh_mirrors/sy/synfig Synfig Studio是一个功能强大的开源2D动画制作工…

作者头像 李华