83-基于stm32单片机DHT11温湿度监测报警系统Proteus仿真+源码

news2024/10/5 18:26:19

资料编号:083

一:功能介绍:

1、采用stm32单片机+OLED显示屏+DHT11温湿度+蜂鸣器,制作一个温湿度采集,OLED显示相关数据,

2、通过按键设置温度上限、湿度上限;

3、当采集温度大于设置温度,或者采集湿度大于设置湿度,蜂鸣器进行报警提醒;

4、OLED显示屏显示采集温湿度、设置的温湿度阈值和设置状态;

二:仿真演示视频+程序简要讲解:(程序有中文注释,新手容易看懂)

三:设计软件介绍

本设计使用C语言编程设计,程序代码采用keil5编写,程序有中文注释,新手容易看懂,仿真采用Proteus软件进行仿真演示视频使用的是Proteus8.9版本;资料包里有相关软件包,可自行下载安装。

四:程序打开方法

特别注意:下载资料包以后一定要先解压!(建议解压到桌面上,文件路径太深会导致程序打开异常),解压后再用keil5打开。

c7ef82aad742bdca940a0445ed391c8b.png

be696f31e18001abc37ce2f4fc7759d4.png

程序部分展示,有中文注释,新手容易看懂
  DHT11_Read_Data(&temp, &hum);//温湿度读取
    sprintf((char *)buf, "temp:%d C  ", temp);//整数转字符串 温度
    LCD_P6x8Str(2, 1, buf);//字符显示
    sprintf((char *)buf, "hum:%d   " , hum);//整数转字符串   湿度
    LCD_P6x8Str(2, 3, buf);//字符显示


    if(KEY1==1) //设置按键
    {  
      while(KEY1!=0);
        buf1++;
      if(buf1>1) buf1=0;
    }
    if(KEY2==1&&buf1==0) //设置温度报警+
    {    
      while(KEY2!=0);
        buf2++;  
      if(buf2>100) buf2=100,LCD_Init();      
    }
    if(KEY3==1&&buf1==0) //设置温度报警-
    {    
      while(KEY3!=0);
        buf2--;  
      if(buf2<1) buf2=1,LCD_Init();      
    }
    
    if(KEY2==1&&buf1==1) //设置湿度报警+
    {    
      while(KEY2!=0);
        buf3++;    
      if(buf3>100) buf3=100,LCD_Init();      
    }


    if(KEY3==1&&buf1==1) //设置湿度报警-
    {    
      while(KEY3!=0);
        buf3--;    
      if(buf3<1) buf3=1,LCD_Init();      
    }
    sprintf((char *)buf, "SET:%d", buf2);//整数转字符串 温度
    LCD_P6x8Str(80, 1, buf);//字符显示
    sprintf((char *)buf, "SET:%d" , buf3);//整数转字符串   湿度
    LCD_P6x8Str(80, 3, buf);//字符显示


      
    if(temp>buf2||hum>buf3)  beep=0;//温度或者湿度过高  开启蜂鸣器报警
    else beep=1;
    
    if(buf1==0)
    {
      sprintf((char *)buf, "SET:TEMP%d", 1);//整数转字符串 温度
      LCD_P6x8Str(30, 6, buf);//字符显示
    }
    else 
    {
      sprintf((char *)buf, "SET:HUM%d ", 1);//整数转字符串 温度
      LCD_P6x8Str(30, 6, buf);//字符显示
    }

五:仿真文件(采用Proteus打开)

f66800efdb4452e0f0e9a5fe9b180942.png

e18859e49c608bf4fe0e10e1ca14a15a.png

90c6ee8cc93ae103580a83c8f80522e9.png

六:资料清单展示(文件中包含的相关资料)

9ab0a91c5a9aa007aeae9f722e83d873.png

付费后即可在下方获取资料下载链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/892288.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis系列(三):深入解读Redis主从同步机制

