保姆级 uPyPi 教程|从 0 到 1:MicroPython 驱动包一键安装 + 分享全攻略

uPyPi 平台下载和上传驱动包使用说明

一、快速安装驱动包

如果你是第一次接触 MicroPython 和 uPyPi 平台,不用担心!这份说明会从最基础的准备工作 开始,一步步教你如何在树莓派 Pico2(无网络)和 Pico2W(有网络)上,从 uPyPi 平台下载并使用驱动包(以 bmp280_driver 气压温度传感器驱动为例)。同时也会简要介绍如何上传驱动包(方便有分享需求的使用者)。

1.1 零基础前置准备

在使用 uPyPi 之前,需要准备好硬件、软件,并完成基础设置,缺一不可。

1.1.1 硬件准备

硬件名称 用途 备注
任何支持mpy固件的单片机(如树莓派 Pico2 / Pico2W) 运行 MicroPython 代码的核心硬件 Pico2 无 WiFi 功能(需本地安装);Pico2W 带 WiFi 功能(可远程安装)
USB-C 数据线 连接开发板与电脑,传输代码 / 供电 需支持数据传输(充电线不可用)
BMP280 气压温度传感器模块(可选)或其他常见电子模块 测试驱动包的硬件 用于验证安装的 bmp280_driver 是否可用
杜邦线(若干) 连接开发板与传感器 需准备公对公 / 公对母杜邦线,根据接线需求选择

1.1.2 软件准备

  1. 安装 Thonny 编辑器:

Thonny 是最适合零基础的 MicroPython 开发工具,支持代码编写、开发板连接、文件管理。

  • 下载地址:https://thonny.org/
  • 安装方式:按系统提示下一步安装即可(默认设置无需修改)。
  1. 安装 mpremote 工具(电脑端)

这是电脑与 MicroPython 开发板通信的工具,用于本地安装驱动包不支持联网功能的单片机必备)。

打开电脑的「命令提示符(CMD)」或「PowerShell」,输入以下命令并回车:

bash 复制代码
pip install mpremote

提示「Successfully installed mpremote」即安装成功。

1.2 开发板基础设置(烧录 MicroPython 固件)

你需要首先给你的 MCU 烧录一个 mpy 固件,这里我们以树莓派 Pico2 / Pico2W 为例,出厂无 MicroPython 固件,需先烧录才能使用。

  1. 按住开发板上的 BOOTSEL 按键,同时用 USB-C 线将开发板连接到电脑,松开按键。

  2. 电脑会识别出一个名为「RPI-RP2」的 U 盘。

  3. 打开浏览器,下载对应固件:

  4. 将下载的 .uf2 固件文件复制粘贴到「RPI-RP2」U 盘中。

  5. 复制完成后,开发板会自动重启,U 盘消失,此时固件烧录完成。

1.3 打开 uPyPi 平台搜索包和复制命令

uPyPi 平台是 MicroPython 驱动包的 "集散地",我们可以在这里搜索、查看、下载需要的驱动包。

打开浏览器,访问 uPyPi 官网:https://upypi.net/

在页面顶部的搜索框 中输入 bmp280,点击右侧「搜索」按钮:

搜索结果会显示匹配的驱动包(如 bmp280_driver 1.0.0),点击即可:

进入驱动包详情页,可在页面左侧切换驱动包版本:

页面左侧会显示核心安装命令(本地安装 / 远程安装):

3.4 下载并安装驱动包

根据开发板是否有网络,分为本地安装(Pico2)远程安装(Pico2W) 两种方式。

3.4.1 本地安装(适用于无 WiFi 的开发板)

通过 USB 连接电脑,用 mpremote 工具将 uPyPi 上的驱动包安装到开发板。

输入执行指令:

bash 复制代码
mpremote mip install https://upypi.net/pkgs/bmp280_driver/1.0.0

等待命令执行,终端出现以下内容,即安装成功:

我们也可以使用下面指令查看板内文件确认有没有下载成功:

bash 复制代码
# 查看根文件目录
mpremote fs ls
# 查看'lib/'文件夹下目录
mpremote fs ls 'lib/'

