Milk-V Duo开发板(图4)是一款基于CV1800B芯片(RISC-V架构,C906@1Ghz + C906@700MHz)的超紧凑型嵌入式开发平台。它支持64MB RAM,可通过扩展实现10/100Mbps以太网,可以运行Linux和RTOS系统,为专业人士、工业ODM、AIoT爱好者、DIY爱好者和创作者提供可靠、低成本、高性能的平台。
镜像烧录,搭建LINUX系统
从Milk-V 官方
https://milkv.io/docs/duo/resources/image&sdk,我这里下的是milkv-duo-20230616-2232.img.zip 这个文件。
我准备了一张8GB 的 microSD 卡、一个读卡器、一根能稳定传输数据的Type-C 数据线;
在网站上下载 balenaEtcher软件 ,使用 balenaEtcher 烧录镜像
先选择设备,注意选你插上去的读卡器那个盘,再选择镜像,最后点击开始即可。



上图板子上蓝灯闪烁;即LINUX系统搭建成功。
安装RDNS网络及SSH接入
SSH接入这里就需要用到RNDIS.
什么是RNDIS:
RNDIS(Remote Network Driver Interface Specification)是微软定义的一种网络设备接口规范。它允许USB设备(如手机、平板电脑)使用USB数据线与主机(如PC)连接后,通过USB接口实现网络功能。RNDIS的主要作用是:
1. 允许USB设备在连接到主机后,表现为一个标准的以太网适配器,并被分配网络地址。这使得USB设备可以像常规网络设备一样访问网络。
2. 使USB设备的网络功能不依赖于特定的主机平台或操作系统。只要主机支持RNDIS协议,就可以实现与USB设备的网络互联。
3. 简化USB设备的网络协议栈设计,只需要实现RNDIS协议即可支持多种主流操作系统。有了IP地址于是可以SSH进行连接而不需要每次都需要USB转TTL插串口线。使得交互变得便捷。


SSH接入通过下载并使用Putty连接板子和电脑;首次连接会有如下提示,直接输入 yes。密码是 milkv 这个不回显,敲完回车即可。


通过命令可以使闪烁的蓝色LED灯变为亮或灭
通过命令可以关闭闪烁的蓝色LED灯,方便我们使用命令做GPIO测试。LED闪烁是通过开机脚本设定的,我们只需要把blink.sh改个名,让它开机时执行不了这个脚本就行。
输入命令mv /mnt/system/blink.sh /mnt/system/blink.sh_backup && sync
reboot
等待重启完毕后,LED就不会自动闪烁了。
GPIO引脚控制实验
通过原理图可知,蓝色LED连接到了XGPIOC[24]引脚
查阅引脚映射可知,XPIOC[0]对应的NUM=416,那么XPIOC[24]对应NUM=440
通过以下命令导出GPIO440;cd /sys/class/gpio
echo 440 > ex运行命令,列出 GPIO 目录,检查是否出现 gpio440,确认导出成功。
ls /sys/class/运行命令echo "out" > gpio440/direc将gpio440 方向设置为输出。
通过命令查看确认设置成功
cat gpio440/direct运行命令,将GPIO440的值设为1,即高电平,输入代码echo "1" > gpio440/v;观察到开发板蓝色LED常亮;反之设为0,则LED熄灭


作者:戎戎
面包板社区原创
https://mbb.eet-china.com/forum/topic/158161_1_1.html
关注“电子工程专辑”加小编微信
现已开放地区群,请发送消息【深圳】【上海】【北京】【成都】【西安】到公众号