milkV-duo的Linux的开发环境搭建

news2024/11/16 21:56:43

目录

写在前面

内核编译

烧录失败的示例(这种情况下就和插上空卡一样)

进入系统

串口进入

SSH接入


写在前面

基本上大部分的问题都能在开源社区上得到答案,记录下我遇到的问题.

附上开源社区

MilkV Community

这里的引脚图和板子的丝印有点对不上,比如说后面串口0. 

 

内核编译

在这里,需要用到 Mirco sd卡,准确的说是TF卡,TF卡比sd卡小,可通过一个转接器适配SD卡.

参考

基于Ubuntu20.04详细的Duo编译环境搭建指南 - Duo - MilkV Community

 若直接快速开始则烧录官网提供的以及编译好的镜像

Releases · milk-v/duo-manifest (github.com)

可参考

Boot the Duo | Milk-V (milkv.io)s

 比如说通过这个balenaElcher软件烧录镜像,我遇到的问题校验失败,问了群里的佬是不需要管校验是否成功,但把SD卡插回DUO结果依然跑不起来.

 

我的解决方案:

  1. 在win11下格式化sd卡,选择NTFS文件系统。
  2. 用windows32Diskmanger成功烧录了镜像。

烧录失败的示例(这种情况下就和插上空卡一样)

:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)

:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
E:Boot failed (8).
E:ra=0x440a264
E:RESET:panic:-1
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.SNF.USBI.BS/EMMC.PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)
PS. E:load param1 (-78)

进入系统

串口进入

通过USB转TTL串口连接可以成功进入。波特率115200.引脚按宣传图上去配置即可。

SSH接入

这里就需要用到RNDIS了.

我之前还在想一块板子如果本身不提供WIFI,怎么可能会有局域网下的IP地址。

结果就是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插串口线。使得交互变得便捷。

参考官方文档上的:

Set up the working environment | Milk-V (milkv.io) 

遇到的问题:

win11 下通过typec去连接duo开发板,结果显示没有RNIDS设备,如果有RNDIS设备却没有驱动则会在其他设备那显示叹号!.

 于是查资料,判断是否是系统文件缺失的问题:(至于为什么要查,来自gpt的回复)

 如图 RNDISMP.sys存在,所以不会是系统的问题.

后面换了一根TYPEC线,问题得到解决.(结果却是线的问题),再根据官方文档上来更新RNDIS驱动问题解决。

 

成功进入系统开始愉快继续折腾:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/605134.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

竞赛中常用的Python 标准库

对竞赛中常用得标准库进行解析和给出代码模板 目录 1.functools 1.1 cmp_to_key 1.2 lru_cache(记忆化存储,加快递归速度) 2.collections 2.1 deque 2.1.1 单调对列实现 2.1.2 BFS广搜 3.sys 3.1 sys.maxsize 3.2 sys.exit() 3.…

使用python的plot绘制loss、acc曲线,并存储成图片

使用 python的plot 绘制网络训练过程中的的 loss 曲线以及准确率变化曲线,这里的主要思想就时先把想要的损失值以及准确率值保存下来,保存到 .txt 文件中,待网络训练结束,我们再拿这存储的数据绘制各种曲线。 其大致步骤为&#x…

代码自动生成工具——TableGo(实例演示)

一、常用的代码生成器工具介绍 在SpringBoot项目开发中,为了提高开发效率,我们经常需要使用代码自动生成工具来生成一些重复性的代码,比如实体类、DAO、Service、Controller等等。下面介绍几个常用的代码自动生成工具: ①、MyBat…

如何在Linux 启用组播

第一章: 前言 多播技术,也被称为“组播”,是一种网络通信机制,它允许一个节点(发送者)向一组特定的节点(接收者)发送信息。这种方式在网络编程中非常有用,因为它可以大大提高效率和…

深度学习(Pytorch):Softmax回归

Softmax简介 Softmax回归是一个用于多类分类问题的线性模型,它是从Logistic回归模型演变而来的。Softmax回归与Logistic回归类似,但是输出不再是二元的,而是多类的。Softmax回归引入了softmax激活函数来将输出转换为合理的概率分布。与线性回…

HCIE-Cloud Computing LAB备考--第五题:规划--Type13练习--记忆技巧+默写

对LLD表,交换机接口表,ensp配置进行练习,如下图,设置答案和空白表,进行默写,汇总自己的容易犯的错误 LLD表默写思路 交换机接口配置表默写思路 以Type3为例,同颜色复制即可,共用ST.P0是A25,ST.P2是A21,FS是ST.P0是A21,ST.P2是A21。 ensp配置默写思路 特点: 所…

一步一步学习 Stable Diffusion

一步一步学习 Stable Diffusion 0. 背景1. 安装2. 汉化3. 安装 sd-webui-controlnet 插件4. 安装 sd-webui-segment-anything 插件5. 安装 ultimate-upscale 插件6. 安装 SadTalker 插件7. 下载和配置 VAE 模型8. 使用 ChilloutMix 模型99. 未完待续 0. 背景 网上看了很多 Sta…

