环境配置
安装 Rust
本书示例基于 Rust 工具链开发,推荐使用官方的 rustup 安装器完成配置。
- Windows:访问 https://win.rustup.rs/ 下载并运行
rustup-init.exe,按提示选择默认安装。 如提示缺少构建工具,可先安装 Visual Studio Build Tools。 - Linux:使用官方脚本安装:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - macOS:可以同样使用官方脚本,或先通过 Homebrew 安装基础依赖后再运行 rustup:
/bin/bash -c "$(curl -fsSL https://sh.rustup.rs)"
安装完成后,重启终端并确认版本:
rustc --version
cargo --version
如果之前安装过旧版本,可执行 rustup update 升级。
之后,你还可以使用 rustup 命令来安装 Rust 和 Cargo 的测试版(beta)或 nightly 版本。
Picotool
picotool 是一个用于操作 RP2040/RP2350 二进制文件的工具,在设备进入 BOOTSEL 模式时可与其交互。
预编译二进制
你也可以直接从 这里 下载 SDK 工具的预编译版本,这通常比按步骤构建更为简单。
下面是我采用的快速安装步骤摘要:
# 安装依赖
sudo apt install build-essential pkg-config libusb-1.0-0-dev cmake
mkdir embedded && cd embedded
# 克隆 Pico SDK
git clone https://github.com/raspberrypi/pico-sdk
cd pico-sdk
git submodule update --init lib/mbedtls
cd ../
# 设置 Pico SDK 的环境变量
PICO_SDK_PATH=/MY_PATH/embedded/pico-sdk
# 克隆 Picotool 仓库
git clone https://github.com/raspberrypi/picotool
编译并安装 Picotool:
cd picotool
mkdir build && cd build
# cmake ../
cmake -DPICO_SDK_PATH=/MY_PATH/embedded/pico-sdk/ ../
make -j8
sudo make install
在 Linux 上,你可以添加 udev 规则以便无需 sudo 即可运行 picotool:
cd ../
# 在 picotool 克隆目录下
sudo cp udev/60-picotool.rules /etc/udev/rules.d/
Rust 目标三元组
要为 RP2350 芯片构建并部署 Rust 代码,需要添加相应的目标:
rustup target add thumbv8m.main-none-eabihf
rustup target add riscv32imac-unknown-none-elf
probe-rs —— 烧录与调试工具
probe-rs 是一套现代的、原生 Rust 的嵌入式烧录与调试工具链,它同时支持 ARM 与 RISC-V 平台,并可以直接与硬件调试器配合使用。对于使用 Debug Probe 的 Pico 2,probe-rs 是进行烧录和调试的常用工具。
使用官方安装脚本安装 probe-rs:
curl -LsSf https://github.com/probe-rs/probe-rs/releases/latest/download/probe-rs-tools-installer.sh | sh
有关最新安装说明,请参考 probe-rs 官方文档。
默认情况下,Linux 上的调试器只能由 root 访问。为了避免每次都使用 sudo,建议安装相应的 udev 规则,使普通用户也能访问调试器。请按照此处的步骤进行配置。
快速摘要:
- 从 probe-rs 仓库下载 udev 规则文件(69-probe-rs.rules)
- 将其复制到
/etc/udev/rules.d/ - 使用
sudo udevadm control --reload重新加载规则 - 拔掉并重新插入 Debug Probe
完成上述配置后,你就可以在无需 root 权限的情况下使用 probe-rs 了。