其乐融融的IT技术小站

OpenHarmony开发-系统烧录

想了解更多关于开源的内容,请访问:

51CTO 鸿蒙开发者社区

https://ost.51cto.com

本文详细介绍了烧录OpenHarmony系统到开发板的操作流程。从基础的硬件准备和软件环境设置入手,详细说明了如何配置开发环境、构建系统镜像等过程,详细描述了烧录过程中的关键步骤,以及如何使用专用工具将OpenHarmony系统镜像传输到开发板。同时,文章也列出了烧录过程中可能遇到的常见问题及其解决方案。

一、OpenHarmony介绍

Open Harmony 是由开放原子开源基金会孵化及运营的开源项目,由开放原子开源基金会 Open Harmony 项目群工作委员会负责运作。由全球开发者共建的开源分布式操作系统,具备面向全场景、分布式等特点,是一款“全(全领域)・ 新 (新一代)・ 开(开源)・ 放(开放)”的操作系统。

OpenHarmony的设计理念体现在其面向全场景、分布式的架构上,与传统操作系统相比,它在多个方面展现出显著优势:

特性

OpenHarmony

传统操作系统

适应性

面向全场景,能够适用于从小型物联网设备到大型服务器的广泛设备。

通常专注于特定领域,如个人电脑、手机或服务器。

架构

分布式设计,可实现设备间的无缝协作和资源共享。

主要基于单一设备,设备间互操作性有限。

开发模式

开源社区驱动,全球开发者共同参与,快速迭代。

可能是开源也可能是封闭源,开发和迭代速度不一。

系统更新

支持模块化更新,可以针对系统的特定部分进行更新,而不需要重启整个系统。

更新往往需要整个系统重启,影响设备使用。

安全性

设计时考虑了分布式环境下的安全需求,支持多层次安全策略。

安全性依赖于单个系统的设计,可能不适用于分布式环境。

资源利用率

高效的资源管理,能在资源受限的设备上运行,优化了低功耗和性能。

可能需要较多资源,不一定适合资源受限的环境。

用户体验

通过分布式能力,实现跨设备的流畅体验和服务共享,为用户提供更连贯的操作体验。

用户体验通常局限于单一设备,跨设备使用可能不便。

OpenHarmony的这些优势,使其成为一个非常有潜力的操作系统,能够满足未来技术发展的需求,特别是在物联网和跨设备协同工作方面。它不仅提供了技术上的创新,还通过开放源代码的方式,鼓励全球开发者共同参与,推动了生态系统的快速发展。

二、HCPAD-100开发板介绍

本文使用的开发板为 RK3568,是一款人工智能开发板,该开发板适配 Open Harmony 标准系统,适用于智慧显示、视频类、工业自动化等终端产品和边缘计算网关类产品。

三、准备工作

1.硬件准备

  • RK3568开发板
  • 双USB口数据线
  • 电源适配器等。

2.软件准备

  • 获取OpenHarmony的源代码。
  • 准备RK3568的烧录工具,例如RKDevTool。
  • 安装并配置开发环境,比如确保有适合的编译工具链。

四、烧录步骤

1.下载驱动和烧录工具

访问:Firefly | 让科技更简单,让生活更智能 (t-firefly.com)

下载RK驱动助手和AndroidTool烧录工具。

下载完成后进行安装。

安装RK驱动助手

双击安装程序,选择驱动安装,安装完成后电脑连接开发板时才可以识别。

安装AndroidTool烧录工具

选择安装路径安装,安装完成后打开如下,在没有连接设备时显示 No Devices Found。

识别到连接设备时显示 Found One LOADER Device。

2.下载HDC命令工具

HDC (OpenHarmony Device Connector) 是为开发人员提供的用于设备连接调试的命令行工具,pc端开发机使用命令行工具hdc_std进行调试,该工具支持部署在Windows/Linux/Mac等系统上与OpenHarmony设备(或模拟器)进行连接调试通信。

获取HDC工具

官方或者社区链接下载均可,压缩包里包含windows和linux两个版本。

下载链接①:https://repo.huaweicloud.com/harmonyos/os/3.2-Release/ohos-sdk-windows_linux-public.tar.gz

下载链接②:developtools_hdc_standard: Device debug connector that provides the device connection capability and a command line tool | 设备调试连接器,提供了连接设备的能力,并提供了对外的命令行工具。

下载链接③:访问:每日构建 | OpenHarmony CI ,在CICD的每日构建中找到ohos_sdk,选择最新版本下载即可。

下载完成后压缩包如下:

解压后进入目录ohos-sdk\windows,继续解压toolchains-windows开头的压缩包。

在解压后的toolchains-windows开头的文件夹\toolchains目录下,找到hdc。

当前目录命令行里可以直接调用hdc的命令。

比如,我们查看版本:

hdv -v

解压并配置环境变量

为了使用hdc方便,我们可以配置环境变量,把hdc的路径配置到path里,这样以后我们访问hdc就不需要切换路径了。

我们在使用查看版本的命令。

下面是hdc的一些常用命令:

命令

描述

hdc list targets

列出当前连接的所有目标设备。

hdc shell

启动目标设备的shell终端。

hdc file send

将本地文件 传输到目标设备的 位置。

hdc file recv

将目标设备的 文件传输到本地 位置。

hdc install

在目标设备上安装应用程序包。

hdc uninstall

