0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】第6章 环境监测系统

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-10-31 15:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文来源电子发烧友社区,作者:ouxiaolong, 帖子地址:https://bbs.elecfans.com/jishu_2287656_1_1.html


开发环境:
开发系统:Ubuntu 20.04
开发板:Pegasus物联网开发板
MCU:Hi3861
OpenHarmony版本:3.0.1-LTS
Pegasus物联网开发板有很多模块,笔者就使用环境检测板来实时检测环境变化。
6.1环境检测板简介
环境检测板有三个设备:AHT20温湿度传感器半导体可燃气体传感器MQ-2,蜂鸣器MLT-8530。
poYBAGKvEx-AYKEbAA76tYlpKpM985.png
6.1.1 温湿度传感器AHT20简介
AHT20是一款精度高,完全校准贴片封装的温湿度传感器,采用标准IIC通信方式,超小的体积、极低的功耗。温湿度传感器均在高精度的恒温恒湿腔室中进行出厂校准,直接输出经温度补偿后的湿度、温度等信息,用户无需要对湿度进行温度补偿,便可得到准确的温湿度信息。
AHT20的参考电路如下:
pYYBAGKvEy-AUX9JAAFteySg3co225.png
SDA和SCL都需要接上拉电阻;VDD脚需要外接10uF的滤波电容
AHT20的读取比较简单,分为两步:
第一步:初始化
AHT20初始化相关的命令如下:
pYYBAGKvEzeAa9nrAAD8B5kU5iE088.png
第二步:读取温湿度
这个就更简单了,发送数据读取命令即可。
poYBAGKvE0KAGP-tAAGsU9Pz_c0551.png
关于AHT20更详细的说明请参看《AHT20技术手册》。
6.1.2气体传感器 MQ-2简介
MQ-2 气体传感器所使用的气敏材料是在清洁空气中导电率较低的二氧化锡(SnO2)。当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大。使用简单的电路即可将电导率的变化转化为与该气体浓度相对应的输出信号。MQ-2 气体传感器对丙烷、烟雾的灵敏度高,对天然气和其他可燃蒸汽的检测也很理想。
本传感器通过 J7接口获取ADC 值,从而得到气体的浓度。
pYYBAGKvE1iAIw5BAAC3ZC33JkA524.png
6.1.3蜂鸣器MLT-8530简介
蜂鸣器MLT-8530是一个无源蜂鸣器,需要通过PWM来控制,本模块的蜂鸣器MLT-8530电路如下所示。
pYYBAGKvE2aAFvmiAACqJbhMCdw623.png
当BEEP为高电平的时候,三极管mmbt3904导通,蜂鸣器B1有电流流过;当BEEP为低电平的时候,三极管截止,蜂鸣器B1没有电流流过。
6.2环境监测系统实现
和前面的应用一样,分为三步。
6.2.1新建目录
在./applications/sample/wifi-iot/app路径下新建一个目录,用于存放环境检测的源码文件。
在app下新增业务environment_app其中environment_app.c为应用代码入口,BUILD.gn为编译脚本,其余的相应的接口文件,目录结构如下:
poYBAGKvE3aAVGGoAACIpE5Q380378.png
6.2.2编写应用代码
鸿蒙逛网已经有相关的应用了,只需简单的移植即可。
笔者这里只是做了简单的修改。
poYBAGKvE4CAUBMqAACDNBWG3QA880.png
下载地址:
https://gitee.com/hihope_iot/HiHope_Pegasus_Doc/tree/master/
值得注意的是,本实例用到了PWM和I2C,但是默认情况下这两个选项没有打开,需要打开这两个选项。
#CONFIG_PWM_SUPPORT is not set修改为CONFIG_PWM_SUPPORT=y
#CONFIG_I2C_SUPPORT is not set修改为CONFIG_I2C_SUPPORT=y
修改路径为:device/hisilicon/hispark_pegasus/sdk_liteos/build/config/usr_config.mk
6.2.3修改编译组织文件
修改./applications/sample/wifi-iot/app/wifi_connect/BUILD.gn文件,内容如下所示:
static_library("environmentapp"){
sources = [
"environment_app.c","oLED_ssd1306.c", "aht20.c",
include_dirs = [
"//utils/native/lite/include",
"//kernel/liteos_m/kal",
"//base/iot_hardware/peripheral/inteRFaces/kits",
}
static_library中指定业务模块的编译结果,为静态库文件libenvironmentapp.a,开发者根据实际情况完成填写。
sources中指定静态库.a所依赖的.c文件及其路径,若路径中包含"//"则表示绝对路径(此处为代码根路径),若不包含"//"则表示相对路径。
include_dirs中指定source所需要依赖的.h文件路径。
6.2.4新增组件
将environmentapp添加到组件中。即修改applications/sample/wifi-iot/app/BUILD.gn文件,修改后如下所示。
import("//build/lite/config/component/lite_component.gni")
lite_component("app"){
features = [
"environment_app:environmentapp"
}
environment_app是相对路径,指向applications/sample/wifi-iot/app/environment_app。
environmentapp是目标,指向applications/sample/wifi-iot/app/environment_app/BUILD.gn中的static_library("environmentapp")。
6.2.5编译下载测试
最后,编译下载固件,打开串口不断会有气体的数据信息。
poYBAGKvE4qAJKqOAAN5AaUf-WY750.png
如果街上OLED模块,还会实时显示温湿度,同时蜂鸣器也会响应,同时LED也会闪烁。

pYYBAGKvE5CAAvU2AARMyunNgfg648.jpg

这是一个综合实例,代码有些复杂,后面再单独讲解。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • wi-fi
    +关注

    关注

    15

    文章

    2485

    浏览量

    130208
  • HarmonyOS
    +关注

    关注

    80

    文章

    2157

    浏览量

    36415
  • HiSpark
    +关注

    关注

    1

    文章

    156

    浏览量

    7815
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    技术资讯 I Wi-Fi 模块设计

    Wi-Fi模块可实现无缝连接和数据交换,对设备进行远程控制和监测Wi-Fi模块设计旨在打造一套紧凑且高效的软硬件解决方案,使设备能够通过Wi-Fi网络通信。这类模块常用
    的头像 发表于 02-27 17:12 995次阅读
    技术资讯 I <b class='flag-5'>Wi-Fi</b> 模块设计

    Wi-Fi:无线连接的全球通用语

    Wi-Fi功能,跨品牌、跨设备互联互通性强,生态完整。3. 灵活部署,易于扩展支持星型、Mesh等多种组网方式,可根据环境灵活布置接入点,扩大覆盖范围。4. 技术持续演进从802.11a/b/g到
    发表于 01-07 09:49

    Nordic发布nRF7002 EBII 开发板, 支持Wi-Fi 6, 解锁nRF54L新玩法

    Wi-Fi 6 功能,帮助开发人员创建高性能、高能效的Wi-Fi 6 物联网解决方案。 基于 Nordic 的 nRF7002 Wi-Fi
    发表于 12-10 11:58

    Wi-Fi模块选型指南 | 低功耗蓝牙/Wi-Fi 6模块推荐 | 物联网设备集成攻略

    物联网的快速发展,Wi-Fi技术的成熟的情况下,越来越多的场景需要用到Wi-Fi来无线传输数据,尤其是移动设备中,怎么再设备中选择合适的Wi-Fi模块呢?下面我们来介绍下Wi-Fi模块
    的头像 发表于 12-09 11:27 1478次阅读
    <b class='flag-5'>Wi-Fi</b>模块选型指南 | 低功耗蓝牙/<b class='flag-5'>Wi-Fi</b> <b class='flag-5'>6</b>模块推荐 | 物联网设备集成攻略

    用于 Wi-Fi 6E 的 Skyworks ICE™ 6 GHz 中高功率前端模块 skyworksinc

    电子发烧友网为你提供()用于 Wi-Fi 6E 的 Skyworks ICE™ 6 GHz 中高功率前端模块相关产品参数、数据手册,更有用于 Wi-Fi
    发表于 10-27 18:30
    用于 <b class='flag-5'>Wi-Fi</b> <b class='flag-5'>6</b>E 的 Skyworks ICE™ <b class='flag-5'>6</b> GHz 中高功率前端模块 skyworksinc

    Wi-Fi 6将为智能工厂创造更多价值

    Wi-Fi 6基于IEEE 802.11ax标准开发,为满足智能工厂应用需求提供了提升网络效率的新特性。与之前的Wi-Fi 5相比,Wi-Fi 6
    的头像 发表于 09-28 10:37 1173次阅读

    浅谈Wi-Fi 6E与Wi-Fi 7的关键器件——BAW滤波器新技术

    作者: Qorvo 亚太区无线连接事业部高级行销经理林健富   2020年1月,Wi-Fi联盟正式宣布开放6GHz频段(5925MHz-7125MHz),并将其命名为Wi-Fi 6E。
    发表于 09-19 18:29 2579次阅读
    浅谈<b class='flag-5'>Wi-Fi</b> <b class='flag-5'>6</b>E与<b class='flag-5'>Wi-Fi</b> 7的关键器件——BAW滤波器新技术

    如何更新 NuMaker IoT 板上的 Wi-Fi 模块固件?

    更新 NuMaker IoT 板上的 Wi-Fi 模块固件
    发表于 09-04 08:28

    基于 SSID 的 Wi-Fi 定位:与其他定位服务的性能比较

    导航卫星系统(GNSS)的重要补充,尤其是在建筑物和密集城区,GNSS 可能会因信号衰减和中断而失效。 本博文将介绍我们基于 SSID 的 Wi-Fi 定位解决方案的工作原理以及如何开始测试。然后
    发表于 08-31 21:01

    什么是Wi-Fi 6 技术,在人们生活中有哪些便利应用

    silex希来科告诉您什么是Wi-Fi 6 技术,在人们生活中有哪些便利应用
    的头像 发表于 08-28 09:19 1382次阅读
    什么是<b class='flag-5'>Wi-Fi</b> <b class='flag-5'>6</b> 技术,在人们生活中有哪些便利应用

    Texas Instruments CC335x SimpleLink™双频Wi-Fi® 6配套IC数据手册

    RTOS主机的成本敏感型嵌入式应用。Texas Instruments CC335x为物联网 (IoT) 的嵌入式设备应用带来了Wi-Fi 6的高效性能,并具有较小的PCB占用面积和高度优化的物料清单
    的头像 发表于 07-23 11:37 1903次阅读
    Texas Instruments CC335x SimpleLink™双频<b class='flag-5'>Wi-Fi</b>® <b class='flag-5'>6</b>配套IC数据手册

    如何选择合适的芯科科技Wi-Fi开发板

    您正在寻找适用于超低功耗物联网应用项目的Wi-Fi 开发板吗?本文将介绍Silicon Labs(芯科科技)推出的所有SiWx917 Wi-Fi 6和低功耗蓝牙5.4解决方案的Wi-Fi
    的头像 发表于 07-09 09:15 3148次阅读

    Wi-Fi 8:开启极高可靠性 (UHR) 连接的新纪元——1

    ,在2019年,Wi-Fi 6凭借着MU-MIMO、1024QAM、OFDMA等“革命性创新”技术,大幅提升了Wi-Fi 本身的能效,让Wi-Fi
    发表于 06-13 11:09

    ‌迅通PTR7002 Wi-Fi 6模块技术解析

    在物联网设备对无线连接性能要求日益严苛的背景下,迅通推出的‌PTR7002 Wi-Fi 6模块‌凭借其技术特性成为开发者关注的硬件方案。本文将从芯片架构、射频性能及开发支持等维度进行深度剖析
    发表于 06-10 10:38

    [CYW4373] BT device_id正常,Wi-Fi device_id失败的原因?

    这是 Liam,在 WPG(IFX、KR disty)担任 FAE。我们的客户对 CYW4373 BT/Wi-Fi 检测问题有疑问。 1)问题 我们客户的系统通过 USB 集线器连接
    发表于 06-05 06:07