OpenHarmony轻量系统—润和HiHopePegasus 3861实现UDP广播温湿度

系统 OpenHarmony
笔者刚开始接触轻量系统开发。因为之前都接触的是标准系统(开发板是DAYU200),所以笔者开始在源码的选择还是和标准系统一样,直接拿OpenHarmony 3.2 release来编译出wifiiot_hispark_pegasus的固件。

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

​51CTO 开源基础软件社区​

​https://ost.51cto.com​

笔者最近拿润和HiHope Pegasus(也叫做wifiiot_hispark_pegasus)开发套件开始OpenHarmony轻量系统的学习,以此篇文章分享学习经验。

本文实现了用润和HiHope Pegasus UDP广播温湿度数据,样例demo下载链接:https://gitee.com/from-north-to-north/open-armony-north/tree/master/润和3861轻量系统UDP广播

样例运行的OpenHarmony源码环境下载:https://gitee.com/HiSpark/hi3861_hdu_iot_application

通过本文您将了解:

1、HiHopePegasus 3861 连接wifi

2、HiHopePegasus 3861 温湿度

3、HiHopePegasus 3861 UDP广播

一、OpenHarmony 轻量系统开发源码选择

笔者刚开始接触轻量系统开发。因为之前都接触的是标准系统(开发板是DAYU200),所以笔者开始在源码的选择还是和标准系统一样,直接拿OpenHarmony 3.2 release来编译出wifiiot_hispark_pegasus的固件。

但是等到笔者学习后发现,作为初学者的笔者拿到一些大佬的样例demo在OpenHarmony 3.2 release源码中根本编译不过(要么是一些函数名变了,要么是头文件路径变化了)。

3.2release 中的轻量系统源码,很多目录结构变化了。然后一些函数名称也有很大变化。后来咨询徐思维老师得知,因为有一些 xxx_lite 的组件退休了,和标准系统合并到一起了。(早期版本中很多组件有 xxx_lite 和 xxx,或者 xxx_lite 和 xxx_std 两个版本,xxx_lite 就是 轻量、小型 的版本。退休的组件在这个组织下面能找到: https://gitee.com/openharmony-retired)。

OpenHarmony 1.x Releases也已经全部停止维护了,参见公告:

https://gitee.com/openharmony/release-management/blob/master/OpenHarmony 1.0.1-Release分支停止维护公告.md#https://gitee.com/openharmony/docs/tree/master/zh-cn/release-notes

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

详细可参见OpenHarmony版本生命周期管理 https://gitee.com/openharmony/release-management/blob/master/OpenHarmony生命周期发布公告.md。

所以我选择了从海思的仓库中下载HiHope Pegasus套件的OpenHarmony轻量系统源码,下载链接:https://gitee.com/HiSpark/hi3861_hdu_iot_application (里面润和提供的样例demo是能够跑通的,并且一直在维护)。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

二、. UDP广播温湿度

UDP广播温湿度 样例demo下载:https://gitee.com/from-north-to-north/open-armony-north/tree/master/润和3861轻量系统UDP广播

1、运行步骤:

把样例demo下载后放置在applications/sample/wifi-iot/app文件夹下:

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

在样例demo中设置要连接的wifi信息。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

修改applications/sample/wifi-iot/app/BUILD.gn文件,把样例demo加入编译。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

修改device/soc/hisilicon/hi3861v100/sdk_liteos/build/config/usr_config.mk文件。

CONFIG_I2C_SUPPORT is not set行,修改为:CONFIG_I2C_SUPPORT=y。

进行编译,然后把固件烧录到润和HiHope Pegasus开发套件中(这个部分可以参考网上大佬的文章,笔者不多叙述)。

轻量系统的编译真是快呀,两三秒就搞定。不像标准系统需要两三个小时。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

2、运行效果:

将电脑连接同样的wifi,在电脑端打开socket调试工具,创建UDP组播,组播地址为255.255.255.255,组播端口为8080。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

开发板连接串口工具,按下开发板上reset键。可以看到socket调试工具一直不断收到开发板UDP广播的温湿度数据。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

开发板连接串口工具,按下开发板上reset键。可以看到本开发板在局域网内的ip地址。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

将电脑和开发板链接同一个开发板后,可以在电脑端 ping一下开发板ip地址。

[OpenHarmony轻量系统]润和HiHopePegasus 3861实现UDP广播温湿度-开源基础软件社区

三、 样例demo源码分析

UDP广播温湿度 样例demo下载:https://gitee.com/from-north-to-north/open-armony-north/tree/master/润和3861轻量系统UDP广播。

├── BUILD.gn
├── aht20.c # 温湿度实现文件
├── aht20.h # 温湿度实现头文件
├── main.c # UDP广播温湿度实现文件
├── wifi_connecter.c # wifi连接实现文件
└── wifi_connecter.h # wifi连接实现头文件

温湿度实现源码来自 https://gitee.com/HiSpark/hi3861_hdu_iot_application/tree/master/src/vendor/hihope/hispark_pegasus/demo/10_i2caht20。

wifi连接实现源码来自:

https://gitee.com/asd1122/hi3861_hdu_iot_application_cy/tree/master/demo/wifi_control。

kernel/liteos_m/cmsis/cmsis_os2.h的中文注释:

https://gitee.com/openharmony-sig/interface_native_header/blob/master/zh-cn/kernel/liteos_m/cmsis/cmsis_os2.h。

轻量级系统内核:

https://gitee.com/openharmony/docs/tree/58040d7d4d34a2176b12d08059d8d295cc821983/zh-cn/device-dev/kernel。

文章相关附件可以点击下面的原文链接前往下载:

 https://ost.51cto.com/resource/2709。

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

​51CTO 开源基础软件社区​

​https://ost.51cto.com​

责任编辑:jianghua 来源: 51CTO 开源基础软件社区
相关推荐

2023-05-06 15:41:00

人体传感器数据鸿蒙

2023-06-25 14:52:04

智能家居开发鸿蒙

2022-06-09 14:40:14

系统移植鸿蒙

2023-07-28 15:32:26

鸿蒙操作系统

2021-01-14 11:58:35

鸿蒙HarmonyOSHi3861

2023-08-07 15:13:09

设备开发鸿蒙

2022-04-15 14:31:02

鸿蒙操作系统

2023-04-03 15:39:31

2022-04-07 15:28:16

HarmonyOS鸿蒙操作系统

2022-01-21 21:22:24

OpenHarmon操作系统鸿蒙

2023-03-24 14:39:17

鸿蒙系统开发

2023-03-03 13:45:00

数据中心传感器

2022-04-15 11:46:09

轻量系统解耦鸿蒙操作系统

2022-02-09 19:45:41

MQTTOpenHarmon鸿蒙

2024-01-05 15:32:47

鸿蒙SNTP智慧时钟

2022-01-24 18:43:20

OpenHarmon操作系统鸿蒙

2022-02-10 15:07:10

云平台OpenHarmon系统开发

2022-01-24 18:35:56

OpenHarmon鸿蒙操作系统

2022-08-19 10:54:47

操作系统鸿蒙

2023-04-17 16:21:58

操作系统鸿蒙
点赞
收藏

51CTO技术栈公众号