OpenHarmony南向开发实例:【智能可燃气体检测系统】

样例简介

本项目是基于BearPi套件开发的智能可燃气体检测Demo,该系统内主要由小熊派单板套件和和MQ5可燃气体检测传感器组成。 智能可燃气体检测系统可以通过云和手机建立连接,可以在手机上控制感应的阈值,传感器感知到的可燃气体浓度超过阈值之后,将会通过云传给手机,并报警。

运行效果

当设备应用启动之后,操作效果如下:

运行效果

样例原理

原理示意图

工程版本
  • 系统版本/API版本:OpenHarmony 1.0.1 release
  • IDE版本:DevEco Device Tool Release 3.0.0.401

快速上手

准备硬件环境
  • BearPi-HM Nano套件一套

  • 预装HarmonyOS手机一台

    注:HarmonyOS是华为基于开源项目OpenHarmony开发的面向多种全场景智能设备的商用版本

准备开发环境

开发环境安装配置参照文档:docs.qq.com/doc/DUmN4VVhBd3NxdExK

准备工程

搜狗高速浏览器截图20240326151547.png

本用例采DevEco Device Tool工具进行开发,当配置完开发环境后,我们可以在IDE上进行工程的配置下载。

  • 打开DevEco Device Tool,连接远程linux服务器:[DevEco Device Tool 环境搭建]
  • 点击左下角DevEco插件图标,然后点击左边框出现的主页,弹出主页界面,主页中选择新建项目,如下图:

main_config

  • 配置下载工程

config && download

如上图所示,填写对应样例工程的名称,选择对应的样例组件和样例工程存放路径后,点击创建即可进行样例工程的下载。下载界面如下:

download

当右下角显示正在下载OpenHarmony镜像时,耐心等待下载完成即可

download

准备工具链
  • 在Projects中,点击Settings按钮,进入配置界面。

  • 在toolchain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击SetUp按钮,自动安装所需工具链。

  • 工具链自动安装完成后如下图所示。

    工具链配置成功

编译

样例代码下载完成后,DevEco Device Tool会重新要求连接远程服务器,输入密码连接后会进入对应的代码编辑界面,此时点击左下角DevEco插件图标,选择PROJECT TASKS可以查看到对应的样例工程,点击build选项进行编译,并可在终端查看对应的编译结果。

build ok

固件生成在对应工程目录的out/bearpi_hm_nano/smart_gas_detection目录下。

烧录/安装

编译完成后可以通过DevEco Device Tool进行烧录,在烧录前需要做一些烧录的配置:

配置准备

在配置烧录前需要先查看DevEco Device Tool是否可以正常识别串口。

  • 点击左边栏"REMOTE DEVELOPMENT",找到 并点击” Local PC “ 选项。

  • 查看 Local PC右边图标

    如若图标为

    方型图标

    ,则代表DevEco Device Tool已连接本地,可以正常识别串口。

    如若图标为

    箭头图标

    ,则代表DevEco Device Tool未连接本地,不能识别串口,此时需要点击该绿色图标进行连接,连接成功后图标会变为

    方型图标

check local pc

  • 点击主页,在主页选择对应工程,点击配置工程进入到配置页面

config project

配置串口

配置页面选择的板级配置页面,在该页面查找到烧录选项,配置烧录选项中的upload_port和upload_protocol,upload_port选择开发板对应的串口号,upload_protocol默认选择hiburn-serial,最后点击右上角的保存按钮进行保存。

config serail port

烧录

当配置完串口以及固件后,直接点击左边栏工程管理中的upload即可,此时下方终端会出现对应烧录的信息,当终端出现BootromDownloadBoot字样,按下开发板的 “RESET” 键复位开发板即可。

burn

