Ai-M61-32S-Kit 开发板 Rust 裸机编程指南:环境准备
前言
前段时间吧,在某站上瞎逛的时候,看到了个能白嫖的视频:
白拿开发板第二期 | 安信可论坛疯狂福利!免费领取 Ai-M61-32S 开发板,不限量!_哔哩哔哩_bilibili
当时寻思有点好玩,再加上之前用 stm32 开发的也挺顺利的,就去嫖了一个板子回来,想着估计把玩一两天就能点亮了。
结果板子是去年 12 月初到的,现在都快到今年 2 月的下旬了,才成功点亮板子。
现在回过头来整理一下资料吧。
开发环境配置
RISC-V 硬件准备
这里我使用的是安信可送的 Ai-M61-32S-Kit 开发板,规格书可以见:ai-m61-32s-kit_v1.1.0 规格书 20230324.pdf (ai-thinker.com)。不过这个板子说实话缺少了开发板最重要的东西:调试器接口。
虽然说吧,这玩意虽然用到的少,但没有就有点难受了,虽然似乎可以通过配置 gpio 口功能的方式复用,但对于连灯都还没能点亮的时候就基本等于没得调试,全靠摸索。而且博流的东西嘛,DDDD,资料是真的少啊。
GCC 环境配置
虽然这里是用到了 Rust 来进行开发,不过因为基本还是得看着博流那个 SDK 来对着做,因此这里还是要安装一下 GCC 工具链。这里因为 Pacman 软件包管理器用起来太舒服了,因此推荐安装 MSYS2 环境来进行后续操作。
MSYS2 的安装部分我这里就略过了,按照MSYS2 官网的图文说明进行安装即可。安装好之后按照文档的说明完成如下配置(其实这里配不配都行,只是我有在用 Windows Terminal 和 Visual Studio Code):
- 在 Windows Terminal 中配置 UCRT64 终端:Terminals - MSYS2
- 让 Visual Studio Code 使用 UCRT64 终端:IDEs and Text Editors - MSYS2
之后打开终端,输入如下的命令安装 GCC 工具链(有点点大):
1 | pacman -S mingw-w64-x86_64-toolchain |
Rust 开发环境配置
首先安装 Rust 版本管理器 rustup 和 Rust 包管理器 cargo,这里我们用官方的安装脚本来安装:
1 | curl https://sh.rustup.rs -sSf | sh |
回车后,根据下面的输出进行配置
1 | info: downloading installer |
等待上面的操作完成后,如果没有提示什么错误信息,cargo 和 rustup 就已经被成功安装了。此时可以输入如下的命令确认已经正确安装了 Rust 工具链:
1 | rustc --version |
如果已经正确安装,则可以看到如下的当前安装的工具链的版本
1 | rustc 1.76.0 (07dca489a 2024-02-04) |
接下来把后面开发需要用到的一些软件包给装装
1 | rustup target add riscv32imac-unknown-none-elf |
可能遇到的问题
- Pacman 下载软件的时候出现速度慢或者连接失败的问题
请更换 Pacman 的软件源为国内源,例如要更换为中科大的源则在终端内输入命令:
1 sed -i "s#mirror.msys2.org/#mirrors.ustc.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*替换镜像源后,再执行
pacman -Sy
刷新软件包数据即可
- 配置 Rust 环境时官方那个脚本下载失败或下载速度慢
将 rustup 的镜像地址修改为国内源,例如可以换成中科大的源:
1
2
3 export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup
curl https://sh.rustup.rs -sSf | sh