全志D1s开发板裸机开发之坏境搭建

news2025/1/16 17:05:10

环境搭建

开发板介绍

张天飞老师编写的《RISC-V体系结构编程与实践》,里面的源码是基于 QEMU 模拟器的,可以认为它是一款虚拟的开发板。如果需要在真实开发板上学习,可以使用百问网的 DongshanPI-D1S 开发板。

DongshanPI-D1S 是百问网推出的一款基于 RISC-V 架构的学习裸机、 RTOS 的最小开发板。集成 CKLink 调试器,支持 OTG 烧录、 GDB 调试、串口打印,并将主芯片所有的信号全部引出,其中左右两侧兼容了树莓派的电源信号定义,可以很方便扩展模块。

D1S 是针对智能解码市场推出的高性价比 AIoT 芯片,它使用阿里平头哥的 64bit RISC-V 架构的 C906 处理器,内置了 64M DDR2 ,支持 FreeRTOS、RT-Thread 等 RTOS ,也支持 Linux 系统。同时集成了大量自研的音视频编解码相关 IP ,可以支持 H.265、H.264、MPEG-1/2/4、JPEG 等全格式视频解码,支持 ADC、DAC、12S、PCM、DMIC、OWA 等多种音频接口,可以广泛应用于智能家居面板、智能商显、工业控制、车载等产品。

在这里插入图片描述

下载资料

资料分两部分:开发板通用资料、《RISC-V体系结构编程与实践》的 D1S 源码。前者比较庞大,放在百度网盘;后者放在书籍配套的 GITEE 网站。

《RISC-V体系结构编程与实践》的 D1S 源码:

打开https://gitee.com/weidongshan/riscv_programming_practice,登录后按如下界面操作:

在这里插入图片描述

点击“克隆/下载”按钮之后,如下点击 下载ZIP 即可:

在这里插入图片描述

如果你没有点击 下载ZIP,而是使用 GIT 命令来下载,那么下载成功后还需要执行如下命令:

git checkout DongShanPI_D1

安装软件

需要安装如下5个软件,它们都位于网盘资料 开发板通用资料\05_开发配套工具\ 目录下:

Git\Git-2.39.1-64-bit.exe:我们把它当做命令行,不能使用 Windows 自带的 DOS 命令行、Powershell(在里面无法执行 make 命令)

make\make-3.81.exe:make 工具

toolchain\Xuantie-900-gcc-elf-newlib-mingw-V2.6.1-gdbtui-20230210.tar.gz:这是 Windows 版本的交叉编译工具,并且支持 TUI

CKLinkServer\T-Head-DebugServer-windows-V5.16.6-20221102-1510.zip:这是调试服务软件

xfe\xfe.exe:烧写工具

Git Bash

双击 开发板通用资料\05_开发配套工具\Git\Git-2.39.1-64-bit.exe 即可安装。

启动 Git Bash 有两种方法:

① 点击 开始->Git->Git Bash

② 在文件浏览器进入某个目录后,在空白处点击右键弹出菜单后选择 Git Bash Here

在 Git Bash 中各种命令的用法跟 Linux 完全一样,比如也有cdlsrm 等命令。在 Git Bash 中,对路径的表示方法也跟 Linux 一样,比如 D 盘下的 abc 子目录使用 /d/abc 表示,而不是 D:\abc

在 Git Bash 中使用命令简单示范如下:

在这里插入图片描述

make

双击 开发板通用资料\05_开发配套工具\make\make-3.81.exe 即可安装。安装时,要记住安装的路径,需要把安装路径下的 bin 目录放入环境变量 Path 里。

在这里插入图片描述

如下图把 C:\Program Files (x86)\GnuWin32\bin 添加进环境变量 Path :

在这里插入图片描述
在这里插入图片描述

验证:启动 Git Bash 后执行 make -v 命令,如下图所示。

在这里插入图片描述

交叉工具链

开发板通用资料\05_开发配套工具\toolchain\Xuantie-900-gcc-elf-newlib-mingw-V2.6.1-gdbtui-20230210.tar.gz 解压即可,注意路径名不要有中文。

