【触觉智能Purple Pi OH开发板体验】开箱体验:开源主板Purple Pi RK3566 上手指北
前言
前段时间收到来自【电子发烧友】的一款开发板,名叫:PurplePi,2+16G售价仅249元。它使用的芯片是rk3566,适配的OpenHarmony版本为3.2 Release
是目前最便宜的OpenHarmony标准系统开源开发板,并且软硬件全部开源,听说在300元以内无敌手,由于博主第一次接触这类开发板,在做本期测评时,需要亲自体验整个过程,项目体验真实感没得说,本次不做教程分享只是一个简单的学习经历,仅仅作为记录和开箱体验,如有大佬对这款板子很熟,欢迎指点~


产品外观及尺寸等参数
Purple Pi OH智能主板,配备Rockchip RK3566四核Cortex-A55处理器,主频最高1.8GHz,LPDDR4/LPDDR4X 默认2GB ,最大可以支持8GB内存。芯片内嵌的新一代GPU(Mali-G52 2EE)支持高分辨率显示,拥有强大的多线程运算能力、图形处理能力以及硬件解码能力。
● 最高支持8GB 高速LPDDR4,速率高达1056MHz
● 1T算力NPU,支持INT8/INT16,支持MXNet/PyTorch/Caffe等框架
● 1路HDMI2.0 支持4K@60Hz或1080P@120Hz
● 1路4-Lane MIPI-DSI,支持到1080P@60Hz
● 1路4-Lane MIPI-CSI摄像头
● 支持多屏同显
● 1路自适应千兆以太网口
● WIFI蓝牙无线通信
● 板载 1路USB3.0,3路USB2.0
● 极小型PCBA尺寸,85mm*56mm

硬件参数
| 说明 | |
|---|---|
| 以太网 | 1 × 千兆以太网(1000 Mbps) |
| 无线网络 | 支持双频2.4G/5.8G Wifi支持BT4.2及以上 |
| 显示接口 | 支持双屏同显1 × HDMI2.0,支持4K@60fps 输出1 × MIPI_DSI_TX,支持1920*1080@60fps 输出 |
| 摄像头 | 1 × MIPI_CSI 摄像头接口,支持单4-Lane 13M Sensor |
| 音频接口 | 1 × HDMI 音频输出 1 × 耳机MIC音频输入 1 × 耳机音频输出 |
| 扩展接口 | 1 × USB 3.0 HOST(标准TYPE-A母座)、3 × USB 2.0 HOST(标准TYPE-A母座)、1 × USB 2.0 device(标准TYPE-C母座)、1 × Debug_UART(UART2)、1 × SPI、1 × I2C、3 × UART、1 × TP 座(I2C) |

系统支持
| 是否支持 | |
|---|---|
| Android 11 | ✅ |
| Debian 10 | ✅ |
| Buildroot + QT | ✅ |
| OpenHarmony3.2 | ✅ |
| Ubuntu | ✅ |
| 麒麟 OS | ✅ |
开箱赠品
很遗憾,博主的套餐没有赠送mipi屏和摄像头,所以按照官方的教程我们只能用其他的代替屏幕


源码等资料
找到【触觉智能】官网下载资料


找到,资料下载,这里有很全的开发板软件硬件资料,官方的开源和sdk真的做的很棒!!

已经将部分文档资源打包好,文章末尾即可下载,需要完整文档请访问这里
烧录
一、固件列表
Purple-Pi-OH RK3566 主板支持Android11、Debian10、Ubuntu20.04和Buildroot+Qt系统。
固件下载链接:
LINUX: 链接:https://pan.baidu.com/s/1ZEOZqBB40w1seo2wf2teMg?pwd=1234
提取码:1234
Android: 链接:https://pan.baidu.com/s/1mZ9xKpmWlMjLTZ2J5LtA8A?pwd=1234
提取码:1234
OpenHarmony:
链接:https://pan.baidu.com/s/1D6wFGhsEymV2tpeJkFLyfQ?pwd=o809 提取码:o809
固件及版本说明如下表所示:

二、通过USB数据线烧录固件
1 硬件准备
● Purple-Pi-OH RK3566主板
● 带USB接口的 Windows / Linux 主机
● USB Type-C 数据线
2 软件准备
工具下载链接:
链接:https://pan.baidu.com/s/1ys0Wllj80IURnbI27N7mDQ?pwd=1234 提取码:1234
由于博主准备开刷Harmony,所以这里演示OpenHarmony不带mipi屏幕的,也就是HDMI版本的
工具下载链接:

