基于 OpenHarmony 的 Nexus_Geometry_Nano_Board 亮灯实验

在开发一个项目的时候,首先是对开发板的了解,然后是对 OpenHarmony 操作系统的解读,知道要使用哪些系统能力。在开发的过程中要了解 git 与相关命令(比如说 repo),可以更高效的获取 OpenHarmony 源码。开发的过程中要注意开发环境是否装好,首次获取 OpenHarmony 源码可以通过进行编译来验证开发环境与源码的完整性。开发后进行编译如果有报错建议逐行解决报错,在没有报错后将编译产生最终的目标文件使用烧录软件进行烧录,验证逻辑是否有问题,是否可以正常运行等。本文中有很详细的对开发环境安装命令,案例源码等的解释。如果是基础的开发者,建议可以先研究编译过程的理论和案例源码的理论,再去按照步骤进行实验。
一.环境搭建
1.1 安装码云 repo 工具
复制代码

1.2 环境变量 path 中增加 repo 路径
复制代码


1.3 安装 git-lfs
注:首次 apt install 之前要运行 apt update -y
复制代码

1.4 下载 OpenHarmony 5.1 源码
复制代码


1.5 初始化本地代码仓库
复制代码

1.6 下载源代码
复制代码
1.7 下载大文件
复制代码

1.8 下载编译工具链
复制代码

1.9 vim ~/.bashrc
复制代码

1.10 安装 hb
复制代码

1.11 显示当前系统的 PATH 环境变量的值
复制代码

1.12 apt update
复制代码

1.13 安装 cmake
复制代码

1.14 安装 pycparser
复制代码

1.15 选中要编译哪个
复制代码

1.16 执行编译
复制代码

二.第一个案例
由亮灯案例来验证开发环境是否正确,同时熟悉 OpenHarmony 的开发方式。
2.1 在/root/code/ws63_ohos/applications/sample/wifi-iot/app 路径下新建文件夹 light_tricolor,在新建的文件夹目录下新建文件 light_tricolor.c 与 BUILD.gn。

2.2 在/root/code/ws63_ohos/applications/sample/wifi-iot/app/light_tricolor/light_tricolor.c 文件放入源码:
复制代码

2.3 在/root/code/ws63_ohos/applications/sample/wifi-iot/app/light_tricolor/BUILD.gn 文件放入源码:
复制代码
放入源码后如下:

2.4 在/root/code/ws63_ohos/device/soc/hisilicon/ws63v100/sdk/build/config/target_config/ws63/config.py 中加入"AAA",如下图所示:

2.5 在/root/code/ws63_ohos/device/soc/hisilicon/ws63v100/sdk/libs_url/ws63/cmake/ohos.cmake 下加入“AAA”,入下图所示:

2.6 编译好直接右键下载/root/code/ws63_ohos/out/nearlink_dk_3863/nearlink_dk_3863/ws63-liteos-app/ws63-liteos-app_all.fwpkg 文件:

2.7 在路径为/root/code/ws63_ohos/applications/sample/wifi-iot/app 的文件 BUILD.gn 改为:
复制代码
如下图所示:

三.使用华为云的 MQTT 实验
3.1 华为云上打开 iotDA 后创建产品,然后注册设备,在注册设备后点击设备右侧的详情查看 MQTT 连接参数,在 MQTTX 输入了华为云的 MQTT 连接参数后会显示设备在线


3.2 打开华为云在线调试,使用代码里有 MQTT 连接参数的开发板或 MQTTX 后连接华为云平台,可在华为云在线调试里看到设备在线

3.3 使用开发板或 MQTTX 发送消息,华为云接收到则调试成功

3.4 MQTT 案例
复制代码
四.烧录与运行
4.1 在编译后在 ws63-liteos-app 中产生.fwpkg 文件,这就是要烧录的文件点击文件后右键下载就可以下载到本地,注意文件路径。

4.2 装好驱动(CH341SER)后开发板通过数据线连接电脑,电脑同时打开设备管理器查看 COM 口的编号,注意不要看错,以免无法烧录。

4.3 打开 hitool,选择对应要烧录的文件路径,按照下图进行勾选,然后点击 connect 后于开发板进行连接,然后点击开发板的复位键就可以进行烧录了,烧录完成会在下面的文字框内显示完成。hitool 对于是一个此系列芯片的烧录软件,由芯片的厂商提供。

4.4 烧录完成后重写插拔数据线就可以让板子运行写好的测试程序,运行成功如下图。

最终的效果如上图,烧录时要注意波特率,波特率太低会导致烧录缓慢,波特率太高可能会导致开发板烧录坏,建议按照烧录软件的默认波特率进行烧录。烧录之后需要重新通电测试,观察是否灯已经闪烁。编译没有出现报错不意味着烧录后也可以正常运行,因为可能会有的时候是代码的逻辑出现错误导致最终运行不了。
评论