当前位置: 首页 > news >正文

Milk-V Duo开发环境一站式部署指南

1. 开箱即用:Milk-V Duo开发板初体验

第一次拿到Milk-V Duo这块RISC-V开发板时,我完全能理解新手那种既兴奋又忐忑的心情。这块只有信用卡三分之一大小的板子,却藏着双核64位RISC-V处理器的强大性能。作为嵌入式开发的新手玩具,它最吸引人的地方在于200元不到的亲民价格和完整的开源生态支持。

我建议你先花5分钟做个硬件体检:核心板上的Type-C接口是否完好?配套的TF卡槽弹簧片是否弹性正常?这些细节往往决定了后续开发体验的顺畅程度。记得我第一次使用时,就因为没注意TF卡插到底,导致系统反复启动失败,白白浪费了两小时排查时间。

2. 硬件准备:别让细节毁了你的开发体验

2.1 必备硬件清单

  • TF卡选择玄学:官方建议2GB以上,但我实测32GB的SanDisk Ultra最稳定。有个坑要特别注意:某些廉价TF卡在持续写入时会出现I/O错误,导致镜像烧录失败。建议在购买前查看商品评论里是否有"烧录失败"关键词。

  • 烧录器的冷知识:市面上常见的USB3.0读卡器其实分两种主控——Realtek和JMicron。经过多次测试,JMicron主控的读卡器在Linux下的兼容性更好。如果你手头的读卡器总是识别异常,不妨换个品牌试试。

  • 焊接避坑指南:给核心板焊接排针时,建议先用美纹纸固定位置。我见过太多新手因为手抖导致排针歪斜,最后连底板都插不进去的惨案。温度控制在300℃左右最合适,每个焊点停留不要超过3秒。

2.2 可选配件推荐

底板虽然不是必须品,但如果你想玩网络功能,建议直接购买官方扩展板。第三方底板可能存在引脚定义不一致的问题,我就遇到过某宝底板将3.3V和GND接反的奇葩情况。额外准备个5V/2A的电源适配器会比单纯依赖USB供电更稳定,特别是在驱动外设时。

3. 软件环境搭建:Ubuntu虚拟机最佳实践

3.1 虚拟机配置技巧

推荐使用VMware Workstation 17+Ubuntu 20.04组合,这是经过社区验证最稳定的环境。分配资源时有三个关键参数:

  • 内存至少4GB(编译时swap使用量会暴增)
  • 硬盘空间建议40GB起步(SDK解压后就要占10GB+)
  • 务必启用CPU虚拟化支持
# 检查虚拟化是否开启 egrep -c '(vmx|svm)' /proc/cpuinfo # 返回值大于0表示已开启

安装完系统后,第一件事是修改软件源为国内镜像。阿里云的源速度最快:

sudo sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list

3.2 依赖安装的隐藏陷阱

官方文档里的build-essential只是基础包,实际还需要这些关键组件:

sudo apt install -y git flex bison ninja-build cmake \ libssl-dev libncurses-dev python3-distutils \ u-boot-tools gcc-riscv64-unknown-elf

特别注意:如果遇到E: Unable to locate package gcc-riscv64-unknown-elf错误,需要先添加工具链仓库:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update

4. SDK配置:从克隆到编译的完整流程

4.1 获取源码的加速技巧

官方仓库托管在GitHub,国内克隆可能会很慢。这里分享两个解决方案:

  1. 使用Gitee镜像:
    git clone https://gitee.com/milkv/duo-buildroot-sdk.git
  2. 通过GitHub代理(需替换your_token):
    git clone https://your_token@github.com/milkv-duo/duo-buildroot-sdk.git

进入目录后先初始化子模块:

cd duo-buildroot-sdk git submodule update --init --recursive

4.2 编译参数调优

默认配置可能不适合你的开发场景,这几个参数值得关注:

  • DUO_SPI_NOR:控制NOR Flash支持
  • DUO_FAST_BOOT:加速启动时间
  • DUO_HDMI_OUTPUT:启用HDMI输出

编译命令建议加上-j参数利用多核优势:

./build.sh -j$(nproc)

编译过程中如果出现内存不足,可以临时增加swap空间:

sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile

5. 镜像烧录:Windows/Linux双平台指南

5.1 Windows平台烧录细节

推荐使用Rufus 3.22+版本,烧录时注意:

  1. 选择DD模式而非ISO模式
  2. 分区类型选MBR
  3. 文件系统保持FAT32

常见问题排查:

  • 如果工具提示"镜像损坏",可能是下载不完整,建议校验SHA256
  • 烧录成功后Windows提示要格式化?千万别点!这是正常现象

5.2 Linux下直接烧录

免去文件传输步骤,直接在Ubuntu下操作:

sudo dd if=duo-buildroot-sdk/out/image-xxx.img of=/dev/sdX bs=4M status=progress