OpenHarmony:
链接:https://pan.baidu.com/s/1D6wFGhsEymV2tpeJkFLyfQ?pwd=o809 提取码:o809
2.1 安装RK USB 驱动
解压DriverAssitant_v5.1.1.zip驱动文件后进到目录,双击运行DriverInstall.exe完成驱动安装


2.2 运行RKDevTool.exe烧录工具
解压并打开RKDevTool_Release_v2.95文件,双击运行RKDevTool.exe软件

3 进入升级模式
Purple-Pi-OH主板的升级模式有LOADER和MASKROM两种模式,需要先让主板进入到升级模式,才可以给主板烧写固件。
3.1 LOADER模式
进入LOADER模式有硬件和软件进入两种方法,详细步骤如下
3.1.1 硬件方式进入LOADER模式

上图黄色框内为 RECOVERY 按键,绿色框内为 Type-C OTG 接口。
- 断开主板的所有供电;
- 按住设备上的 RECOVERY 键并保持 ;
- 使用USB Type-C 数据线连接板子Type-C口和电脑USB端口;
- 大约两秒钟后,烧录软件会识别到LOADER设备。

3.1.2 软件方式进入LOADER模式
在主板已烧录了可正常运行的固件前提下,可以通过软件的方式让板子进入到LOADER模式。
- 使用USB Type-C 数据线连接主板 Type-C口和电脑USB端口;
- 确认主板在PC端可以识别为ADB设备。

- PC的端可以通过adb或者调试串口进入到系统
● 调试串口执行命令让板子重启至LOADER模式
● adb 进入方法
在安装了adb环境的PC电脑,通过命令终端执行adb shell命令进去系统,并执行以下命令
reboot loader

4.软件执行后即可在烧录软件看到设备进入到LOADER设备

3.2 MASKROM模式
板子在以下两种情况会主动显示为MASKROM模式
- 芯片未烧录固件,上电将会显示为MASKROM模式;
- 分区固件烧录异常或者Loader分区固件被擦除也可能会显示为MASKROM模式;
如果板子可以正常运行,建议使用3.1节的Loader模式烧录系统固件,在系统异常无法烧录的时候,再尝试将板子切换到MASKROM模式烧录。
进入MASKROM模式的方式如下
3. 断开电源适配器与主板的连接;
4. 短接主板上的测试点,并保持(位置如下图所示)
5. 使用USB Type-C 数据线连接主板OTG口和电脑;

6. 烧录软件会直接识别到MASKROM设备。

