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

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

3天内不再提示

基于全志XR806开发板的家用环境监测传感器设计

全志在线 来源:技术社区 2023-12-03 10:20 次阅读

项目作者:黄桃味的酸奶

本文来自全志XR806开发板评测活动文章,作者使用XR806开发板制作一个简单的家用环境监测传感器,可以获取当前的温度、湿度、气压、海拔这四个参数,同时能够通过外部的屏幕实时显示刷新。

功能介绍

XR806是一款支持WiFi和BLE的高集成度无线MCU芯片,以其集成度高、硬件设计简单、BOM成本低、安全可靠等优点,成为极客们进行小开发创作的首选。

恰好最近获得了XR806开发板的试用资格,因此决定基于此开发板制作一个简单的家用环境监测传感器。

6f7e615a-902b-11ee-939d-92fbcf53809c.jpg

作为一个环境监测传感器,它能够获取当前的温度、湿度、气压、海拔这四个参数,同时能够通过外部的屏幕实时显示刷新。在2023年的当下,能够联网上报信息的功能不可或缺。

硬件选型

本次小项目的核心是XR806开发板,显示部分使用2.8寸 ST7789显示屏,环境状态获取使用的是BMP280和ATH20传感器,显示屏使用SPI接口,传感器共用IIC总线。

为了方便我把它们全插在了面包板上,如图:

6f9d801c-902b-11ee-939d-92fbcf53809c.jpg

LCD: MOSI ==> PB4
     MISO ==> PB5
     CS  ==> PB6
     DC  ==> PB3
     CLK  ==> PB7
     RST  ==> PA19
     
  传感器: SCL ==> PA12
      SDA ==> PA13

程序实现

本项目开始使用的是Freertos的SDK,以默认的hello_demo为模板,复制一份在同级目录下,添加各个模块文件,如图所示:

6fc0c0cc-902b-11ee-939d-92fbcf53809c.png

在SDK顶层目录进行make menuconfig,配置项目名为demo/Sensor,使得项目能够编译(具体开发环境搭建不细说了)

6fd82c4e-902b-11ee-939d-92fbcf53809c.png

