Milk-V Duo (256M)

blink

外设示例 系统:buildroot 更新:2026-05-06

RuyiSDK 外设示例

安装依赖包


sudo apt update; sudo apt install -y wget tar zstd xz-utils git build-essential

安装 ruyi 包管理器

wget https://mirror.iscas.ac.cn/ruyisdk/ruyi/tags/0.45.0/ruyi-0.45.0.amd64

chmod +x ruyi-0.45.0.amd64

sudo cp -v ruyi-0.45.0.amd64 /usr/local/bin/ruyi

安装工具链


ruyi update

ruyi install gnu-plct llvm-plct

Blink

本文介绍如何使用 RuyiSDK 在 Milk-V Duo 256M 开发板上快速部署编译环境,并构建 LED 闪烁控制程序,验证板载 LED 的控制功能。

1. 准备工作

  • 开发板:Milk-V Duo 256M (256M, SG2002)

  • 其他:microSD 卡、USB Type-C 数据线

操作系统安装与启动验证

确保您的开发板已准备好系统。

参考文档: https://milkv.io/zh/docs/duo/getting-started/boot

2. 获取源码

克隆源码

 
ruyi extract milkv-duo-examples
 
mv milkv-duo-examples-* duo-examples 
 
cd duo-examples
 

3. 编译应用与验证

创建虚拟环境

 
ruyi venv -t toolchain/gnu-plct manual venv-gnu-plct
 
. ~/venv-gnu-plct/bin/ruyi-activate
 

验证工具链版本

 
riscv64-plct-linux-gnu-gcc -v
 

编译 LED 闪烁程序

 
cd blink
 
riscv64-plct-linux-gnu-gcc blink.c -o blink \
    -I../include \
    -I../wiringX/src \
    -L../libs/system/musl_riscv64 \
    -lwiringx
 

验证结果

检查生成的二进制文件:

 
file blink
 

4.传输并运行

默认用户名:root,默认密码:milkv

 
# 传输到开发板
 
scp blink root@192.168.42.1:/root/
 
# SSH 登录开发板
 
ssh root@192.168.42.1
 

禁用系统自带 LED 脚本

运行 blink 程序前,需要先禁用系统自带的 LED 闪烁脚本,避免冲突:

 
mv /mnt/system/blink.sh /mnt/system/blink.sh_backup && sync
 
# 执行完后,需要重启开发板,使禁用生效:
 
reboot
 

重启后重新 SSH 登录

 
ssh root@192.168.42.1
 
# 运行测试
 
./blink
 

运行后终端持续输出 LED 状态:

 
Duo LED GPIO (wiringX) 25: High
 
Duo LED GPIO (wiringX) 25: Low
 
Duo LED GPIO (wiringX) 25: High
 
Duo LED GPIO (wiringX) 25: Low
 
...
 

蓝色 LED 会同步闪烁:High 亮起, Low 熄灭。

Ctrl+C 可终止程序。

5.恢复系统原有 LED 功能

测试完成后,如需恢复系统默认 LED 闪烁:

 
ssh root@192.168.42.1
 
# 恢复 LED 脚本
 
mv /mnt/system/blink.sh_backup /mnt/system/blink.sh && sync
 
# 重启开发板使恢复生效
 
reboot