【rk3568】01-环境搭建

文章目录

  • 1.开发板介绍
    • 1.1相关资源:
    • 1.2接口布局
    • 1.3屏幕
    • 1.4核心板引脚可复用资源
  • 2.环境搭建
    • 2.1安装依赖包
    • 2.2git配置
    • 2.3安装sdk
    • 2.4sdk介绍
    • 2.5sdk编译
  • 3.镜像介绍

1.开发板介绍

开发板atk-rk3568开发板
eMMC64G
LPDDR44G
显示屏5.5寸mipi
u-boot 2017.09
kernel4.19

1.1相关资源:

cpu
在这里插入图片描述

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

1.2接口布局

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

1.3屏幕

在这里插入图片描述

1.4核心板引脚可复用资源

在这里插入图片描述

2.环境搭建

ATK-DLRK3568开发板使用的RK3568芯片为例,瑞芯微提供了全面的Linux SDK 包,Linux SDK 包主要包含了:
 app:存放上层应用 app,包括 Qt 应用程序,以及其它的 C/C++应用程序。
 buildroot:基于 buildroot 开发的根文件系统。
 debian:基于 Debian 开发的根文件系统。
 device/rockchip:存放各芯片板级配置文件和 Parameter 文件,以及一些编译与打包固件的脚本和预备文件。
 docs:存放芯片模块开发指导文档、平台支持列表、芯片平台相关文档、Linux 开发指南等。
 external:存放所需的第三方库,包括音频、视频、网络、recovery 等。
 kernel:Linux 4.19 版本内核源码。
 prebuilts:存放交叉编译工具链。
 rkbin:存放 Rockchip 相关的 Binary 和工具。
 rockdev:存放编译输出固件,编译 SDK 后才会生成该文件夹。
 tools:存放 Linux 和 Windows 操作系统环境下常用的工具,包括镜像烧录工具、SD 卡升级启动制作工具、批量烧录工具等,譬如前面给大家介绍的 RKDevTool 工具以及Linux_Upgrade_Tool 工具在该目录下均可找到。
 u-boot:基于 v2017.09 版本进行开发的 uboot 源码。
 yocto:基于 Yocto 开发的根文件系统。

2.1安装依赖包

sudo apt-get update
sudo apt-get install curl git ssh make gcc libssl-dev liblz4-tool expect -y
sudo apt-get install g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support qemu-user-static live-build bison -y
sudo apt-get install flex fakeroot cmake gcc-multilib g++-multilib unzip device-tree-compiler python3-pip -y
sudo apt-get install libncurses-dev python3-pyelftools vim mtd-utils  -y#安装python2
curl -O https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tar.xz
sudo tar -xf Python-2.7.18.tar.xz -C /usr/local/
cd /usr/local/Python-2.7.18
./configure
make
sudo make install 
#sudo apt-get install  python2.7 python-pyelftools -y  
#sudo rm -rf /usr/bin/python
#sudo ln -s /usr/bin/python2 /usr/bin/pythonmkdir ~/bin
export PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o ~/bin/repo
chmod a+x ~/bin/repo

2.2git配置

git config --global user.name "your name"
git config --global user.email "your email

2.3安装sdk

mkdir ~/rk3568_linux_sdk
tar xvf atk-rk3568_linux_release_v1.0_20230620.tgz -C ~/rk3568_linux_sdk
tar -xzf dl.tgz -C ~/rk3568_linux_sdk/buildroot/	#第三方软件包
cd ~/rk3568_linux_sdk/
python3 .repo/repo/repo sync -l -j10realpath .repo/manifests/rk3568_linux_release.xml		#查看sdk atk版本
ls .repo/manifests/rk356x_linux/rk356x_linux_release*  	#在 SDK 源码根目录下,查询当前 SDK 的 RK 版本

2.4sdk介绍

SDK 软件框图从下至上分为 Bootloader、Linux Kernel、Libraries、Applications 四个层次,各层次内容如下:

⚫ BootLoader 层主要提供底层系统支持包,如 BootLoader、U-Boot、ATF 相关支持。
⚫ Kernel 层主要提供 Linux Kernel 的标准实现,Linux 也是一个开放的操作系统。Rockchip
平台的 Linux 核心为标准的 Linux4.4/4.19/5.10 内核,提供安全性、内存管理、进程管
理、网络协议栈等基础支持;主要是通过 Linux 内核管理设备硬件资源,如 CPU 调度、
缓存、内存、I/O 等。
⚫ Libraries 层对应一般嵌入式系统,相当于中间件层次,包含了各种系统基础库,以及第
三方开源程序库支持,对应用层提供 API 接口,系统定制者和应用开发者可以基于
Libraries 层的 API 开发新的应用。
⚫ Applications 层主要是实现具体的产品功能及交互逻辑,需要一些系统基础库及第三方
程序库支持,开发者可以开发实现自己的应用程序,提供系统各种能力给到最终用户。
在这里插入图片描述

2.5sdk编译

./build.sh lunch	     	 #然后输入3
./build.sh all				 #首次编译,需要全部编译
./build.sh					 #全部编译+打包	
./build.sh firmware  		 #镜像打包到 SDK/rockdev 目录
./mkfirmware.sh      		 #或者直接执行 SDK 源码根目录下的./mkfirmware.sh 脚本./build.sh uboot		# 单独编译 U-Boot
./build.sh kernel		# 单独编译 Kernel
./build.sh modules	# 编译 Linux 内核源码,包括内核设备树、内核模块
./build.sh buildroot	#单独编译 rootfs
./build.sh recovery	# 单独编译 recovery# 指定编译 buildroot 根文件系统 可以通过 环 境 变 量 RK_ROOTFS_SYSTEM 指 定 需 要 编 译 的 rootfs
(yocto/debian/buildroot):
export RK_ROOTFS_SYSTEM=buildroot
./build.sh rootfs./build.sh updateimg	#打包成 update.img 镜像(将 uboot.img、boot.img、MiniLoaderAll.bin、parameter.txt、misc.img、rootfs.img、
oem.img、userdata.img、recovery.img 等)打包成一个 update.img 固件
./build.sh cleanall	# 清理 uboot、kernel、buildroot(rootfs、recovery)。

在这里插入图片描述

3.镜像介绍

uboot.img
uboot.img 是一种 FIT 格式镜像,它由多个镜像合并而成,其中包括
trust 镜像(ARM Trusted Firmware + OP-TEE OS)、u-boot 镜像、u-boot dtb;编译 U-Boot 时会将这些镜像打包成一个 uboot.img。uboot.img 会烧录到开发板 uboot 分区
boot.img
boot.img 也是一种 FIT 格式镜像,它也是由多个镜像合并而成,其中包括内核镜像、内核 DTB、资源镜像 resource.img。boot.img 会烧录到开发板 boot 分区
MiniLoaderAll.bin
该镜像是运行在 RK3568 平台 U-Boot 之前的一段 Loader 代码(也就是比 U-Boot 更早阶段的 Loader),MiniLoaderAll.bin 由 TPL 和 SPL两部分组成, TPL 用于初始化 DDR,运行在 SRAM;而 SPL 运行在DDR,主要负责加载、引导 uboot.img。
misc.img 包含 BCB(Bootloader Control Block)信息,该镜像会烧写到开发板misc 分区。misc 分区是一个很重要的分区,其中存放了 BCB 数据块,主要用于Android/Linux 系统、U-Boot 以及 recovery 之间的通信
oem.img
给厂家使用,用于存放厂家的 APP 或数据,该镜像会烧写至开发板oem 分区,系统启动之后会将其挂载到/oem 目录。
parameter.txt
一个 txt 文本文件,是 RK3568 平台的分区表文件(记录分区名以及每个分区它的起始地址、结束地址);烧写镜像时,并不需要将parameter.txt 文件烧写到 Flash,而是会读取它的信息去定义分区。
recovery.img
recovery 模式镜像,recovery.img 用于进入 recovery 模式,recovery.img 会烧录到开发recovery 分区。recovery 模式是一种用于对设备进行修复、升级更新的模式。recovery.img 也是 FIT 格式镜像,也是由多个镜像合并而成,其中包括ramdisk(进入 recovery 模式时挂载该根文件系统)、内核镜像(进入recovery 模式时启动该内核镜像)、内核 DTB 以及 resource.img。rootfs.img
正常启动模式下对应的根文件系统镜像,包含有大量的库文件、可执行文件等。rootfs.img 会烧录到开发板 rootfs 分区
userdata.img
给用户使用,可用于存放用户的 App 或数据;该镜像会烧写至开发板 userdata 分区,系统启动之后,会将其挂载到/userdata 目录