在主程序中有两大部分,一个是环境数据的获取,另一个是数据的上报.

  float pressure = 0;
  float temperature = 0;
  float asl = 0;
  u32 CT = 0;
    TFT_full(0XFFFF);
    flush_words();
    while (1)
    {
      BMP280GetData(&pressure, &temperature, &asl);
      printf("pressure = %f temperature = %f asl = %f
", pressure, temperature, asl);
      ATH20_Read_CTdata(&CT);
      printf("ct = %f%%
", (float)(CT / 1000));
      flush_num(temperature, pressure, asl, CT / 1000);
      getMsg(pressure,temperature, asl, (float)(CT / 1000));
      OS_MSleep(300);
    }
    OS_ThreadDelete(&sensors_thread);
  }

wlan部分写死,使用自己的热点,

6ffd9c5e-902b-11ee-939d-92fbcf53809c.png

mqtt实现部分参考example/mqtt,

7017e1a4-902b-11ee-939d-92fbcf53809c.png

配置使用公用mqtt服务器

Sensor任务实时更新数据到屏幕与Mqtt的发送fifo,mqtt任务一秒为周期上报数据。

702c6412-902b-11ee-939d-92fbcf53809c.png

mqtt服务器接收到的上报数据

实现效果

6f7e615a-902b-11ee-939d-92fbcf53809c.jpg

总体来说,xr806的freertos sdk功能覆盖全面,开发十分简洁,SDK中的例程覆盖全面,极大的方便产品的开发,大大好评。

本次的项目只是一个小玩具,难免代码中会有些小bug,欢迎各位朋友指正。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2526

    文章

    48110

    浏览量

    740145
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16019

    浏览量

    343669
  • 开发板
    +关注

    关注

    25

    文章

    4434

    浏览量

    94034
  • 环境监测
    +关注

    关注

    3

    文章

    293

    浏览量

    18508
  • 全志
    +关注

    关注

    24

    文章

    220

    浏览量

    52647

原文标题:简单的家用环境监测传感器

文章出处:【微信号:gh_79acfa3aa3e3,微信公众号:全志在线】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    简单的家用环境监测传感器

    项目作者:黄桃味的酸奶本文来自XR806开发板评测活动文章,作者使用XR806开发板制作一个
    发表于 03-25 11:25

    XR806芯片、XR806开源鸿蒙开发板简介

    。可广泛满足 智能家居、智慧楼宇、工业互联、儿童玩具、电子竞赛、极客DIY 等领域的无线连接需求。芯片框图芯片参数XR806开源鸿蒙开发板介绍XR806开发板是基于
    发表于 11-15 17:08

    XR806芯片、XR806开源鸿蒙开发板简介

    。可广泛满足 智能家居、智慧楼宇、工业互联、儿童玩具、电子竞赛、极客DIY 等领域的无线连接需求。芯片框图芯片参数XR806开源鸿蒙开发板介绍XR806开发板是基于
    发表于 11-15 18:32

    【资料释放】XR806开发板全资料释放,连bomlist都给出来了

    XR806开发板/模组全部资料都将通过本帖子释放,包括bomlist、完整硬件设计、软件SDK等,拿到资料就能DIY板子开放原子基金会官方介绍链接:https
    发表于 12-06 14:06

    如何对XR806开发板环境进行配置呢

    如何对XR806开发板环境进行配置呢?有哪些配置步骤?
    发表于 12-28 07:51

    【直播预告】XR806芯片应用实战分享

    /joinXR806优秀开发例程《基于OpenHarmony的棋子分拣机》《用XR806开源鸿蒙开发
    发表于 02-28 17:39

    【直播预告】XR806芯片应用实战分享会!

    /joinXR806优秀开发例程《基于OpenHarmony的棋子分拣机》《用XR806开源鸿蒙开发
    发表于 03-01 09:27

    基于XR806开发板开发的棋子分拣机

    了一个模型,基于XR806开发板和openHarmony实现了分拣棋子的功能。技术原理关于技术实现,用到的材料主要有XR806开发板、两个9g的舵机,以及一个红外光
    发表于 03-10 14:20

    【资料合集】XR806开发板全部资料

    XR806开发板/模组全部资料都将通过本帖子释放,包括bomlist、完整硬件设计、软件SDK等,拿到资料就能DIY板子开放原子基金会官方介绍链接:https
    发表于 03-10 14:59

    【OpenHarmony开发样例】基于XR806开发板开发的智能门锁

    参考 连接IOT云平台指南;智能设备与数字管家应用之间的设备模型定义可以参考profile .2. 实物简介: 如上图所示,上面是XR806开发板,中间的是hcsr04超声波距离传感器,下面
    发表于 03-11 10:29

    一条命令搞定XR806编译环境

    XR806科技旗下子公司广州芯之联研发设计的一款支持Wi-Fi和BLE的高集成度无线MCU芯片,基于安谋科技STAR-MC1架构,支持鸿蒙L0系统。
    发表于 03-30 16:11

    轻量系统:XR806XR806AF2L)

    开发板名称(芯片型号) XR806XR806AF2L) 芯片架构 CPU频率 介绍(字数请控制在200字以内)
    发表于 10-19 11:14

    XR806实现简单的家用环境监测传感器

    ,因此决定基于此开发板制作一个简单的家用环境监测传感器. 1.功能介绍 作为一个环境监测传感器,
    发表于 11-03 10:19

    XR806开发板试用】简单的家用环境监测传感器

    XR806是一款支持WiFi和BLE的高集成度无线MCU芯片
    发表于 10-23 11:30 253次阅读
    【<b class='flag-5'>XR806</b><b class='flag-5'>开发板</b>试用】简单的<b class='flag-5'>家用</b><b class='flag-5'>环境监测</b><b class='flag-5'>传感器</b>

    全志XR806开发板原理图

    全志XR806开发板原理图
    发表于 10-19 15:11 9次下载