操作体验
设备配网
  • 在设备上电前需准备好安装了数字管家应用的HarmonyOS手机, 并在设置中开启手机的NFC功能;

  • 写设备NFC标签

  • 烧录完成后,上电。开发者在观察开发板上状态LED灯以8Hz的频率闪烁时,将手机上半部靠近开发板NFC标签处;

  • 无需任何操作手机将自动拉起数字管家应用并进入配网状态,配网过程中无需输入热点账号密码。

    无感配网操作如下图所示

无感配网

阈值设置

配网完成后,数字管家应用会自动进入可燃气体传感器的控制页面,通过控制页面设置可燃气体传感器告警阈值。

可燃气体超标告警

当检测到的可燃气体数值,超过预先设定的阈值时,会通知数字管家应用告警, 并且告警消息还会推送同一家庭账号的所有成员。

实物操作

鸿蒙语言有TS、ArkTS等语法,那么除了这些基础知识之外,其核心技术点有那些呢?下面就用一张整理出的鸿蒙学习路线图表示:

从上面的OpenHarmony技术梳理来看,鸿蒙的学习内容也是很多的。现在全网的鸿蒙学习文档也是非常的少,下面推荐一些:完整内容可在头像页保存,或这qr23.cn/AKFP8k甲助力

内容包含:《鸿蒙NEXT星河版开发学习文档》

  • ArkTS
  • 声明式ArkUI
  • 多媒体
  • 通信问题
  • 系统移植
  • 系统裁剪
  • FW层的原理
  • 各种开发调试工具
  • 智能设备开发
  • 分布式开发等等。

这些就是对往后开发者的分享,希望大家多多点赞关注喔!


http://www.niftyadmin.cn/n/5481332.html

相关文章

软件设计模式之解释器模式

一、引言 在软件设计中,我们经常遇到需要“解释”和执行某种特定语法或语言的情况。这时,解释器模式就派上了用场。解释器模式(Interpreter Pattern)是一种行为设计模式,它提供了一种解释语言的语法并定义一个句子如何…

二叉树---堆的现实

目录 一、头文件的声明 二、功能函数的实现 void Swap(HPDateType* pa, HPDateType* pb); void HPInit(HP* php); void HPDestory(HP* php) bool HPEmpty(HP* php) void AdjustUP(HPDateType* a, int child) void AdjustDown(HPDateType* a, int …

【今日刷题】LeetCode 199.二叉树的右视图(中等)

今日刷题:LeetCode 199.二叉树的右视图(中等) 题目描述: 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,…

【vim 学习系列文章 20 -- a:mode 的值有哪些?】

请阅读【嵌入式开发学习必备专栏 之 Vim】 文章目录 a:mode 的值有哪些?举例Vim 底部状态栏设置 a:mode 的值有哪些? 在 Vim 脚本语言中,a:mode 常常用于函数内部,以获取该函数被调用时 Vim 正处于的模式。它主常用于那些可以从不同模式下被调用的函数…

ABB、FANUC机器人点位加速度用法

机器人在点位与点位之间的运动,会存在速度上的变化,加速度指令的添加可以减小机器人在运动中,由高速到低速间惯性的带来的影响,修正机器人的路径误差,让机器人的运动更加顺滑。 一、ABB机器人指令添加 ABB机器人加速…

GoLand 2024 for Mac/Win:卓越的GO语言集成开发工具环境

在数字化时代,编程语言的选择对于开发者的工作效率和项目质量至关重要。而GO语言,以其高效、简洁和并发的特性,成为越来越多开发者的优选。为了让GO语言开发者能够更高效地编写代码,GoLand 2024应运而生,它是一款专为M…

物联网可视化平台

随着数字化转型的深入,物联网技术正在成为企业实现智能化、高效化运营的重要工具。物联网可视化平台,作为连接物理世界与数字世界的桥梁,为企业提供了直观、实时的数据展示和监控能力,从而在数字化转型中扮演着关键角色。 一、物…

【Canvas与艺术】绘制磨砂黄铜材质Premium Quality徽章

【关键点】 渐变色的使用、斜纹的实现、底图的寻觅 【成果图】 ​​​​​​​ 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><tit…