Raspberry Pi Pico C/C++ 开发入门教程
本教程将介绍如何使用 Pico VS Code 扩展进行 C/C++ 开发,并指导您配置基于 Pico SDK 的 C/C++ 开发环境。
本教程的核心逻辑适用于所有 RP 系列开发板,但所有操作步骤均以 Raspberry Pi Pico 2 为例进行讲解。如果您使用其他型号的开发板,请根据实际情况修改相应设置。
1. 什么是 Pico C/C++ 开发
Raspberry Pi Pico 的 C/C++ 开发基于官方的 Pico SDK,这是一套专为 RP2040 / RP2350 等 Pico 系列芯片设计的 C/C++ 软件开发工具包。Pico SDK 提供了丰富的 API 库,用于控制 GPIO、I2C、SPI、PWM、ADC 等外设,以及多核处理、定时器、DMA 等高级功能。
为了简化 C/C++ 开发环境的搭建和使用,Raspberry Pi 官方推出了 Pico VS Code 扩展。该扩展集成了以下功能:
- 一键安装:自动安装和管理 Pico SDK、CMake、编译工具链等开发依赖
- 工程管理:通过图形化向导快速创建、导入和配置 C/C++ 工程
- 编译构建:集成 CMake 和 Ninja 构建系统,一键编译生成 UF2 固件
- 烧录调试:支持 UF2 固件烧录,并可通过 OpenOCD 实现断点调试、单步执行和变量查看
- 跨平台支持:在 Windows、macOS 和 Linux 上提供统一的开发体验
- 本教程适用于树莓派 Pico、Pico 2 与微雪电子开发的所有 RP 系列开发板
- 安装教程默认以 Windows 11 为例,其他操作系统请参考 树莓派官方教程
2. 安装 Visual Studio Code 编辑器
-
下载并安装 Visual Studio Code。
-
安装时建议勾选 通过 Code 打开操作添加到 Windows 资源管理器文件上下文菜单,以便快速打开项目文件夹。
提示如果已安装 VS Code,注意检查版本是否为 v1.87.0 或更高版本


3. 安装 Pico 扩展
-
点击扩展,选择从 VSIX 安装

-
选择 vsix 后缀的软件包,点击安装

-
随后 VS Code 会自动安装 raspberry-pi-pico 及其依赖扩展,可以点击刷新查看安装进度

-
右下角显示完成安装,关闭 VS Code

-
离线包中的扩展版本为 0.15.2,安装完成后,更新至最新版本

4. 配置 C/C++ 开发环境
-
打开目录
C:\Users\用户名,将整个 .pico-sdk 拷贝至该目录
-
拷贝完成

-
打开 VS Code,对 Raspberry Pi Pico 扩展中各个路径进行配置

配置如下:
Cmake Path:
${HOME}/.pico-sdk/cmake/v3.28.6/bin/cmake.exe
Git Path:
${HOME}/.pico-sdk/git/cmd/git.exe
Ninja Path:
${HOME}/.pico-sdk/ninja/v1.12.1/ninja.exe
Python3 Path:
${HOME}/.pico-sdk/python/3.12.1/python.exe
5. 创建 C/C++ 工程
-
配置完成后,可以创建一个新工程进行测试。输入工程名称、选择保存路径,然后点击 Create 创建工程。如需使用官方示例代码,可以点击工程名旁的 Example 进行选择

-
成功创建工程

6. 编译 C/C++ 工程
-
首次编译时,需要选择 Pico SDK 版本

-
选择 Yes 进行高级配置
-
选择交叉编译工具链:
- 13.2.Rel1:适用于 ARM 核心(Pico、Pico W 等)
- RISCV.13.3:适用于 RISC-V 核心(Pico 2 的 RISC-V 模式)
根据您的开发板和需求选择对应的工具链

-
CMake 版本选择 Default(使用前面配置的路径)

-
Ninja 构建工具版本选择 Default

-
选择开发板

-
配置完成后,点击 Compile 按钮开始编译

-
编译成功后,会在工程的
build目录下生成.uf2格式的固件文件
7. 烧录固件
提供两种方法将编译好的固件烧录到开发板:
-
使用 Pico VS Code 插件烧录
将开发板通过 USB 连接到电脑,然后点击 Run 按钮直接烧录固件

-
手动烧录固件
1. 按住开发板上的 BOOTSEL 按键
2. 将开发板通过 USB 连接到电脑
3. 电脑会将开发板识别为一个 U 盘设备
4. 将 uf2 格式的固件文件拖拽到 U 盘中
5. 设备会自动重启,完成固件烧录
8. 导入 C/C++ 工程
-
在 Pico VS Code 插件中选择导入工程,然后选择工程所在的目录

-
注意事项:导入的工程中,
CMakeLists.txt文件不能包含中文(包括注释),否则可能导致导入失败 -
开发板配置:导入工程后,需要检查
CMakeLists.txt文件是否包含开发板配置代码。只有包含以下配置,才能正常切换 Pico 和 Pico 2:
set(PICO_BOARD pico2 CACHE STRING "Board type")提示如果
CMakeLists.txt中没有此配置,即使在 VS Code 中选择了 Pico 2,编译出的固件仍然是针对 Pico 的