priority_queue(优先级队列)

priority_queue 1. priority_queue的介绍及使用1.1 priority_queue的介绍1.2 priority_queue的使用1.2.1 constructor(构造)1.2.2 empty1.2.3 size1.2.4 top1.2.5 emplace1.2.6 push、pop、swap 1.3 数组中第K个大的元素 2.priority_queue的深度剖析及模拟实现 1. priority_que…

Makerbase SimpleFOC ESP32例程4 双电机闭环速度测试

Makerbase SimpleFOC ESP32例程4 双电机闭环速度测试 第一部分 硬件介绍 1.1 硬件清单 序号品名数量1ESP32 FOC V1.0 主板12YT2804电机2312V电源适配器14USB 线156pin杜邦线2 注意:YT2804是改装的云台无刷电机,带有AS5600编码器,可实现360连续运转。…

柔性作业车间调度

1柔性车间作业调度 个工件 要在 台机器 上加工。每个工件包含一道或多道工序,工序顺序是预先确定的,每道工序可以在多台不同加工机器上进行加工,工序的加工时间随加工机器的不同而不同。调度目标是为每道工序选择最合适的机器、确定每台机器…

【C语言】语言篇——数组和字符串

C站的小伙伴们,大家好呀😝😝!我最近在阅读学习刘汝佳老师的《算法竞赛入门经典》,今天将整理本书的第三章——数组和字符串的一些习题,本章习题较多,下选取部分习题进行练习总结,在这…

200道面试题(附答案)

最近有不少小伙伴跑来咨询: 想找网络安全工作,应该要怎么进行技术面试准备?工作不到 2 年,想跳槽看下机会,有没有相关的面试题呢? 为了更好地帮助大家高薪就业,今天就给大家分享两份网络安全工…

ubuntu20.04 ffmpeg mp4转AES加密的m3u8分片视频

样本视频(时长2分35秒): 大雄兔_百度百科 大雄兔_百度百科不知大家否看过世界上第一部开源电影:Elephants Dream(大象之梦)。这是一部由主要由开源软件Blender制作的电影短片,证明了用开源软件也能制作出效果媲美大公司的作品。…

1-9 随机算法【手写+Xmind笔记】

文章目录 1 Min-Cut【手写笔记】1.1 问题描述1.2 解决方案1.3 概率证明 2 赠券收集【手写笔记】3 快排期望【手写笔记】4 素数性质【手写笔记】4.1 基本性质4.2 解决方案4.3 群论4.4 费马小定理4.5 Miller Rabin素性测试 5-6 力矩与偏差【手写笔记】5.1 基础不等式5.2 矩生成函…

[图表]pyecharts模块-柱状图

[图表]pyecharts模块-柱状图 先来看代码: from pyecharts.charts import Bar from pyecharts.faker import Faker from pyecharts.globals import ThemeTypec (Bar({"theme": ThemeType.MACARONS}).add_xaxis(Faker.choose()).add_yaxis("商家A&q…

Spring 核心概念之一 IoC

前言 欢迎来到本篇文章!通过上一篇什么是 Spring?为什么学它?的学习,我们知道了 Spring 的基本概念,知道什么是 Spring,以及为什么学习 Spring。今天,这篇就来说说 Spring 中的核心概念之一 Io…

day2 -- 数据库的安全管理和维护

brief 访问控制的目的不仅仅是防止用户的恶意企图。数据梦魇更为常见的是无意识错误的结果,如错打MySQL语句,在不合适的数据库中操作或其他一些用户错误。通过保证用户不能执行他们不应该执行的语句,访问控制有助于避免这些情况的发生。管理…

Makerbase SimpleFOC ESP32 例程6 双电机闭环位置力矩互控

Makerbase SimpleFOC ESP32 例程6 双电机闭环位置力矩互控 第一部分 硬件介绍 1.1 硬件清单 序号品名数量1ESP32 FOC V1.0 主板12YT2804电机2312V电源适配器14USB 线156pin杜邦线2 注意:YT2804是改装的云台无刷电机,带有AS5600编码器,可实现360连续运…

Go 字节跳动—从需求到上线全流程

走进后端开发流程 整个课程会带大家先从理论出发,思考为什么有流程 大家以后工作的团队可能不一样,那么不同的团队也会有不同的流程,这背后的逻辑是什么 然后会带大家按照走一遍从需求到上线的全流程,告诉大家在流程的每个阶段&am…

angular环境安装 (含nodejs详细安装步骤)

在安装本次环境之前,需要先把本机上的nodejs环境卸载,环境变量手动删除!安装过程种环境才不会产生副作用!实际项目安装的一次记录,踩了太多坑,记录一下,旨在记录!项目需要两个不用版…