首页 > 其他分享 >基于STM32环境空气质量检测系统

基于STM32环境空气质量检测系统

时间:2024-06-12 20:02:00浏览次数:17  
标签:芯片 检测 FLASH 电路设计 STM32 SPI 模块 空气质量 SD

基于STM32单片机环境空气质量检测系统功能说明:
TFTLCD显示+按键+LVGL(UI用户图形交互界面)
环境温湿度检测
环境空气质量检测(甲醛、二氧化碳等)
报警功能(蜂鸣器报警、图形界面弹窗报警)
时间显示
机智云平台连接
可充电(type-C)
低功耗

硬件原理图设计:
最小系统设计:
由于要使用到LVGL,可能需要加载字库、图片什么的,需要外挂SPI FLASH与SD卡,并且功能不是很多,用到的引脚也较少,所以这里我选用的是STM32F103RET6,该芯片参数如下:
在这里插入图片描述
其实选用这个芯片也是比较浪费的,可以选RCT6都可以,不用很大的FLASH和RAM,只是我这里为了想把UI做好看一点,才选大一点的,可以根据实际情况选择,反正淘宝上两者的价格差距也不是很大,电路如下:
在这里插入图片描述
存储模块设计:
存储模块部分主要包括SD卡、SPI FLASH(W25Q128)以及EEPROM(AT24C02),前面两者用于存储图片、字库等数据,从SD卡读相关数据写入SPI FLASH,写入SPI FLASH只用于出厂设置或者更新数据时使用,此后SPI FLASH只读;而SD卡可以存储一些日志什么的;EEPROM就用于存储一下设置数据。电路设计如下:

SPI FLASH 电路:
在这里插入图片描述
SD 卡电路:

在这里插入图片描述
温湿度模块:
该部分选用SHT20芯片,该芯片具有精度高、成本低、功耗低等特点:
在这里插入图片描述
如果还需降低成本,可以直接用AHT20或者DHT11都可以。
SHT20电路设计如下:
在这里插入图片描述
空气质量检测模块:
该部分选用SGP30芯片,该芯片精度高,但是成本也比较高,本项目成本最高部分也就是该模块了,电路设计如下:
在这里插入图片描述
由于该芯片是1.8V工作电压,所以还需提供一个1.8V稳压电路,并且单片机IO引脚输出3.3V,该芯片IO引脚输出1.8V,也不兼容,通信时需要加上电平转换电路。

WIFI模块:
WiFi模块使用ESP8266模块,可以直接接入机智云,在机智云app上看到相关数据;也可接入其他云平台,可开发性较大。电路设计如下:
在这里插入图片描述

标签:芯片,检测,FLASH,电路设计,STM32,SPI,模块,空气质量,SD
From: https://blog.csdn.net/qq_51182593/article/details/139635235

相关文章

  • 基于STM32的简易智能家居设计(嘉立创支持)
    一、项目功能概述1、OLED显示温湿度、空气质量,并可以设置报警阈值2、设置4个继电器开关,分别控制灯、空调、开关、风扇3、设计一个离线语音识别系统,可以语音控制打开指定开关、并且可以显示识别命令词到OLED屏上4、OLED实时显示4个继电器的状态5、设计一个低功耗开关电路,......
  • 基于yolov2深度学习网络的昆虫检测算法matlab仿真,并输出昆虫数量和大小判决
    1.算法运行效果图预览     2.算法运行软件版本matlab2022A 3.部分核心程序fori=1:12%遍历结构体就可以一一处理图片了ifigureimg=imread([imgPath[num2str(i),'.jpeg']]);%读取每张图片I=imre......
  • 『SD』人脸修复-ADetailer(智能检测人脸并修复好)
    本文简介如果图片上有多张人脸,用局部重绘的方式来修复工作量就有点大了。那么有没有一种方法让AI自动识别人脸进行修复呢?有有有,这个插件叫ADetailer。安装ADetailer要使用ADetailer修复人脸需要3步:安装ADetailer插件下载识别人脸的模型在图生图里用它第1步,安装......
  • 目标检测中的anchor机制
    目录一、目标检测中的anchor机制1.什么是anchorboxes?二、什么是Anchor?​编辑三、为什么需要anchorboxes?四、anchorboxes是怎么生成的?五、高宽比(aspectratio)的确定六、尺度(scale)的确定七、anchorboxes数量的确定八、Anchorboxes的用途  九、anchorboxes对......
  • 目标检测——铁轨表面裂纹数据集(三)
    铁轨裂纹检测:智慧守护下的安全之旅引言亲爱的读者们,您是否在寻找某个特定的数据集,用于研究或项目实践?欢迎您在评论区留言,或者通过公众号私信告诉我,您想要的数据集的类型主题。小编会竭尽全力为您寻找,并在找到后第一时间与您分享。一、背景在广袤无垠的大地上,铁轨如同一......
  • FreeRTOS学习笔记-基于stm32(14)内存管理
    一、FreeRTOS内存管理简介        FreeRTOS有两种方法来创建任务,队列,信号量等,一种动态一种静态。静态方法需要手动定义任务堆栈。使用动态内存管理的时候FreeRTOS内核在创建任务、队列、信号量的时候会动态的申请RAM。    我们在移植FreeRTOS时可以看到......
  • stm32系统时钟RCC简析
    一概念STM32本身十分复杂,外设非常多  但我们实际使用的时候只会用到有限的几个外设,使用任何外设都需要时钟才能启动,但并不是所有的外设都需要系统时钟那么高的频率,为了兼容不同速度的设备,有些高速,有些低速,如果都用高速时钟,势必造成浪费  并且,同一个电路,时钟越快功耗越快,同......
  • 数据预处理之基于聚类的TOD异常值检测#matlab
    1.基于聚类的异常值检测方法物以类聚——相似的对象聚合在一起,基于聚类的异常点检测方法有两个共同特点:(1)先采用特殊的聚类算法处理输入数据而得到聚类,再在聚类的基础上来检测异常。(2)只需要扫描数据集若干次,效率较高,适用于大规模数据集。2.检测方法计算步骤基于聚类的......
  • 机器学习课程设计,人工智能课程设计,深度学习课程设计--基于Transformer的家庭暴力情绪
    文章目录摘要第一章背景与意义1.1背景1.1.1家庭暴力发展现状1.1.2家庭暴力的危害1.2意义与目的第二章关键技术与方法2.1文本模态特征提取法2.2视频模态特征提取法2.3音频模态特征提取法2.4注意力机制(Attention)2.5多头注意力机制(Multi-Attention)2.6Transfor......
  • 【STM32F1例程2】GPIO外部中断输入
    1.实验说明无需连外部杜邦线,下载程序,全速运行,按右边按键看到LEDD1(PB4引脚驱动)亮暗能变化一次2.主要代码先上main.c#include"delay.h"#include"sys.h"//外部中断0配置,PA0脚产生外部中断是外部中断0voidEXTI0_Config(void){ EXTI_InitTypeDefEXTI_InitStructur......