OpenHarmony实战:RK3568 开发板镜像烧录指南

前言

烧录开发板是每个开发者的必修课,每次对系统的修改务必进行烧录测试,确保修改正确和不会引入新问题。

本文基于 Windows10,以 RK3568 开发板为例,指导如何烧录 OpenHarmony 镜像,镜像也叫固件。Hihoop(润和)是开发板集成商,Dayu200 是开发板型号,RK3568(瑞芯微)是芯片型号, 很多地方名称不同却指的是同一块开发板。

这块开发板是 OpenHarmony 最早完全支持的开发板,属于标准系统的开发板,整个烧录过程较为舒适。

避坑指南

1. 每次烧录镜像时如何不用选择路径?

  • 第一次导入原始 config.cfg 之后,选择正确的路径,再导出配置,保存起来;
  • 下次烧录镜像,直接将之前保存的配置文件,导入配置即可;

2. 从服务器上下载镜像,看到了全部的镜像文件,但是烧录最后提示失败,怎么办?

  • 一般是下载不完整造成的,即文件大小较小,所以重新下载完成再烧录即可解决。

3. gitee 上下载的最新镜像一定是正常的吗?

  • 不一定,甚至一周时间都不正常,所以建议本地至少备份最近且正常的代码或者镜像包。

三、Windows 下烧录前准备

3.1. 安装 USB 驱动

双击 windows\DriverAssitant\ DriverInstall.exe 打开安装程序,点击下图所示的“驱动安装”按钮:

说明:
1.如果已经安装旧版本的烧录工具,请先点击“驱动卸载”按钮下载驱动,然后再点击“驱动安装”按钮安装驱动。
2.驱动安装一次就好了,无须每次烧录前安装。

3.2 连接电缆

按照图片提示连接电源线,Debug 串口调试线,USB 烧录线


打开电源,开发板指示灯点亮

3.3 下载镜像

方法一:从每日编译的 Daily 版本中下载对应镜像(http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist),选择 dayu200 进行下载
方法二:拉取源码编译,在路径 out/rk3568/packages/phone/images 目录里拷贝镜像
方法三:下载 RK3568 官方提供的固件,下载地址:Images: Hihope IOT物联网产品基础镜像仓

四、Windows 下烧录镜像

4.1 以 Loader 模式烧录

4.1.1. 将固件下载到本地目录

4.1.2. 打开烧录工具

  1. 开发板现在处于开机状态,双击 windows\RKDevTool.exe 打开烧录工具,按鼠标右键导入配置

  2. 选择 config.cfg 配置文件,然后打开

  3. 长按 Power 和 VOL+/RECOVER 按键超过 6 秒,让开发板关机,抬起手指,这时提示"没有发现设备"

  4. 再次按下这两个键,这时提示"发现一个 LOADER 设备"

  5. 松开按键,点击执行进行烧录, 稍等几秒后, 这时会在右侧信息框提示“下载完成”

4.2. 以 Maskrom 模式烧录

4.2.1. 打开烧录工具

  1. 双击 windows\RKDevTool.exe 打开烧录工具,如图所示,默认是 Maskrom 模式:

  2. 将固件下载保存到本地目录,勾选需要烧录的固件

4.2.2 确认开发板是否进入烧录模式

如果界面显示"发现一个 MASKROM 设备", 说明开发板进入 Maskrom 模式等待烧录固件。

如果界面显示"没有发现设备",说明开发板没有进入烧录模式,请按以下操作步骤让开发板进入烧录模式。


a. 按住白色按钮 Maskrom 按键(图中标注的 ① 号键)和 RESET 按钮(图中标注的 ② 号键)不松开,烧录工具此时显示“没有发现设备”;

b. 松开 RESER 键,烧录工具显示“发现一个 MASKROM 设备”,说明此时已经进入烧录模式

c. 松开按键,稍等几秒后点击执行进行烧录

说明:
如果烧录成功,在工具界面右侧会显示下载完成
如果烧录失败,在工具界面右侧会用红色的字体显示烧录错误信息,更多出错信息查看 Log 目录下的文件

五、Linux 命令行烧录镜像

5.1. 查看开发板是否进入烧录模式

进入 OHOS 的根目录,执行命令查看:python3 flash.py -q

说明:
如果输出"loader", 说明开发板进入 Loader 模式等待烧录固件
如果输出"maskrom", 说明开发板进入 Maskrom 模式等待烧录固件
如果输出"none",说明开发板没有进入烧录模式,请按文档第 2 部分内容操作让开发板进入烧录模式

5.2. 烧录固件

烧录所有固件:python3 flash.py -a

说明:此命令会烧录所有 OHOS 固件,包括:uboot, kernel(boot_linux), system, vendor, userdata 烧录指定固件:

python3 flash.py -u //烧录 uboot.img
python3 flash.py -k //烧录 boot_linux.img
python3 flash.py -s //烧录 system.img
python3 flash.py -v //烧录 vendor.img
python3 flash.py -d //烧录 userdata.img

