news 2026/4/15 12:04:35

树莓派pico操作指南:使用Thonny编写第一个程序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
树莓派pico操作指南:使用Thonny编写第一个程序

从零点亮第一盏灯:手把手带你玩转树莓派Pico与Thonny

你有没有过这样的经历?买回一块开发板,插上电脑却不知道下一步该点哪里;翻遍教程,满屏的“烧录固件”“串口驱动”“交叉编译”让人望而却步。如果你正被这些问题困扰,那今天这篇指南就是为你准备的。

我们不讲术语堆砌,也不甩复杂流程——就用最简单的方式,让你在30分钟内,亲手让树莓派Pico上的LED开始闪烁。整个过程不需要C语言基础、不用命令行、甚至不需要提前安装一堆工具。你需要的,只是一根USB线、一台普通电脑,和一点点好奇心。


为什么是树莓派Pico?它真的适合新手吗?

市面上的微控制器五花八门:Arduino、ESP32、STM32……为什么偏偏选Pico?答案很简单:它把“入门”这件事做到了极致

树莓派Pico不是那种跑Linux系统的单板电脑(比如经典的Raspberry Pi 4),而是一款专为实时控制设计的微控制器,核心芯片是树莓派自研的RP2040。这意味着它启动快、响应快、资源开销小,更适合直接操控硬件。

更重要的是,它的使用门槛极低:

  • 官方售价仅约4美元;
  • 支持拖拽式编程(像U盘一样拷文件就能刷系统);
  • 可运行MicroPython,让你用接近自然语言的代码控制硬件;
  • 配合Thonny IDE,几乎实现“即插即用”。

换句话说,你可以完全跳过传统嵌入式开发中那些繁琐的环境配置环节,直接进入“写代码—看效果”的正向反馈循环。而这,正是初学者最需要的东西。


核心三件套:Pico + MicroPython + Thonny 是怎么配合工作的?

要理解整个流程,先搞清楚这三个角色分别干什么:

组件角色
树莓派Pico硬件执行者,真正去点亮LED的那个“工人”
MicroPython软件系统,让Pico能听懂Python代码
Thonny编程工具,你在电脑上写代码、传程序、调试的地方

它们的关系就像这样:

[你] → 在 [Thonny] 写代码 → 发送给运行了 [MicroPython] 的 [Pico] → 控制硬件动作

其中最关键的一环是:Pico出厂并不自带MicroPython,我们需要先给它“装系统”。但别担心,这个过程比手机刷机还简单。


第一步:给Pico“装系统”——刷入MicroPython固件