首发博客地址 https://blog.zysicyj.top/ Redis高可靠靠什么保证&#xff1f; 为什么要提这个呢&#xff0c;因为Redis主从库目的呢其实就是为了实现高可靠。上篇文章中我们说过Redis的AOF、RDB日志其实就是为了减少数据丢失&#xff0c;这是高可靠的一部分。 这篇文章呢&#…

一次网络不通“争吵“引发的思考

作者&#xff1a; 郑明泉、余凯 为啥争吵&#xff0c;吵什么&#xff1f; “你到底在说什么啊&#xff0c;我K8s的ecs节点要访问clb的地址不通和本地网卡有什么关系…” 气愤语气都从电话那头传了过来&#xff0c;这时电话两端都沉默了。过了好一会传来地铁小姐姐甜美的播报声…

使用Druid解析SQL,获取SQL中所有使用的表

一、sqlParse组成 Druid SQL Parser分三个模块&#xff1a; - Parser - AST - Visitor 1.1 Parser parser是将输入文本转换为ast&#xff08;抽象语法树&#xff09;&#xff0c;parser有包括两个部分&#xff0c;Parser和Lexer&#xff0c;其中Lexer实现词法分析&#x…

vue项目根据word模版导出word文件

一、安装依赖 //1、docxtemplaternpm install docxtemplater pizzip -S//2、jszip-utilsnpm install jszip-utils -S//3、pizzipnpm install pizzip -S//4、FileSaver npm install file-saver --save二、创建word模版 也就是编辑一个word文档&#xff0c;文档中需要动态取值的…

【开源分享】在线客服系统搭建-基于php和swoole客服系统CRMchat(附源码完整搭建教程)...

CRMChat是一款开源的在线客服系统&#xff0c;后台管理使用thinkphp框架&#xff0c;消息通讯使用swoole扩展&#xff0c;现在我来部署搭建一下。 这是一款不可商用的开源客服系统&#xff0c;如果有商用需求可以访问我的网站&#xff1a;gofly.v1kf.com 域名解析 以阿里云为例…

C++笔记之unique_ptr转移堆内空间的所有权

C笔记之unique_ptr转移堆内空间的所有权 code review! 文章目录 C笔记之unique_ptr转移堆内空间的所有权一.C笔记之unique_ptr转移堆内空间的所有权方法1.使用std::move函数方法2.使用std::unique_ptr的reset方法方法3.返回unique_ptr方法4.std::unique_ptr的swap方法 二.uniq…

http学习笔记3

第 11 章 Web 的攻击技术 11.1 针对 Web 的攻击技术 简单的 HTTP 协议本身并不存在安全性问题&#xff0c;因此协议本身几乎不会成为攻击的对象。应用 HTTP 协议的服务器和客户端&#xff0c;以及运行在服务器上的 Web 应用等资源才是攻击目标。目前&#xff0c;来自互联网的攻…

LaWGPT零基础部署win10+anaconda

准备代码&#xff0c;创建环境 # 下载代码 git clone gitgithub.com:pengxiao-song/LaWGPT.git cd LaWGPT # 创建环境 conda create -n lawgpt python3.10 -y conda activate lawgpt pip install -r requirements.txt # 启动可视化脚本&#xff08;自动下载预训练模型约15GB&…

(三)行为模式:1、责任链模式(Chain of Responsibility Pattern)(C++示例)

目录 1、责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;含义 2、责任链模式的UML图学习 3、责任链模式的应用场景 4、责任链模式的优缺点 5、C实现责任链模式的实例 1、责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;含义 责任…

ElasticSearch相关概念

1、概述 先说Elasticsearch的文件存储&#xff0c;Elasticsearch是面向文档型数据库&#xff0c;一条数据在这里就是一个文档&#xff0c;用JSON作为文档序列化的格式&#xff0c;比如下面这条用户数据&#xff1a; {"name" : "John","sex"…

论文写作中容易忽略的空格