说明:烧录多个指定固件,可以根据需要执行输入多个参数。如:-sv 表示烧录 system.img 和 vendor.img。

5.3 烧录完成

恭喜您!

您成功将镜像(固件)烧录到了开发板,可以一睹芳容!操作相关应用看看功能是否正常,用 IPOP 工具、hdc 工具查看日志,也可以跑一下相关模块的测试用例看看功能是否成功。

最后

有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。 

这份鸿蒙(HarmonyOS NEXT)资料包含了鸿蒙开发必掌握的核心知识要点,内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(HarmonyOS NEXT)技术知识点。

希望这一份鸿蒙学习资料能够给大家带来帮助,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!

获取这份完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

鸿蒙(HarmonyOS NEXT)最新学习路线

  •  HarmonOS基础技能

  • HarmonOS就业必备技能 
  •  HarmonOS多媒体技术

  • 鸿蒙NaPi组件进阶

  • HarmonOS高级技能

  • 初识HarmonOS内核 
  • 实战就业级设备开发

有了路线图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)鸿蒙(OpenHarmony )开发入门教学视频,内容包含:ArkTS、ArkUI、Web开发、应用模型、资源分类…等知识点。

获取以上完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

《鸿蒙 (OpenHarmony)开发入门教学视频》

《鸿蒙生态应用开发V2.0白皮书》

图片

《鸿蒙 (OpenHarmony)开发基础到实战手册》

OpenHarmony北向、南向开发环境搭建

图片

 《鸿蒙开发基础》

  • ArkTS语言
  • 安装DevEco Studio
  • 运用你的第一个ArkTS应用
  • ArkUI声明式UI开发
  • .……

图片

 《鸿蒙开发进阶》

  • Stage模型入门
  • 网络管理
  • 数据管理
  • 电话服务
  • 分布式应用开发
  • 通知与窗口管理
  • 多媒体技术
  • 安全技能
  • 任务管理
  • WebGL
  • 国际化开发
  • 应用测试
  • DFX面向未来设计
  • 鸿蒙系统移植和裁剪定制
  • ……

图片

《鸿蒙进阶实战》

  • ArkTS实践
  • UIAbility应用
  • 网络案例
  • ……

图片

 获取以上完整鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料

总结

总的来说,华为鸿蒙不再兼容安卓,对中年程序员来说是一个挑战,也是一个机会。只有积极应对变化,不断学习和提升自己,他们才能在这个变革的时代中立于不败之地。 

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

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

相关文章

Oracle利用BBED恢复崩溃实例(ORA-01092,ORA-00704,ORA-01578)

BBED修复数据损坏引起的数据库崩溃(ORA-01092,ORA-00704,ORA-01578)(2021年某苏州国企的案例) 1.Symptom 用户一个边缘系统出现数据文件损坏,且没有备份,数据库无法启动 报错如下,发现是oracle bootstra…

【Vue3进阶】- 第2学堂小商城实战课程前言

该教程为进阶教程,如果你还不了解Vue3的基础知识,可以先前往Vue3基础教程,从入门到实战。 学习时遇到的任何疑问都欢迎在相应课文页面下方的问答区进行提问哦 我能学到什么? 编程写法千千万,实现需求是第一。 教程中…

Docker容器、Serverless与微服务:腾讯云云原生架构技术实践案例集解析

前言 随着云原生技术的飞速发展,容器化和函数计算正成为企业和开发者关注的焦点。在这一潮流中,腾讯云凭借其卓越的技术实力和深厚的行业积累,发布了《2023腾讯云容器和函数计算技术实践精选集》,为我们提供了一份深入探索云原生…

C# 异步问答集

问:调用方法(callingmethod):该方法调用异步方法,然后在异步方法执行其任务的时候继续执行(可能在相同的线程上,也可能在不同的线程上)。为什么会在不同的线程上? 答:在调用异步方法后,调用方法不会立即…

CAS(Compare And Swap)

目录 CAS概念 乐观锁与悲观锁 ABA问题 Unsafe类 ​编辑 原子类 基本类型原子类 原子引用类 原子数组 原子更新器类 原子累加器 CAS概念 CAS是Compare And Swap的缩写,中文翻译成:比较并交换,实现无锁并发时常用到的一种技术。它一…

3.Labview字符串与路径精讲(下) — 字符串及路径的用法汇总

本章讲解labview中的字符串和路径具体实践用例,从前面板字符串属性到后面板字符串函数应用做出详细概述,通过本文的学习希望大家了解到字符串及路径在labview编程中的重要地位。 本系列文章为labview 从基础到强化到精通的学习文章,大家可以随…

奥比中光深度相机(二):PyQt5实现打开深度摄像头功能

文章目录 奥比中光深度相机(二):PyQt5实现打开深度摄像头功能官方给出的调用深度相机源码环境精炼 UI界面设计逻辑代码构建槽函数连接提取视频流在界面中显示深度视频流注意关闭相机 总体代码效果演示运行main.py代码选择相机打开摄像头关闭摄…