更多代码参考:点我
相关文章:
【触觉智能Purple Pi OH开发板体验】开箱体验:开源主板Purple Pi RK3566 上手指北
前言 前段时间收到来自【电子发烧友】的一款开发板,名叫:PurplePi,216G售价仅249元。它使用的芯片是rk3566,适配的OpenHarmony版本为3.2 Release 是目前最便宜的OpenHarmony标准系统开源开发板,并且软硬件全部开源&am…...
flink1.16使用消费/生产kafka之DataStream
flink高级版本后,消费kafka数据一种是Datastream 一种之tableApi。 上官网 Kafka | Apache Flink Kafka Source 引入依赖 flink和kafka的连接器,里面内置了kafka-client <dependency><groupId>org.apache.flink</groupId><arti…...
【多任务编程-线程通信】
进程/线程通信的方式 某些应用程序中,进程/进程和线程/线程之间不可避免的进行通信,进行消息传递,数据共享等 同一进程的线程之间通信方式包括Windows中常用Event, Message等。 不同进程之间的通信可以利用Event, FileMapping(内存共享), W…...
K8S暴露pod内多个端口
K8S暴露pod内多个端口 一、背景 公司统一用的某个底包跑jar服务,只暴露了8080端口 二、需求 由于有些服务在启动jar服务后,会启动多个端口,除了8080端口,还有别的端口需要暴露,我这里就还需要暴露9999端口。 注&a…...
Python 列表
""" #list函数 ls list() #创建一个空列表 print(list()) print(list(str(1234)))#[1, 2, 3, 4] print(list(range(5)))#[0, 1, 2, 3, 4] print(list((1,2,3,4)))#[1, 2, 3, 4] print(list(Lift is short, you need python))#注意空格也算一个字符 #[L, i, f,…...
Rabbitmq的安装与使用(Linux版)
目录 Rabbitmq安装 1.在Ubuntu上安装RabbitMQ: 打开终端,运行以下命令以更新软件包列表: 安装RabbitMQ: 安装完成后,RabbitMQ服务会自动启动。你可以使用以下命令来检查RabbitMQ服务状态: 2.在CentOS…...
Kubernetes对象深入学习之四:对象属性编码实战
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《Kubernetes对象深入学习》系列的第四篇,前面咱们读源码和文档,从理论上学习了kubernetes的对象相关的知识ÿ…...
深度学习入门教程(2):使用预训练模型来文字生成图片TextToImageGenerationWithNetwork
本深度学习入门教程是在polyu HPCStudio 启发以及资源支持下进行的,在此也感谢polyu以及提供支持的老师。 本文内容:在GoogleColab平台上使用预训练模型来文字生成图片Text To Image Generation With Network (1)你会学到什么&a…...
ORA-38760: This database instance failed to turn on flashback database
早晨接一个任务,使用rman备份在虚拟化单机上恢复实例,恢复参数文件、控制文件和数据文件都正常,recover归档时报错如下: Starting recover at 2023-07-28 10:25:01 using channel ORA_DISK_1 starting media recovery media reco…...
避免低级错误:深入解析Java的ConcurrentModificationException异常
在软件开发中,我们常常会遇到各种错误和异常。其中有一类比较低级但又常见的错误就是ConcurrentModificationException异常。最近了我就写了个这种异常,这个异常通常发生在使用迭代器遍历集合时,同时对集合进行修改,从而导致迭代器…...
7.28
1.思维导图 2.qt的sever #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include<QTcpServer> //服务器类 #include<QTcpSocket> //客户端类 #include<QMessageBox> //对话框类 #include<QList> …...
java线程中的常见方法(详解)
方法简介 方法名 功能 说明 start() 启动一个新线程,在新的线程运行 run 方法中的代码 start 方法只是让线程进入就绪,里面代码不一定立刻运行(CPU 的时间片还没分给它)。每个线程对象的start方法只能调用一次,如…...
线程池参数配置
上次面试被人问到,如果是IO 密集型的任务,该如何配置合适的线程数,当初我说要按照IO具体的请求毫秒时间,来配置具体的线程数。 NthreadsNcpu*(1w/c) 公式中 W/C 为系统 阻塞率 w:等待时间 c:计算时间一般情况下,如果存…...
Spread for Winform 16.2.20231.0 (SP2) Crack
Spread for Winform 16.2.20231.0 (SP2)发布。此版本包含针对客户报告的问题的重要修复: 安装版本 16 后,FarPoint.Localization.dll 将丢失。 将数据绑定到 Spread 时会出现 InvalidOperationException。 通过 Spread Designer 设置的上标将不会保留。…...
Go程序结构
Go程序结构 1、名称 名称的开头是一个字母或下划线,且区分大小写。 实体第一个字母的大小写决定其可见性是否跨包: 若名称以大写字母开头,它是导出的,对包外是可见和可访问的,可以被自己包以外的其他程序所引用…...
JAVA面试总结-Redis篇章(四)——双写一致性
JAVA面试总结-Redis篇章(四)——双写一致性 问:redis 做为缓存,mysql的数据如何与redis进行同步呢?第一种情况,如果你的项目一致性要求高的话 采用以下逻辑我们应该先删除缓存,再修改数据库&…...
赋能医院数字化转型,医院拍摄VR全景很有必要
医院有没有必要拍摄制作VR全景呢?近期也有合作商问我们这个问题,其实VR智慧医院是趋势、也是机遇。现在外面很多的口腔医院、医美机构等都开始引入VR全景技术了,力求打造沉浸式、交互式的VR智慧医院新体验,通过VR全景展示技术来助…...
Vue3项目中没有配置 TypeScript 支持,使用 TypeScript 语法
1.安装 TypeScript:首先,需要在项目中安装 TypeScript。在终端中运行以下命令 npm install typescript --save-dev2.创建 TypeScript 文件:在 Vue 3 项目中,可以创建一个以 .ts 后缀的文件,例如 MyComponent.ts。在这…...
数据可视化大屏拼接屏开发实录:屏幕分辨率测试工具
一、可视化大屏开发 在数据可视化大屏开发时,确定数据可视化大屏拼接屏的板块尺寸需要考虑以下几个因素: 屏幕分辨率:首先需要知道每个板块屏幕的分辨率,包括宽度和高度,这决定了每个板块上可以显示的像素数量。 数据…...
每日一题7.28 209
209. 长度最小的子数组 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 本题应该是用前缀…...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
