嵌入式软件—RK3568开发环境搭建

一、RK3568

1.1 开发板特点

BSP比较大,对于电脑内存和存储空间要求高

1.2 BSP

BSP(Board Support Package,板级支持包),类似于PC系统中BIOS和驱动程序的集合,BSP包含的范围更广,除了外设驱动程序,还有系统底层的硬件支持引导加载程序。没有BSP,嵌入式系统便无法正常启动。

BSP = bootloader + 外设驱动程序

BSP介于硬件平台和操作系统之间,是一个中间层软件,既与硬件相关,也与操作系统相关。底层硬件具有多样性,BSP的目的之一便是根据操作系统的要求向下完成对硬件的直接操作,同时,将底层硬件信息向上提供给操作系统。

1.3 引导加载程序

计算机系统的启动分为两个过程:(1)系统上电;(2)操作系统启动。从过程(1)到过程(2)需要引导加载程序:系统上电后,首先运行的代码便是引导加载程序。

对于PC来说,引导加载程序包括BIOS和bootloader,BIOS用于硬件检测和资源分配,bootloader用于将系统内核读取到内存中,然后跳转到内核程序的入口处,并执行相应逻辑,开始启动操作系统。

对于嵌入式系统来说,通常没有BIOS这样的固件程序,因此,整个系统的硬件检测、资源分配这样的加载任务和跳转启动任务都由bootloader完成。而且,bootloader与硬件平台相关,不同处理器结构有不同的bootloader。开源U-BOOT软件是bootloader的一种。

二、虚拟机Ubuntu安装VMware Tools

2.1 VMware Tools作用

可以实现虚拟机Ubuntu和Windows之间的互通,即文件可以直接从Windows拖到Ubuntu中。

可以实现屏幕尺寸的自适应切换,即Ubuntu系统的显示尺寸可以跟随虚拟机窗口的缩放自动变化。

2.2 VMware Tools安装

(1)点击虚拟机Ubuntu桌面上的DVD文件:VMware Tools

(2)点击之后,进入VMware Tools安装包所在路径,并在此路径下,打开终端窗口

(3)执行以下指令,将安装包拷贝到/opt路径下

sudo cp VMwareTools-10.3.22-15902021.tar.gz /opt

(4)在/opt路径下打开终端,解压安装包

/cd /opt
ls
sudo tar -zxvf VMwareTools-10.3.22-15902021.tar.gz

(5)进入解压目录路径,执行安装程序

cd /opt/vmware-tools-distrib
ls
sudo ./vmware-install.pl

(6)遇到yes输入yes,其他一直回车键即可

2.3 虚拟机Ubuntu设置

将apt-get下载源切换为国内镜像源:
(1)点击Software & Updates软件
点击Software & Updates
(2)在Download from -> other菜单栏下选择国内镜像源(阿里云镜像、清华镜像等)
Download from
(3)更新下载源

sudo apt-get update

三、虚拟机Ubuntu与Windows文件共享

3.1NFS(Network File System)简介

(1)通过网络实现不同设备之间的文件共享
(2)实际应用场景:开发板与Ubuntu上的文件进行共享
(3)NFS服务器:在虚拟机Ubuntu上安装,建立/home/nfs这个目录,并与开发板共享
(4)NFS客户端:开发板本地目录挂载到NFS服务器上的/home/nfs目录下,即可实现开发板本地和远程NFS服务器的文件共享

3.2 NFS服务器安装

使用下面指令在虚拟机Ubuntu上安装NFS服务器:

sudo apt-get update
sudo apt-get install nfs-kernel-server

3.3 NFS服务器配置

(1)创建nfs文件夹

sudo mkdir - p /home/nfs

(2)如果没有Vim,则安装Vim

sudo apt-get update
sudo apt-get install vim

(3)将/home/nfs文件夹设置为共享目录

sudo vi /etc/exports

按i键进入输入模式,然后在文档末尾添加以下代码:

/home/nfs/*(rw,sync,no_root_squash)

其中:

rw表示将权限设置为可读可写;
sync表示将资料同步写入内存和硬盘
no_root_squash表示当为root用户时,其使用与普通用户无差别

保存后退出:

按esc退出输入模式
同时按shift和冒号键
输入wq

(4)重启NFS服务

/etc/init.d/nfs-kernel-server restart

3.4 虚拟机Ubuntu平台SSH协议安装

(1)SSH:一种网络安全协议,实现Windows与Ubuntu互传文件
(2)虚拟机Ubuntu安装SSH

sudo apt-get install openssh-server

(3)修改SSH配置文件

# SSH默认不允许用户登录
sudo vi /etc/ssh/sshd_config
#然后将PermitRootLogin prohibit-password 修改为PermitRootLogin yes

SSH配置文件修改
(4)重启SSH服务

/etc/init.d/ssh restart

3.5 Windows平台filezilla软件安装

(1)filezilla:使用该软件通过ssh服务实现虚拟机Ubuntu与Windows之间的文件互传
(2)软件下载:filezilla下载官网
(3)filezilla配置

点击文件->站点管理器

在这里插入图片描述
点击新站点->协议选择SSH->主机即为虚拟机Ubuntu的网络IP->用户和密码即为虚拟机Ubuntu的用户名和登录密码->点击连接
在这里插入图片描述

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

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

相关文章

数值线性代数:知识框架

记录数值线性代数研究的知识框架。 软件包线性方程组直接法Guass消元法/LU分解、Cholesky分解 LAPACK oneAPI MKL ARPACK Octave 迭代法Jacobi迭代、SOR迭代、共轭梯度法最小二乘特征值/特征向量非对称幂法、QR、Arnoldi分解对称QR、Jacobi、二分法、分治法、SVD 参考资料 G…

pg三种插件验证

sr_plan 创建extension, 他会创建保留执行计划的表 创建表并插入数据 开启sr_plan.write_mode, 允许sr_plan收集SQL和执行计划 查看QUERY 1的执行计划 PostgreSQL支持merge join、GroupAggregate(通过INDEX SCAN),所以这个CASE,非常快,并不需要b对所有数据进行聚合。查看…

nginx mirror代码分析

实现方式 mirror逻辑的工作阶段: ngx在log phase之后(在ngx_http_free_request处调用)已完成向client端返回response,在log phase之后完成close connection(短链接),在该阶段处理mirror逻辑不…

Python——Windows下载ffmpeg

目录 前言 一、下载 (3种下载方式) 1、第一种下载方式——我上传的文件 2、第二种下载方式——GitHub下载 3、第三种下载方式——官网下载 二、解压 三、配置环境变量 四、验证是否安装成功 五、其他 关于ffmpeg其他安装教程 ffmpeg的延迟问题 …

typescript自动编译文件实时更新

npm install -g typescripttsc --init 生成tsconfig.json配置文件 tsc -w 在监听模式下运行,当文件发生改变的时候自动编译

C语言文件操作

目录 前言: 文件的分类 1. 程序文件 2.数据文件 文件的使用 文件指针 文件指针的使用 文件的打开与关闭 文件的使用方式 示例1: 示例2: 文件的顺序读写 函数简介 示例1: 示例2: 函数简介 示例1: 示例2&…

【我们一起60天准备考研算法面试(大全)-第二十六天 26/60】

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)   文章字体风格: 红色文字表示&#…

NAT详解(网络地址转换)

一句话说清楚它是干什么的: 网络地址转换:是指通过专用网络地址转换为公用地址,从而对外隐藏内部管理的IP地址,它使得整个专用网只需要一个全球IP就可以访问互联网,由于专用网IP地址是可以重用的,所以NAT大…

【Linux】Http协议的学习

文章目录 前言一、了解HTTP协议是如何规定的总结 前言 HTTP协议(超文本传输协议)和我们上一篇写的网络版计算器中自己定制的协议一样,只不过Http协议是是一个非常好用的协议,所以我们可以直接用现成的不用自己再搞一套了。 一、了…

EM算法实例

EM算法的E步骤, 是计算在当前的预估参数下,隐含变量(是A硬币还是B硬币)的每个值出现的概率。也就是给定和观测数据,计算这组数据出自A硬币的概率和这组数据出自B硬币的概率 我们根据E步中求出的A硬币、B硬币概率分布&…

在家构建您的迷你 ChatGPT

这篇文章分为三个部分;他们是: 什么是指令遵循模型?如何查找遵循模型的指令构建一个简单的聊天机器人废话不多说直接开始吧!!! 什么是指令遵循模型? 语言模型是机器学习模型,可以根…

tp6 实现excel 导入功能

在项目根目录安装 composer require phpoffice/phpspreadsheet 我们看一下郊果图&#xff0c;如下 点击导入excel表格数据 出现弹窗选择文件&#xff0c;控制台打开输出文档内容 前端layui代码 <form id"uploadForm" class"form-horizontal" encty…

如何使用 Flatpak 在 Linux 上安装 ONLYOFFICE 桌面编辑器?

Flatpak 是一款与 Linux 发行版无关的软件实用工具&#xff0c;可用于在 Linux 上构建和分发桌面端应用。其可帮助您安装第三方 Linux 应用程序&#xff0c;无需安装库或处理依赖。 ONLYOFFICE 桌面版是什么 ONLYOFFICE 编辑器桌面版是一款全面的办公工具&#xff0c;提供了文…

(七)「消息队列」之 RabbitMQ 发布者确认(使用 .NET 客户端)

发布者确认&#xff08;Publisher Confirms&#xff09; 发布者确认是一个 RabbitMQ 扩展&#xff0c;用于实现可靠的发布。当在通道上启用发布者确认时&#xff0c;客户端发布的消息将由代理异步确认&#xff0c;这意味着它们已在服务器端得到处理。 0、引言 先决条件 本教程…

在命令行模式、eclipse console下执行Java程序输入中文的几种情况尝试

介绍 在命令行模式下执行Java程序&#xff0c;如果输入中文&#xff0c;经常会出现和代码中的解码字符集不匹配的情况&#xff0c;导致结果不正确。 在命令行模式下执行Java程序&#xff0c;输入中文&#xff0c;其实是用某种字符集编码成字节流&#xff0c;Java程序读取该字节…

Seaborn库绘制单变量分布和双变量分布

Matplotlib虽然已经是比较优秀的绘图库了&#xff0c;但是它有个今人头疼的问题&#xff0c;那就是API使用过于复杂&#xff0c;它里面有上千个函数和参数&#xff0c;属于典型的那种可以用它做任何事&#xff0c;却无从下手。 Seaborn基于 Matplotlib核心库进行了更高级的API…

python与深度学习(五):CNN和手写数字识别

目录 1. 说明2. 卷积运算3. 填充4. 池化5. 卷积神经网络实战-手写数字识别的CNN模型5.1 导入相关库5.2 加载数据5.3 数据预处理5.4 数据处理5.5 构建网络模型5.6 模型编译5.7 模型训练、保存和评价5.8 模型测试5.9 模型训练结果的可视化 6. 手写数字识别的CNN模型可视化结果图7…

LeetCode面向运气之Javascript—第2600题-K件物品的最大和-94.68%

LeetCode第2600题-K件物品的最大和 题目要求 袋子中装有一些物品&#xff0c;每个物品上都标记着数字 1 、0 或 -1 。 四个非负整数 numOnes 、numZeros 、numNegOnes 和 k 。 袋子最初包含&#xff1a; numOnes 件标记为 1 的物品。numZeroes 件标记为 0 的物品。numNegOn…

12 扩展Spring MVC

✔ 12.1 实现页面跳转功能 页面跳转功能&#xff1a;访问localhost:8081/jiang会自动跳转到另一个页面。 首先&#xff0c;在config包下创建一个名为MyMvcConfig的配置类&#xff1a; 类上加入Configuration注解&#xff0c;类实现WebMvcConfiger接口&#xff0c;实现里面的视…

【学习心得】sublime text 4 自定义编译系统

一、问题描述 在电脑中有多个版本的Python解释器&#xff0c;而sublime默认选择最新版本的解释器&#xff0c;如何指定自己想要的解释器呢&#xff1f; 二、自定义编译系统 1、选择新建编译系统&#xff08;如图&#xff09; 2、重写两个键值对&#xff08;只修改中文部分其…