3.4.2 远程安装(适用于有 WiFi 的开发板)

先让开发板连接 WiFi,再直接在开发板的 REPL 终端中安装驱动包。

  • 先用 USB 线将树莓派 Pico2W 连接到电脑,Thonny 自动识别后,点击底部「Shell」面板。
  • 若 Shell 面板显示 >>>,表示已进入 MicroPython 的 REPL 交互模式;若显示其他内容,按「Ctrl + D」重启开发板,即可看到 >>>

在 Shell 面板的 >>> 后,逐行输入以下代码(替换为你的 WiFi 名称和密码),每输入一行按回车:

python 复制代码
import network
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect("你的WiFi名称", "你的WiFi密码")
# 等待连接成功
import time
while not wlan.isconnected():
    print("Connecting to WIFI...")
    time.sleep(1)
print("WIFI Connected! IP Address:", wlan.ifconfig()[0])

若显示「WIFI Connected! IP Address: 192.168.xx.xx」,表示 WiFi 连接成功:

在 Shell 面板的 >>> 后,输入以下完整安装命令:

bash 复制代码
import mip
mip.install("https://upypi.net/pkgs/bmp280_driver/1.0.0")

执行完成后,显示如下即安装成功:

点击左侧「文件」面板中的「Raspberry Pi Pico2」,展开「lib」文件夹,若能看到 bmp280_float.py 文件,说明安装成功:

3.5 使用安装好的驱动包

安装完成后,我们用 BMP280 传感器测试驱动包是否能正常工作,这部分看下面的云文档就可以了:

https://freakstudio.cn/node/019ba20b-b702-7118-a3b3-c3fb7218fd61

四、上传驱动包(进阶:给想分享驱动的使用者)

如果你开发了自己的 MicroPython 驱动,想分享到 uPyPi 让其他人使用,可按以下步骤操作(以 bmp280_driver 为例)。

4.1 准备符合规范的驱动包文件

驱动包的文件目录必须遵循以下结构(参考图片 6-9),缺一不可:

bash 复制代码
你的驱动包文件夹(如 bmp280_driver)/
├── code/                  # 存放核心驱动代码的文件夹
│   ├── 驱动核心文件.py(如 bmp280_float.py)
│   └── 测试示例文件.py(如 main.py,可选)
├── package.json           # 驱动包的"身份证"(必须文件)
├── README.md              # 驱动使用说明(建议文件)
└── LICENSE                # 开源协议文件(建议文件)

package.json 是驱动包的核心配置,必须包含以下必填字段 ,可添加可选字段丰富信息:

json 复制代码
{
  "name": "bmp280_driver",  // 包名,小写,用下划线分隔
  "version": "1.0.0",       // 版本号,遵循 主版本.次版本.修订号 规则
  "urls": [                 // 文件映射:["设备端文件名", "本地文件路径"]
    ["bmp280_float.py", "code/bmp280_float.py"]
  ],
  "description": "控制 BMP280 气压温度传感器的 MicroPython 驱动",  // 可选:功能描述
  "author": "你的名字",     // 可选:作者
  "license": "MIT",         // 可选:开源协议
  "keywords": ["micropython", "bmp280", "传感器"]  // 可选:搜索关键词
}

4.2 上传驱动包到 uPyPi