这里的/dev/sdX需要替换为实际TF卡设备名,可以通过lsblk命令确认。务必确认设备名正确,否则可能覆盖系统磁盘!

6. 上电调试:从指示灯看门道

插入TF卡连接Type-C电源后,正常启动流程的指示灯状态应该是:

  1. 红色电源灯常亮
  2. 蓝色状态灯快闪3次后转为慢闪
  3. 绿色用户灯在系统完全启动后可控

如果遇到:

  • 只有红灯亮:可能是镜像烧录失败
  • 蓝灯常亮不闪:大概率是TF卡接触不良
  • 指示灯全灭:检查5V供电是否达标

7. 终端连接:USB网卡模式详解

7.1 驱动安装陷阱

Windows设备管理器里看到"USB Ethernet/RNDIS"设备时,要注意:

  • Win10可能需要手动选择"Remote NDIS Compatible Device"
  • Win11最新版已内置驱动,但旧版需要更新inf文件

连接成功后,开发板默认IP是192.168.42.1,本地适配器应配置为:

  • IP:192.168.42.100
  • 子网掩码:255.255.255.0
  • 网关留空

7.2 终端连接实战

使用Putty或MobaXterm连接时,这些参数很关键:

  • 协议:SSH
  • 端口:22
  • 用户名:root
  • 密码:milkv

首次登录建议立即修改密码:

passwd

8. 进阶技巧:提升开发效率的小工具

8.1 Samba共享配置

在Ubuntu端安装Samba服务:

sudo apt install samba sudo smbpasswd -a $(whoami)

编辑配置文件/etc/samba/smb.conf添加:

[duo-sdk] path = /path/to/duo-buildroot-sdk writable = yes valid users = your_username

重启服务后,Windows端就能通过\\ubuntu_ip\duo-sdk直接访问代码目录。

8.2 自动化编译脚本

创建build.sh提高效率:

#!/bin/bash cd /path/to/sdk git pull ./build.sh -j$(nproc) && \ scp out/image-xxx.img windows_machine:/target_path/

添加执行权限后,每次只需运行:

chmod +x build.sh ./build.sh
http://www.gsyq.cn/news/1602292.html

相关文章:

  • UniApp App版本更新:从版本检测到原生弹窗交互的实战指南
  • Win11Debloat:3分钟让Windows 11告别卡顿,重获新生
  • 3步掌握Blender参数化建模:CAD_Sketcher完全指南
  • 微信小程序跳转路径配置避坑指南:从“页面不存在”到精准直达
  • 90%体积缩减:开源媒体压缩工具CompressO,让大文件轻松分享
  • 机器学习驱动的商业预测:从统计建模到工程落地的全链路实战
  • ctfileGet:城通网盘免等待极速下载的终极解决方案
  • iTransformer完整指南:如何用倒置Transformer实现SOTA时间序列预测
  • Ryujinx:免费在PC上畅玩Switch游戏的终极完整指南
  • IPXWrapper技术重构:Windows 11协议桥接与现代化适配方案
  • Win11Debloat:4步简单操作,让你的Windows 11运行如飞 [特殊字符]
  • 终极免费KVM解决方案:用Barrier一套键鼠控制多台电脑的完整指南
  • 3步搞定原神成就管理难题:YaeAchievement成就导出工具完整指南
  • 如何用一款工具解决9大网盘下载难题:LinkSwift完全指南
  • FSearch极速文件搜索:Linux用户的文件查找革命
  • so-vits-svc5.0 从零到一:手把手教你搭建AI声音克隆工作站
  • 半导体制造中的蚀刻工艺:从原理到机台的全景解析
  • Windows 10也能原生运行Android应用:WSA-Windows-10逆向移植项目终极指南
  • AI 工具提升刷题效率:一场为期四周的对照实验报告
  • 5步解决老旧Mac显卡驱动问题:OpenCore Legacy Patcher终极指南
  • 3PEAK思瑞浦 TPA135B3-S5TR-S SOT23-5 电流信号检测放大器
  • LitCAD:免费开源的C二维CAD绘图软件完全指南
  • 5分钟解锁联想拯救者BIOS隐藏功能:让你的笔记本性能翻倍
  • Obsidian插件汉化终极指南:5分钟让英文插件变中文的简单方法
  • 华为交换机802.1X与MAC认证融合部署实战
  • 垂直越权漏洞:原理、探测与修复实战指南
  • CVE-2024-50623漏洞复现:宏景eHR-HCM目录遍历与任意文件读取深度剖析
  • 告别 Origin 熬夜绘图!Okbiye 一站式 AI 科研绘图,搞定期刊全类型图表
  • 从零复现Log4j2漏洞:原理、环境搭建与实战利用
  • Adobe-GenP 3.0:免费解锁Adobe全家桶完整功能的终极指南