解压后要确认如下目录里的文件不是 0 字节:

在这里插入图片描述

使用有些解压工具比如 banzip 可能会得到 0 字节的文件,建议使用 7-Zip 解压。

解压成功后,可以看到 riscv64-unknown-elf-gcc.exe 文件,如下图所示:

在这里插入图片描述

需要把 riscv64-unknown-elf-gcc.exe 文件所在目录放入 Path 环境变量里,具体方法可以参考 《1.3.2 make》。结果如下图所示:

在这里插入图片描述

验证:启动 Git Bash 后执行 riscv64-unknown-elf-gcc -v 命令,如下图所示( Git Bash 支持命令补全功能,输入 risc 后按 TAB 键会自动补全命令)。

在这里插入图片描述

调试服务软件

先解压文件: 开发板通用资料\05_开发配套工具\CKLinkServer\T-Head-DebugServer-windows-V5.16.6-20221102-1510.zip

再双击里面的 setup.exe 即可安装。

烧写工具

开发板通用资料\05_开发配套工具\xfel 目录复制到其他非中文路径即可。

还需要把 xfel.exe 文件所在目录放入 Path 环境变量里,具体方法可以参考 《1.3.2 make》 。结果如下图所示:

在这里插入图片描述

验证:启动 Git Bash 后执行 xfel --help 命令,如下图所示。

在这里插入图片描述

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

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

相关文章

大语言模型的知识融合(ICLR2024)

一、写作动机: 虽然从头开始训练大型语言模型(LLMs)可以生成具有独特功能和优势的模型,但这种方法成本高昂,而且可能导致功能冗余。 二、主要贡献: 入了 LLMs 知识融合的概念,旨在结合现有 LL…

Python基于opencv的人脸识别上课签到考勤系统,附源码

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

一图看懂:什么是“新质生产力”?

◆2023年9月,首次提出“新质生产力”。 ◆2024年1月,强调“加快发展新质生产力,扎实推进高质量发展”。 ◆2024年3月,《政府工作报告》中提出,要大力推进现代化产业体系建设,加快发展新质生产力。充分发挥…

黄坤朋:沉浸声系统技术方案和调试| 演讲嘉宾公布

一、3D 音频分论坛 3D 音频分论坛将于3月27日同期举办! 3D音频技术不仅能够提供更加真实、沉浸的虚拟世界体验,跨越时空的限制,探索未知的世界。同时,提供更加丰富、立体的情感表达和交流方式,让人类能够更加深入地理解…

Xilinx 7系列 FPGA硬件知识系列(一)——FPGA选型参考

目录 1.1 Xilinx-7系列产品的工艺级别 ​编辑1.2 Xilinx-7系列产品的特点 1.2.1 Spartan-7系列 1.2.2 Artix-7系列 1.2.3 Kintex-7系列 1.2.4 Virtex-7系列 1.3 Xilinx-7系列FPGA对比 1.3.1 DSP资源柱状图 ​1.3.2 Block RAM资源柱状图 ​1.3.3 高速串行收…

【Java设计模式】八、装饰者模式

文章目录 0、背景1、装饰者模式2、案例3、使用场景4、源码中的实际应用 0、背景 有个快餐店,里面的快餐有炒饭FriedRice 和 炒面FriedNoodles,且加配菜后总价不一样,计算麻烦。如果单独使用继承,那就是: 类爆炸不说&a…

浅谈漏洞扫描技术

1. 什么是漏扫 漏洞扫描技术是指利用已有的漏洞数据库,使用扫描匹配的方式对计算机系统进行脆弱性检测,从而实现漏洞发现的一种安全防护手段,漏洞扫描的结果可以用于指导网安的管理人员及时处理系统中的漏洞,防患于攻击之前。 漏…

使用YOLOv7进行视频实时姿态估计

本文基于YOLOv7进行人体姿态的实时估计,并附录完整代码。 概述 YOLO(You Only Look Once)是一种用于目标检测的方法论,同时也是构建于该方法论之上的一系列模型。 自2015年YOLOv1诞生以来,其作者相继提出了YOLOv2(YOLO9000)和YOLOv3等后续版本,并在随后的几年里,深度…