确保你的项目根目录下包含以下文件(无嵌套文件夹,直接放在根目录):

  • code/:驱动代码文件夹
  • LICENSE:许可证文件
  • package.json:包配置文件(必须包含 nameversion 字段
  • README.md:包说明文档

⚠️ 关键要求:ZIP 包内不能嵌套额外文件夹,所有文件直接在压缩包根目录下(参考示例结构:BH1750_driver.zip → 直接包含 code/package.json 等)。

接下来将库文件打包为 ZIP 压缩包:

  1. 选中项目根目录下的所有文件(code/LICENSEpackage.jsonREADME.md)。

  2. 右键 → 选择「7-Zip」→「添加到压缩包」(或直接选择「添加到 [包名].zip」)。

  3. 在压缩设置中:

    • 压缩格式选择 zip
    • 文件名建议与包名一致(如 BH1750_driver.zip
    • 确认路径模式为「相对路径」,避免生成嵌套目录
  4. 生成 ZIP 包后,检查内部结构:打开 ZIP 确认所有文件直接在根目录,无额外文件夹嵌套。

访问 uPyPi 官网,点击右上角「GitHub 登录」,用你的 GitHub 账号授权登录:

登录后,点击顶部「我的面板」,再点击「点击这里上传第一个包」:

进入上传页面,点击「选择文件」,选中刚才生成的 ZIP 包:

确认文件夹包含 package.json 后,点击「上传包」按钮,等待上传完成:

上传成功后,即可在 uPyPi 搜索到你的驱动包,其他使用者可直接安装。

4.3 常见问题-避免版本冲突与包名重复

在上传驱动包到 uPyPi 时,你可能会遇到像图片中这样的提示:"包 bmp280_driver 版本 1.0.0 已存在"。这是因为 uPyPi 平台对包的管理有严格规则,确保每个包的版本和名称都是唯一的,方便用户准确安装和使用。

uPyPi 不允许同一个包名上传完全相同的版本号。这就像手机 App 的更新日志:

  • 每次修复小 bug、优化代码,都需要更新版本号(比如从 1.0.01.0.1)。
  • 如果版本号不变,平台会认为你在重复上传同一个包,从而拒绝操作。

版本号遵循 "主版本。次版本。修订号" 的规则(语义化版本),每次上传都要递增:

  • 修订号(第三位) :修复小 bug、优化代码细节,比如 1.0.01.0.1
  • 次版本(第二位) :新增功能、兼容新硬件,比如 1.0.11.1.0
  • 主版本(第一位) :大改版、不兼容旧代码,比如 1.1.02.0.0

如果你的包名太宽泛(比如 sensor_driver),很容易和其他开发者的包重名,导致用户安装时混淆。建议遵循以下规则:

  • 包名要具体 :包含硬件型号或功能,比如 bmp280_driver(明确是 BMP280 传感器驱动),而不是 sensor_driver
  • 格式要规范 :全部小写,用下划线 _ 分隔单词,避免空格和特殊字符。
  • 提前搜索验证:在 uPyPi 首页的搜索框中输入你想使用的包名,确认没有重名后再使用。

遇到 "版本已存在" 提示后的解决步骤:

  1. 打开驱动包的 package.json 文件,修改 version 字段为新的版本号(比如 1.0.1)。
  2. 保存文件,确保文件名和内容没有变化。
  3. 回到 uPyPi 上传页面,重新选择驱动包文件夹,点击「上传包」。
  4. 若提示 "上传成功",则版本更新完成;若仍提示错误,检查包名是否重名,或版本号是否确实递增。

五、相关操作视频

https://www.bilibili.com/video/BV1PVwuzpEyg/?spm_id_from=333.1387.homepage.video_card.click&vd_source=696723cd18d516916a1d480d0a2fce46

相关推荐
清水白石0082 小时前
Python 对象序列化深度解析:pickle、JSON 与自定义协议的取舍之道
开发语言·python·json
2401_876907522 小时前
Python机器学习实践指南
开发语言·python·机器学习
张张123y2 小时前
RAG从0到1学习:技术架构、项目实践与面试指南
人工智能·python·学习·面试·架构·langchain·transformer
Shi_haoliu2 小时前
openClaw源码部署-linux
前端·python·ai·openclaw
gf13211112 小时前
python_查询并删除飞书多维表格中的记录
java·python·飞书
带娃的IT创业者3 小时前
WeClaw 离线消息队列实战:异步任务队列如何保证在服务器宕机时不丢失任何一条 AI 回复?
运维·服务器·人工智能·python·websocket·fastapi·实时通信
GetcharZp5 小时前
只有代码是不够的:手搓手机第一课,看懂那条“看不见的河流”
嵌入式
坐吃山猪5 小时前
Python进度条
linux·服务器·python