持续更新吧&#xff0c;给自己提个醒&#xff0c;老是忘 1、数字和单位之间有一个四分之一空格&#xff0c;严格来说属于特殊符号&#xff0c;不知之间按空格键 应用场景&#xff1a; latex&#xff1a;语句$ 3\,m$ 可以实现&#xff0c; origin&#xff1a;网上的教程说可…

【HarmonyOS】【DevEco Studio】ohpm安装失败该如何解决?

【关键词】 HarmonyOS、DevEco Studio、ohpm安装失败 【问题背景及解决方案】 最近遇到很多DevEco Studio安装ohpm失败的问题&#xff0c;下面给大家介绍几种出现的问题以及解决方案&#xff1a; 1、ohpm not set up&#xff0c;报错截图如下&#xff1a; ​ 解决方案&…

AWS WAF实战、优势对比和缺陷解决

文章目录 挑战和目标AWS WAF的优势AWS WAF的不足我是怎么做的?什么是比较好的AWS WAF设计? 笔者为了解决公司Web站点防御性问题&#xff0c;较为深入的研究AWS WAF的相关规则。面对上千万的冲突&#xff0c;笔者不得设计出一种能漂亮处理冲突数据WAF规则。 AWS WAF开发人员在…

angular 的 alert 的应用分析笔记

声明: 今天自己在写angular项目时 遇到alert问题 做个记录而已 不代表广大angular用户,如果多你有帮助那个就是凑巧!!!! 效果: 第一步: 第二步: 第三步: 是不是找不到,ModaUtils这个方法(因为我项目里有这个 文件 里边存了 alert和confirm等公共方法) 都说了是个人笔记,看看…

启动 WSL 2时报错“参考的对象类型不支持尝试的操作”

引言 启动 WSL 2时报错“参考的对象类型不支持尝试的操作”。 或者是&#xff1a;占位程序接收到错误数据 Error code: Wsl/Service/0x8007273d 一番搜索 发现说和代理有关。 解决方案&#xff1a; 最有用的解决方案看这个issue。 这里我给出我的总结方案&#xff1a; 首…

84-基于stm32单片机蔬菜大棚温湿度光照强度监测控制系统Proteus仿真+源码

资料编号&#xff1a;084 一&#xff1a;功能介绍&#xff1a; 1、采用stm32单片机OLED显示屏光照强度检测DHT11温湿度电机按键LED灯&#xff0c;制作一个温湿度采集、光照强度检测&#xff0c;OLED显示相关数据&#xff0c; 2、通过按键设置温度上限、湿度下限、光照强度下限值…

webrtc学习(五)-peerconnect_client

一.类关系图 conduct实现webrtc native api相关实现的调用&#xff0c;创建answer&#xff0c;创建offer&#xff0c;是最核心的&#xff0c;对于两个模块的调度&#xff1b;mainwindow主要用于界面的展示与调度。橙色模块主要是信令模块&#xff0c;所有的用户的登录登出交换信…

71 # 协商缓存的配置:通过内容

对比&#xff08;协商&#xff09;缓存 比较一下再去决定是用缓存还是重新获取数据&#xff0c;这样会减少网络请求&#xff0c;提高性能。 对比缓存的工作原理 客户端第一次请求服务器的时候&#xff0c;服务器会把数据进行缓存&#xff0c;同时会生成一个缓存标识符&#…

Android系统-进程-AIDL

引言&#xff1a; Android系统的进程间通信&#xff0c;主要是Binder&#xff0c;AIDL就是一种Android接口定义语言&#xff0c;主要就是为了能更简单方便地实现跨进程通信。 概念与理解&#xff1a; AIDL&#xff1a;Android Interface Definition Language 序列化&#x…

NVIDIA Jetson 项目:机器人足球比赛

推荐&#xff1a;使用 NSDT场景编辑器 助你快速搭建可二次编辑器的3D应用场景 事实上&#xff0c;整个比赛都致力于这个想法。RoboCup小型联盟&#xff08;SSL&#xff09;视觉停电技术挑战赛鼓励团队“探索本地传感和处理&#xff0c;而不是非车载计算机和全球摄像机感知环境的…