参考:

http://www.openedv.com/docs/boards/arm-linux/RK3568Linux.html
http://www.openedv.com/docs/boards/arm-linux/RK3568Linuxhxb.html

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

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

相关文章

螺旋数字矩阵 - 华为OD统一考试

OD统一考试(C卷) 分值: 100分 题解: Java / Python / C++ 题目描述 疫情期间,小明隔离在家,百无聊赖,在纸上写数字玩。他发明了一种写法: 给出数字个数n和行数m (0 < n <= 999,0 < m <= 999),从左上角的1开始,按照顺时针螺旋向内写方式,依次写出2,3……

创建ROS模型与小机器人地图规划

1、打开自己的VM系统 2、安装小机器人的安装包&#xff0c;输入如下命令&#xff0c;回车输入密码(自己设的)&#xff1a; sudo apt install ros-noetic-turtlebot3-simulations ros-noetic-turtlebot3-slam ros-noetic-turtlebot3-navigation 提示我之前安装过了 3、用rosla…

Java 常见缓存详解以及解决方案

一. 演示Mybatis 一级缓存 首先我们准备一个接口 两个实现的方法&#xff0c; 当我们调用这个queryAll&#xff08;&#xff09;方法时我们需要调用selectAll&#xff08;&#xff09;方法来查询数据 调用此接口实现效果 这个时候我们就可以发现了问题&#xff0c;我们调用方法…

18张AI电脑动漫超清壁纸免费分享

18张AI电脑动漫壁纸&#xff0c;紫色系和暗黑系&#xff0c;都很不错&#xff0c;喜欢的朋友可以拿去 CSDN免积分下载

【LV12 DAY12-13 GPIO C 语言与寄存器封装】

GPIO 通用型输入输出&#xff0c;GPIO可以控制连接在其引脚实现信号的输入和输出 芯片的引脚和外部设备相连从而实现与外部硬件的通讯&#xff0c;控制&#xff0c;信号采集的功能。 控制CHG_COK引脚输出为高电平&#xff0c;LED亮&#xff0c;输出为低电平&#xff0c;LED熄灭…

Android 10.0 TvSettings系统设置wifi连接密码框点击Enter键失去焦点

1.前言 在10.0的box产品开发中,在TvSettings中,在wifi连接的时候,在用遥控器输入wifi密码框的时候,会发现在按遥控器Enter键的时候, 发现EditText焦点失去了,导致输入法消失了,为了解决这个问题就需要拦截Enter键保证正常输入wifi密码,接下来就来实现这个功能 如图: 2.…

CSS 弹幕按钮动画

<template><view class="content"><button class="btn-23"><text class="text">弹幕按钮</text><text class="marquee">弹幕按钮</text></button></view></template><…

win7添加access的odbc数据源

从控制面板打开odbc数据源&#xff1b;如果像下面没有access的驱动程序&#xff0c; 根据资料&#xff0c;打开C盘-Windows-SysWow64-odbcad32.exe&#xff0c;看一下就有了&#xff1b; 然后添加用户DSN&#xff0c;选中access的驱动程序&#xff0c; 自己输入一个数据源名&am…

【浅尝C++】引用

&#x1f388;归属专栏&#xff1a;浅尝C &#x1f697;个人主页&#xff1a;Jammingpro &#x1f41f;记录一句&#xff1a;大半夜写博客的感觉就是不一样&#xff01;&#xff01; 文章前言&#xff1a;本篇文章简要介绍C中的引用&#xff0c;每个介绍的技术点&#xff0c;在…

Gitlab-ci:从零开始的前端自动化部署

一.概念介绍 1.1 gitlab-ci && 自动化部署工具的运行机制 以gitlab-ci为例&#xff1a; (1) 通过在项目根目录下配置.gitlab-ci.yml文件&#xff0c;可以控制ci流程的不同阶段&#xff0c;例如install/检查/编译/部署服务器。gitlab平台会扫描.gitlab-ci.yml文件&…

