码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 基于OpenHarmony L2设备,如何用IoTDeviceSDKTiny对接华为云


    摘要:本文主要讲解如何基于L2设备对接华为云IoTDA,以DAYU200开发板,采用IoTDeviceSDKTiny对接华为云IoTDA,当然这里也可以采用其他OpenHarmony的富设备。

    本文分享自华为云社区《基于OpenHarmony L2设备 采用IoTDeviceSDKTiny对接华为云》,作者:星辰27。

    1 前期环境准备

    (1)开发板相关:参考DAYU开发指导

    (2)代码编译相关:OpenHarmony源码以及编译环境

    2 下载SDK

    下载附件中源代码后,将文件夹重命名为iot_device_sdk_tiny,将其拷贝到已经下载好的OpenHarmony 源码根目录的third_party文件夹下,我这里使用的OpenHarmony版本为3.1.1- release版本。

    3 添加子系统编译构建

    在子系统配置文件subsystem_config.json中新建子系统。其位于OpenHarmony源码根目录的build文件夹下,添加如下构建脚本

    1. "iot_device_sdk_tiny": {
    2. "path": "third_party/iot_device_sdk_tiny",
    3. "name": "iot_device_sdk_tiny"
    4. }

    具体如图1所示

    图1

    在产品配置文件中添加编译上述子系统,具体命令如图2所示,可见其子系统名称与上述文件一一对应。其为OpenHarmony源码目录下的productdefine/common/products/rk3568.json文件。

    图2

    4 验证添加子系统

    我们可以通过修改iot_device_sdk_tiny中demos编译文件选项进行配置具体如下图,将demo赋值为hello_world,编译hello_world_demo,看最终是否打印hello world。

    图3

    采用如下命令进行编译

    ./build.sh --product-name rk3568 --build-target iot_device_sdk_tiny

    编译成功具体如图4所示

    图4

    编译生成文件位于//out/rk3568/iot_device_sdk_tiny/iot_device_sdk_tiny/文件下的hello_world_demo。

    生成了hello_world_demo,我们采用hdc_std工具将该文件发送到开发板的data文件夹下,具体如下命令

    hdc_std file send D:\DAYU200_images\hello_world_demo ./data

    发送成功后进入shell,进入data文件夹下,执行hello_world_demo。

    1. cd data
    2. ./hello_world_demo

    如果显示权限问题,请通过如下命令添加权限

    chmod 777 hello_world_demo

    之后再次执行发现打印如下字幕,与代码中hello_world_demo_.c中一致。

    图5

    5 验证对接华为云

    之后将图3中demo赋值为mqtt_tiny_v5_agriculture,之后重复上述过程编译,运行。

    图6

    如果想使用MQTTS对接华为云,那么可以将iot_config.h文件中的最下面的宏CONFIG_MQTTS打开即可。如图7所示。

    图7

    运行结果如下所示即为对接华为云成功,当然也可以通过华为云IoTDA consle界面查看到设备在线,且在上报数据。

    图8

    图9

    • 附件:iot_device_sdk_tiny.rar

    点击关注,第一时间了解华为云新鲜技术~

  • 相关阅读:
    索引性能分析
    从InfluxDB到TDengine,阳光氢能为什么会做出这个选择?
    大数据ClickHouse(十三):MergeTree系列表引擎之VersionedCollapsingMergeTree
    单链表——OJ题(一)
    模拟用户登录功能的实现以及演示SQL注入现象
    分组取前N记录
    【服务器数据恢复】Linux服务器EXT4文件系统故障的数据恢复案例
    【Vue】组件通信与方法暴露实践
    勇士大战恶魔?这款桌游明明是套高质量原创手办
    高德地图 JS API用于绘画船舶轨迹
  • 原文地址:https://blog.csdn.net/devcloud/article/details/127689418
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号