这一步只需要5个动作,全程无需任何软件操作。

  1. 下载固件
    - 打开官网:https://micropython.org/download/rp2-pico/
    - 找到Raspberry Pi Pico板型,点击下载.uf2文件(例如micropython-rp2-pico-20240607-v1.23.0.uf2

  2. 进入烧录模式
    - 按住Pico上的BOOTSEL按钮(一个小白点旁边的小按键)
    - 用USB线把Pico连到电脑
    - 等1秒后松开BOOTSEL

✅ 成功标志:你的电脑会弹出一个叫RPI-RP2的U盘!

  1. 拖进去就完事
    - 把刚才下载的.uf2文件直接拖进这个U盘里
    - 几秒钟后,U盘自动消失,Pico重启并进入MicroPython模式

🎉 恭喜!你现在拥有一块会说Python的微控制器了。


第二步:打开Thonny,连接Pico

接下来要用到我们的主力工具——Thonny

安装Thonny(一次搞定)

  • Windows/macOS用户:去官网 https://thonny.org 下载安装包,一键安装。
  • Linux用户:多数发行版仓库已包含,如Ubuntu可执行:
    bash sudo apt install thonny

推荐使用Thonny 4.0 或以上版本,对Pico支持更好。

连接设备

  1. 启动Thonny
  2. 点击右下角的解释器选择框(默认可能是“CPython”)
  3. 选择:MicroPython (Raspberry Pi Pico)

⚡ 如果一切正常,你会看到状态栏变成绿色,并显示类似/dev/ttyACM0COM5的串口信息。

这就意味着:你的电脑已经和Pico建立了对话通道


第三步:写下人生第一个嵌入式程序 —— 让LED闪起来

现在,让我们来写一段真正的“Hello World”级代码:控制Pico板载LED闪烁。

from machine import Pin import time # GPIO25 是板载LED对应的引脚 led = Pin(25, Pin.OUT) while True: led.on() time.sleep(1) led.off() time.sleep(1)

别急着复制粘贴,我们一行行拆解这段代码到底干了什么:

  • from machine import Pin
    导入控制GPIO(通用输入输出)的类。这是MicroPython专为硬件操作提供的模块。

  • led = Pin(25, Pin.OUT)
    创建一个输出引脚对象,连接到第25号GPIO。Pico的LED焊死在这个引脚上,所以不需要外接电路。

  • led.on()/led.off()
    分别代表拉高/拉低电压,也就是开灯和关灯。

  • time.sleep(1)
    停1秒。注意这里的单位是,而且支持小数,比如time.sleep(0.5)就是半秒。

  • while True:
    死循环,确保灯一直闪下去,直到断电或手动停止。


第四步:运行!见证奇迹的时刻

在Thonny中完成以下操作:

  1. 把上面的代码粘贴进编辑区
  2. 点击绿色的Run按钮(或按F5)
  3. 第一次运行时会提示保存文件,建议命名为main.py

🔔 关键选项:勾选“Save copy of script to device”

为什么要这么做?因为一旦勾选,下次你再给Pico通电时,它就会自动运行这个程序!相当于设为了“开机自启”。

点击确定后,你会发现——板子上的小绿灯开始一亮一灭,每秒一次,稳得不行

🎉 成功了!你刚刚完成了自己的第一个嵌入式项目。


调试技巧:REPL终端才是真正的神器

Thonny最强大的功能之一,就是底部的Shell窗口(也叫REPL:读取-求值-打印循环)。

你可以在这里直接输入Python命令,立刻看到结果。比如试试这些:

>>> led.on() # 立刻亮灯 >>> led.off() # 立刻灭灯 >>> print("Hello Pico!") # 打印文字 Hello Pico!

这有什么用?太有用了!

  • 快速测试某个引脚是否正常工作
  • 实时查看变量状态
  • 动态调整参数(比如改延时时间)
  • 排查语法错误(比看报错日志直观多了)

你可以把它当成一个“即时聊天窗口”,随时和你的Pico对话。


常见问题避坑指南(都是血泪经验)

别以为只有你能遇到问题,下面这几个坑,90%的新手都踩过:

❌ 插上线没反应?电脑识别不了Pico

检查BOOTSEL有没有按对:必须先按住,再插USB,等U盘出现再松手。顺序错了就不行。

❌ 显示“找不到串口”或“端口不可用”

关闭其他可能占用串口的软件,比如串口助手、Arduino IDE、VS Code的串口插件等。

❌ 程序上传失败,提示内存不足

不要一次性加载太多大文件。Pico的Flash空间有限,尤其是当你放了很多.py文件的时候。定期清理无用脚本。

❌ LED不闪,但代码没错

确认是不是板载LED。有些用户误接了外部LED却忘了加限流电阻,导致电流过大损坏IO口。建议初次实验优先使用板载LED。

❌ 修改代码后重新运行,还是旧逻辑?

记得重启Pico,或者在Thonny里点“Stop/Restart”按钮。否则旧进程还在跑,新代码无法生效。


更进一步:你可以怎么玩?

恭喜你跨过了最难的第一步。现在,你的Pico已经是个会Python的小机器人了。接下来可以尝试这些升级玩法:

💡 接一个按钮,做个互动开关

button = Pin(15, Pin.IN, Pin.PULL_UP) if button.value() == 0: print("按钮被按下!")

🌡️ 加个DHT11温湿度传感器

import dht sensor = dht.DHT11(Pin(16)) sensor.measure() print(sensor.temperature(), sensor.humidity())

📢 用PWM让LED渐明渐暗

from machine import PWM pwm = PWM(Pin(25)) pwm.freq(1000) for i in range(0, 65535, 1024): pwm.duty_u16(i) time.sleep(0.01)

🖥️ 连OLED屏幕显示信息

借助framebuf和I2C接口,轻松绘制图形和文字。


写在最后:这不是终点,而是起点

当你第一次看到那个小小的LED按照你的指令规律闪烁时,也许会觉得:“就这么简单?”

但正是这份“简单”,背后藏着现代嵌入式开发的巨大进步。过去我们需要掌握寄存器配置、中断处理、链接脚本才能点亮一盏灯;而现在,一个高中生也能在半小时内做到。

但这不意味着技术贬值了,恰恰相反——它让我们能把精力集中在更有价值的事情上:创造、整合、创新

无论你是想做一个智能盆栽监测系统,还是为孩子打造一个互动玩具,亦或是作为进入专业嵌入式领域的跳板,树莓派Pico + Thonny 的组合都能给你一个平滑的起跑线。

所以,别停在这里。
去拆一个旧电器看看里面的传感器,
去淘宝搜“Pico 扩展板”,
去GitHub找开源项目学习思路。

硬件世界的大门已经打开,现在轮到你走进去了。

如果你在实现过程中遇到了挑战,欢迎留言交流。我们一起解决下一个问题。

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

qmc-decoder完全指南:轻松解密QQ音乐加密文件

qmc-decoder完全指南:轻松解密QQ音乐加密文件 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder 还在为QQ音乐的加密音频文件无法在其他播放器中使用而困扰吗&…

作者头像 李华
网站建设 2026/4/5 20:10:10

MediaPipe Holistic避坑指南:云端部署这些坑我都帮你踩过了

MediaPipe Holistic避坑指南:云端部署这些坑我都帮你踩过了 你是不是也经历过这样的崩溃时刻?项目马上要上线,客户等着看效果,结果本地部署MediaPipe Holistic三天三夜都搞不定——CUDA版本不匹配、显存爆了、依赖冲突报错一堆……

作者头像 李华
网站建设 2026/4/8 18:16:37

DLSS Swapper终极指南:游戏画质与性能双提升的智能解决方案

DLSS Swapper终极指南:游戏画质与性能双提升的智能解决方案 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper 在当今游戏技术快速发展的时代,DLSS Swapper作为一款革命性的DLL管理工具&#xff0c…

作者头像 李华
网站建设 2026/4/15 10:35:34

MetaTube插件高效部署指南:打造智能家庭影院系统

MetaTube插件高效部署指南:打造智能家庭影院系统 【免费下载链接】jellyfin-plugin-metatube MetaTube Plugin for Jellyfin/Emby 项目地址: https://gitcode.com/gh_mirrors/je/jellyfin-plugin-metatube MetaTube作为Jellyfin和Emby平台的强大元数据管理插…

作者头像 李华
网站建设 2026/3/27 15:09:41

提升50%效率!DeepSeek-OCR-WEBUI在合同处理中的应用

提升50%效率!DeepSeek-OCR-WEBUI在合同处理中的应用 1. 引言:合同处理的效率瓶颈与技术破局 在现代企业运营中,合同管理是法务、财务及商务团队的核心工作之一。然而,大量纸质或扫描版PDF合同的存在,使得信息提取、归…

作者头像 李华
网站建设 2026/4/10 1:55:42

QMC音频文件解密技术深度解析:打破QQ音乐格式限制的专业方案

QMC音频文件解密技术深度解析:打破QQ音乐格式限制的专业方案 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder 在数字音乐版权保护日益严格的今天,QQ音…

作者头像 李华