Kubernetes:Kubernetes应用包管理Helm

1. Helm介绍 Helm用于对需要在Kubernetes上部署的复杂应用进行定义、安装和更新。Helm以Chart的方式对应用软件进行描述,可以方便地创建、版本化、共享和发布复杂的应用软件。它是Kubernetes的软件包管理工具。包管理器类似Centos中使用的yum或者Python中的pip一样…

HarmonyOS实战开发-如何实现一个简单的健康生活应用(上)

介绍 本篇Codelab介绍了如何实现一个简单的健康生活应用,主要功能包括: 用户可以创建最多6个健康生活任务(早起,喝水,吃苹果,每日微笑,刷牙,早睡),并设置任…

nodejs 中 yarn的安装和使用

Yarn是一个快速、可靠、易于使用的包管理工具,它是Facebook、Google、Tencent等公司使用的默认JavaScript包管理工具。Yarn可以帮助开发者在项目中管理依赖,确保不同环境之间的依赖一致性,并且加速依赖的下载和安装。 安装Yarn Yarn支持多种操作系统,包括macOS、Linux和W…

BabySQL【2019极客大挑战】

知识点: 功能分析 登录界面一般是 where username and password 可以从username出手,注释掉and语句单引号闭合绕过 通过测试和报错信息发现是一个单引号读取输入可以单引号闭合绕过关键字过滤 or and 过滤 || &&替换双写绕过select from wher…

【leetcode】力扣简单题两数之和

题目 思路 代码实现 #include<iostream> #include<unordered_map>using namespace std;class Solution { public:vector<int> TwoNumber(const vector<int>& nums, int target){vector<int> number_vector;unordered_map<int, int> …

【Linux】常见命令

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 常用命令 1. ls2. pwd3. cd4. touch5. cat6. mkdir7. rm8. cp9. mv10. tail11. vim12.…

TCP粘包是怎么回事,如何处理?

还是大剑师兰特&#xff1a;曾是美国某知名大学计算机专业研究生&#xff0c;现为航空航海领域高级前端工程师&#xff1b;CSDN知名博主&#xff0c;GIS领域优质创作者&#xff0c;深耕openlayers、leaflet、mapbox、cesium&#xff0c;canvas&#xff0c;webgl&#xff0c;ech…

java-网络编程-(socket)-聊天室的编写 -01

socket 是java中的一插口,要实现网络通信的话,需要连接插口和插口,而数据的传输使用了流的思想,读数据操作运用了输入流,而写数据运用了输出流, 聊天对话的实现 一个类作为服务端对象,用于接受客户端写出的输出流, 一个类作为客户端对象,用于输到的服务端的进行读取的输入流…

css隐藏溢出隐藏的滚动条

msOverflowStyle: none: 这个属性用于在 Internet Explorer 浏览器中定义滚动条的样式。将其设置为 none 可以隐藏滚动条。 scrollbarWidth: none: 这个属性用于定义滚动条的宽度。将其设置为 none 可以隐藏滚动条。这个属性在一些新的浏览器中被支持&#xff0c;如 Firefox。…

巧克力(蓝桥杯)

文章目录 巧克力题目描述解题分析贪心 巧克力 题目描述 小蓝很喜欢吃巧克力&#xff0c;他每天都要吃一块巧克力。 一天小蓝到超市想买一些巧克力。超市的货架上有很多种巧克力&#xff0c;每种巧克力有自己的价格、数量和剩余的保质期天数&#xff0c;小蓝只吃没过保质期的…

基于《2023腾讯云容器和函数计算技术实践精选集》—探索腾讯云TKE的Docker容器、Serverless和微服务优势

重剑无锋&#xff0c;大巧不工。 ——金庸 腾讯云TKE&#xff0c;全称Tencent Kubernetes Engine&#xff0c;是一种完全托管式的容器服务。它可以帮助用户快速、高效地部署和管理Kubernetes集群&#xff0c;并提供一系列与之相关的云服务&#xff0c;如负载均衡、云硬盘、对象…

OSPF---开放式最短路径优先协议

1. OSPF描述 OSPF协议是一种链路状态协议。每个路由器负责发现、维护与邻居的关系&#xff0c;并将已知的邻居列表和链路费用LSU报文描述&#xff0c;通过可靠的泛洪与自治系统AS内的其他路由器周期性交互&#xff0c;学习到整个自治系统的网络拓扑结构;并通过自治系统边界的路…

掼蛋游戏规则

1、牌型&#xff1a;单牌、对牌、三张牌、三带二、顺子、同花顺、钢板&#xff08;例&#xff1a; 222333、444555&#xff09;、炸弹&#xff08;4涨以上相同的牌&#xff09;、三连对 2、牌大小&#xff1a;大王&#xff0c;小王&#xff0c;级牌&#xff0c;A&#xff0c;…