【微信小程序】屏幕适配

在网页中一般是使用 rem 单位,它能够根据html的字号大小自动改变尺寸,开发者可以动态的计算屏幕尺寸,然后根据屏幕大小的不同设置html的字号 小程序解决适配使用 rpx 单位,它能够根据屏幕大小自动进行转换。 每一个机型的宽度和高…

如何制作一份精美的数据分析可视化报告?详细教程

在数据可视化分析的最后阶段,所有的分析、研究、推导以及得出的结论,都汇总成了一份详实的报告。这份报告不仅是对整个数据分析旅程的总结,更是向读者展示这段旅程所取得的成果。 那么,数据分析报告该如何制作呢?不用…

2024年软件设计师全套资料

2024年5月软件设计师全套视频、历年真题及解析、历年真题视频解析、教材、模拟题、重点笔记等资料 1、2023年11月、2022年、2021年全套教程精讲视频。 2、软件设计师2009-2023年5月历年真题及解析(综合知识、案例分析)、2009-2023历年真题视频解析。 3…

VMware永久授权终结,该如何转移阵地减少损失

2023年,随着VMware被博通(Broadcom)收购,VMware产品停止了永久订阅,仅以按年付费订阅的形式提供服务。这无疑是增加了客户在VMware的使用成本,也给VMware的未来带来众多不确定因素。 2024年2月Broadcom终止…

全球IT外包的趋势与发展

随着全球化进程的不断深化,IT外包已经成为众多企业的关键战略之一。IT外包是将企业的信息技术需求委托给第三方服务提供商,以在成本、效率和核心业务专注方面取得优势。在全球化的大背景下,IT外包的发展呈现出一系列新的趋势。 首先&#xff…

使用移动云短信服务发送普通短信与模板短信

今天使用到了用移动云短信服务发送短信功能,顺便记录下 apid,secretKey和集团名称分别为如下图用户名,密码,所属分组 package com.keyou.proj.authentication.service.utils;import cn.hutool.crypto.SecureUtil; import cn.hutool.http.HttpRequest; import cn.hutool.json.J…

有营收再分成,这样的创业你接受么?

今天收到一位客户的询盘,以为要部署系统结果竟然是邀请我做技术合伙人。虽然我已经从小白变成了千年狐狸,听到这个消息还是有点小激动。本着无功不受禄的原则先问了下客户的技术诉求:搭建一套外包系统论坛在线课程,等到有了第一笔…

产业园区如何实现数字化运营管理?

​在数字化浪潮席卷全球的今天,产业园区正经历着前所未有的变革,数字化运营管理成为各个园区转型升级的发力方向,它不仅能够提升园区的运营管理效率,还能够帮助园区提高服务效能、实现精准招商、增强决策效率,从而全面…

学习大数据,所必需的java基础(8)

文章目录 字符缓冲流字符缓冲输出流 _Buffered和Writer字符缓冲输入流字符缓冲流练习 转换流字符编码字符集转换流转换流_OutputStreamWriter序列流和反序列流的介绍序列化流_ObjectOutputStream反序列化_ObjectInputStream不想被序列化操作反序列化时出现的问题以及分析和解决…

Centos扩容

具体操作 1.添加一块硬盘 我们新添加了一块20G的硬盘 2.查看本机磁盘环境 lsblk 当然我这里是已经挂载过的,正常情况下只要出现了sdb就可以了 添加磁盘分区 fdisk /dev/sdb 创建分区: 输入小写字母,没有输入字母的前面有:的都是…

Python接口自动化之cookie、session应用!

以下介绍cookie、session原理及在接口自动化中的应用。 HTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;Session 和 Cookie 的主要目的就是为了弥补 HTTP 的…

公众号公司主体变更如何操作?

公众号迁移有什么用?只能改主体吗?好多朋友都想做公众号迁移,但是又不太清楚具体有啥用,今天我就来详细说说。首先,公众号迁移最重要的作用就是可以修改主体。比如你的公众号原来是 A 公司的,现在 A 公司不…