QML实现的图片浏览器

很久之前实现了一个QWidget版本的图片浏览器:基于Qt5的图片浏览器QHImageViewer 今天用QML也实现一个,功能差不多: ●悬浮工具栏 ●支持图片缩放、旋转、还原、旋转、拖动。 ●拖动图片时,释放鼠标图片会惯性滑动。 ●支持左右翻页查看文件夹中的图片。 ●支持保存图片至本…

【ONE·MySQL || 常见的基本函数】

总言 主要内容&#xff1a;介绍了MySQL中常用的基本函数。一些聚合函数、时间日期函数、字符串函数、数字函数等。       文章目录 总言1、聚合函数1.1、汇总1.2、COUNT()函数1.2.1、基本说明1.2.2、使用演示 1.3、SUM( )函数1.3.1、基本说明1.3.2、使用演示 1.4、AVG( )函…

java基础之Java8新特性-Optional

目录 1.简介 2.Optional类常用方法 3.示例代码 4.示例代码仓库地址 1.简介 Java 8引入了一个重要的新特性&#xff0c;即Optional类。Optional类是为了解决空指针异常而设计的。 在Java中&#xff0c;当我们尝试访问一个空对象的属性或调用其方法时&#xff0c;很容易抛出…

【服务器数据恢复】Hyper-V虚拟化数据恢复案例

服务器数据恢复环境&#xff1a; Windows Server操作系统服务器&#xff0c;部署Hyper-V虚拟化环境&#xff0c;虚拟机的硬盘文件和配置文件存放在某品牌MD3200存储中&#xff0c;MD3200存储中有一组由4块硬盘组成的raid5阵列&#xff0c;存放虚拟机的数据文件&#xff1b;另外…

国内首款支持苹果Find My芯片-伦茨科技ST17H6x

深圳市伦茨科技有限公司&#xff08;以下简称“伦茨科技”&#xff09;发布ST17H6x Soc平台。成为继Nordic之后全球第二家取得Apple Find My「查找」认证的芯片厂家&#xff0c;该平台提供可通过Apple Find My认证的Apple查找&#xff08;Find My&#xff09;功能集成解决方案。…

建立四叉树[中等]

一、题目 给你一个n * n矩阵grid&#xff0c;矩阵由若干0和1组成。请你用四叉树表示该矩阵grid。你需要返回能表示矩阵grid的四叉树的根结点。四叉树数据结构中&#xff0c;每个内部节点只有四个子节点。此外&#xff0c;每个节点都有两个属性&#xff1a; 【1】val&#xff1…

GLSL着色器入门(持续更新中...)

目录 第一章&#xff1a;OpenGL works with triangles 第二章&#xff1a; Parallel Processing 第章 推荐来自b站的课程004 GLSL is not Javascript_哔哩哔哩_bilibili 第一章&#xff1a;OpenGL works with triangles 当我们谈论GLSL着色器时&#xff0c;其实就是在说怎么…

C语言奇偶数交换排序问题

目录 问题描述如下&#xff1a; move函数的具体实现&#xff1a; main函数 运行效果 代码&#xff08;注意看注释&#xff09;&#xff1a; 问题描述如下&#xff1a; 给定一个整数数组&#xff0c;要求将其中的奇数元素全部移动到前面&#xff0c;偶数元素全…

【深度学习:Foundation Models】基础模型完整指南

【深度学习&#xff1a;Foundation Models】基础模型完整指南 什么是基础模型&#xff1f;基础模型背后的 5 项人工智能原理根据大量数据进行预训练自我监督学习过度拟合微调和快速工程&#xff08;适应性强&#xff09;广义的 基础模型的用例基础模型的类型计算机视觉基础模型…

最新版CleanMyMac X4.14.7智能清理mac磁盘垃圾工具

CleanMyMac X是一款专业的Mac清理软件&#xff0c;可智能清理mac磁盘垃圾和多余语言安装包&#xff0c;快速释放电脑内存&#xff0c;轻松管理和升级Mac上的应用。同时CleanMyMac X可以强力卸载恶意软件&#xff0c;修复系统漏洞&#xff0c;一键扫描和优化Mac系统&#xff0c;…