从目标设备卸载应用程序。

hdc start

启动目标设备上的应用程序。

hdc stop

停止目标设备上的应用程序。

hdc debug

启动目标设备上的应用程序并连接调试器。

hdc getprop

获取目标设备的系统属性。

hdc setprop

设置目标设备的系统属性。

hdc reboot

重启目标设备。

hdc connect

通过IP地址连接到远程设备。

hdc disconnect

断开与远程设备的连接。

hdc shell ohos

进入OpenHarmony设备的OHOS交互命令行。

hdc file pull

从目标设备下载文件到本地指定目录。

hdc file push

将本地文件上传到目标设备指定目录。

使用这些命令时,需要替换为具体的参数值。例如 需要替换为本地文件路径, 需要替换为目标设备上的文件路径, 需要替换为应用包的路径,而 则是应用的名称或包名。

3.连接电脑和开发板

在开发板断电情况下按住烧录键,通过双USB数据线连接电脑和开发板,再给开发板通电。

如果操作正确,主板将进入USB烧录模式,同时,RK烧录工具识别到连接设备,显示 Found One LOADER Device,后面我们使用RK烧录工具进行系统烧录即可。

4.下载OpenHarmony镜像

访问:每日构建 | OpenHarmony CI ,在 CICD 的 每日构建 中找到 dayu200,选择最新版本下载即可。

5.烧录OpenHarmony系统

在镜像下载完成后,我们需要导入镜像配置到烧录工具中。右键Loader导入配置,选择解压的镜像包中的config.cfg文件。

导入新配置后,misc、sys-prod、chip-prod三个分区不存在镜像,烧写时不能勾选。

点击右侧空白处可以修改固件位置,我们把位置修改为下载的dayu200里各个固件的路径。

点击执行,出现下载完成,即表示烧录成功。

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

6.重启设备

烧录完成后,断开连接并重启设备,完成系统启动。

五、常见问题及解决办法

1.Loader和Maskrom模式

在我们烧录 Open Harmony 系统到 RK3568 开发板中时,可能会遇到两种烧录模式(Loader模式和Maskrom模式)。具体是哪种模式,主要取决于是否已经烧录过固件,如果固件已被烧录,系统将进入Loader固件烧写模式。如果是新开发板,默认进入Maskrom模式。本文我使用的开发板是已经烧录过的,所以烧录工具直接显示的是Loader模式。

下面是两种模式的详细介绍:

特征

Loader模式

Maskrom模式

定义

一种中间启动模式,用于加载和执行更高级别的固件,如U-Boot或其他引导程序。

一种硬件级别的故障恢复模式,当设备无法通过正常方式启动时自动进入。

启动条件

设备可以正常访问存储介质中的引导加载程序。

设备无法从闪存(如NAND、eMMC)启动,可能由于引导部分损坏导致。

功能

主要用于固件升级、调试和开发。可以通过USB或其他接口与PC通信,进行数据传输和命令执行。

用于紧急恢复固件,只能通过特定的硬件接口(通常是USB)与PC通信,进行最低级别的数据传输。

使用场景

开发者或维修技师需要对设备进行更新、调试或维修时使用。

当设备无法正常启动,需要进行底层固件恢复时使用。

如何进入

通常通过特定按键组合、命令或通过在启动过程中检测到特定条件自动进入。

当设备检测不到有效的启动介质或启动文件损坏时自动进入;也可以通过硬件操作(如短接特定引脚)强制进入。

优势

提供了一个灵活的接口,用于系统升级和调试,不需要设备处于最底层的故障状态。

在设备软件严重损坏,无法通过Loader模式恢复时,提供了一个救命稻草,允许用户重新烧录启动程序。

Loader模式和Maskrom模式是两种常见的设备启动模式,尤其在与RK系列芯片(如RK3568)进行系统烧录时。这两种模式在功能、启动条件和使用场景上有所不同。

在使用烧录工具时,两种模式都可以进行烧写。

2.烧录完成后无法开机

  • 确保烧录的固件版本与设备兼容。
  • 重新检查烧录过程中的分区配置,确保没有错误的分区操作。
  • 如果可能,尝试重新烧录较早版本的固件,以判断是否为固件兼容性问题。
  • 检查设备的硬件状态,如内存和存储是否存在问题。

3.烧录工具未发现设备

要严格按照下述操作,才可以进入开发板的烧录模式。

在开发板断电情况下按住烧录键,通过双USB数据线连接电脑和开发板,再给开发板通电。

如果操作正确,主板将进入USB烧录模式,同时,RK烧录工具识别到连接设备,显示 Found One LOADER Device。

六、OpenHarmony烧录总结

烧录OpenHarmony系统到开发板上是一个充满挑战但又极具价值的过程。作为一个开源分布式操作系统,OpenHarmony代表了当前软件开发的最新趋势。无论是智能家居、可穿戴设备、车载系统还是工业自动化,OpenHarmony均提供了广泛的应用潜力。通过参与到OpenHarmony的开发和烧录中,开发者不仅能探索技术前沿,还能为构建全场景智能生活贡献力量,同时也是对开源社区的重要贡献。

想了解更多关于开源的内容,请访问:

51CTO 鸿蒙开发者社区

https://ost.51cto.com

赞 ()
分享到:更多 ()

相关推荐

内容页底部广告位3
留言与评论(共有 0 条评论)
   
验证码: