【TB作品】基于51单片机的实验室通风,气体检测报警系统

news2024/11/26 23:19:22

作品功能分析

硬件部分

硬件:
(151系列单片机,拟采用STC89C52RC;
(2)DS18B20温度传感器;
(3)二氧化碳浓度传感器:https://item.taobao.com/item.htm?spm=a21n57.1.0.0.16d9523c0DD3yA&id=636687813027&ns=1&abbucket=0#detail4)LCD1602显示屏
(5)按键
(6)小风扇
(7)蜂鸣器
  1. 二氧化碳浓度传感器:

    • 用于检测环境中的二氧化碳浓度,通过串口与单片机通信,提供二氧化碳浓度数据。
  2. LCD1602显示屏:

    • 用于显示当前的温度和二氧化碳浓度,以及报警阈值设置。
  3. 按键:

    • 用于调节温度和二氧化碳浓度的报警阈值。
  4. 小风扇:

    • 在温度或二氧化碳浓度超过设定的报警阈值时启动,进行降温或通风。
  5. 蜂鸣器:

    • 在温度或二氧化碳浓度超过设定的报警阈值时发出警报声。

软件功能

  1. 数据采集与显示:

    • 单片机实时监测温度和二氧化碳浓度,并将数值显示在LCD1602显示屏上。
  2. 报警阈值设置:

    • 通过按键可以调节温度和二氧化碳浓度的报警阈值。
  3. 报警与控制:

    • 当温度或二氧化碳浓度超过设定的报警阈值时,蜂鸣器发出警报声,小风扇启动。

作品包含

  1. 电路原理图 (立创EDA):

    • 描述各个硬件模块之间的连接和接口。
  2. PCB版图 (立创EDA):

    • 硬件电路的印刷电路板布局图。
  3. C程序源码:

    • 实现温度和二氧化碳浓度监测、阈值设置、显示和报警功能的代码。
  4. Proteus仿真图:

    • 用于模拟系统功能的仿真图,二氧化碳模块通过串口进行仿真。
  5. 使用演示视频:

    • 演示系统的实际运行情况和功能。

代码分析

  1. 主程序 (main函数):

    • 初始化LCD1602显示屏和串口通信,进入主循环,定时获取温度和二氧化碳浓度数据,并根据按键输入调整报警阈值,显示当前数据和阈值,控制蜂鸣器和风扇。
  2. 串口中断服务程序 (Uart_isr函数):

    • 处理二氧化碳传感器发送的数据,将其存储到缓冲区,并进行校验和处理。
  3. 显示函数 (disp_line1和disp_line2函数):

    • 将温度、二氧化碳浓度以及报警阈值显示在LCD1602显示屏上。
  4. 按键处理函数 (deal_key函数):

    • 根据按键输入调整温度和二氧化碳浓度的报警阈值。
  5. 报警控制函数 (contorl_beep函数):

    • 根据当前温度和二氧化碳浓度与阈值的比较结果,控制蜂鸣器和风扇的状态。

总结

该作品通过STC89C52RC单片机实现了对环境温度和二氧化碳浓度的监测,用户可以通过按键设置报警阈值,当检测值超过阈值时,系统会启动蜂鸣器报警并驱动风扇工作。系统的硬件部分包括温度传感器、二氧化碳传感器、显示屏、按键、风扇和蜂鸣器,而软件部分则实现了数据采集、显示、阈值调整和报警控制的功能。

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

【git使用一】windows下git下载、安装和卸载

目录 (1)下载安装包 (2)安装git (3)安装验证 (4)卸载git (1)下载安装包 官网下载地址:Git 国内镜像下载地址:CNPM Binaries Mir…

proDAD V4最新版软件安装包下载+详细安装步骤

简介: proDAD Adorage 是一款一体化的效果库,完美拥有所有的效果,集所有Adorage卷于一体,该系列包含13种可用套装中的17,000多种效果。 对于每种情况都能获得完美的效果,支持Adobe、avid、Corel、Cyberlink、MAGIX等多…

windows10或者windows11怎么查看自己电脑显卡型号

win10系统: 右键单击任务栏后弹出菜单选择任务管理器 打开任务管理器后,点击性能查看左侧GPU0或者GPU1 如果有nvidia字样表示自己电脑有nvidia显卡,如果是AMD或者intel字样表示没有nvidia显卡。注意如果你有GPU0或者GPU1说明你电脑是双显卡&…

通过Vue3+高德地图的JS API实现市区地图渲染

效果图: 核心代码: <script setup>import { onMounted, onUnmounted } from vue;import AMapLoader from @amap/amap-jsapi-loader;import { message } from ant-design-vue;import school from @/assets/icons/school.svg;import enterprise from @/assets/icons/ent…

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 停车场车位统计(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 📎在线评测链接 停车场车位统计(100分) 🌍 评测功能需要订阅专栏后私信联…

【TB作品】基于STM32单片机的实验室器材管理登记二维码系统

这个单片机代码实现了一个实验室管理系统&#xff0c;该系统的主要功能包括记录和管理ID信息、日期和时间、以及显示这些信息到OLED屏幕上。以下是对代码主要功能的分析&#xff1a; 全局变量定义 定义了多个全局变量来存储系统状态、页面、密码、ID列表等信息。time 结构体用…

邮件钓鱼--前置-攻击防范 7 看

目录 1、什么是 SPF&#xff1a; 2、如何判断 SPF&#xff1a; 3.邮件钓鱼防范&#xff1a;7 看 1、什么是 SPF&#xff1a; SPF 记录&#xff1a;原理、语法及配置方法简介 (zhetao.com) SPF记录详解_spf写法-CSDN博客 发件人策略框架&#xff08;Sender Policy Frame…

搭建知识付费APP平台教学:在线教育系统源码详解

如何搭建一个高效的知识付费APP平台呢&#xff1f;今天&#xff0c;笔者将详细解析在线教育系统的源码&#xff0c;帮助您快速搭建自己的知识付费APP平台。 一、平台的核心功能 一个完整的知识付费APP平台通常需要具备以下核心功能&#xff1a; 用户管理 内容管理 支付 课…

MySQL 日志(二)

本篇将继续介绍MySQL日志的相关内容 目录 一、二进制日志 简介 注意事项 删除二进制日志 查看二进制日志 二进制日志的格式 二、服务器日志维护 一、二进制日志 简介 二进制日志中主要记录了MySQL的更改事件&#xff08;不包含SELECT和SHOW),例如&#xff1a;表的…

springer 在线投稿编译踩坑

springer投稿&#xff0c;在线编译踩坑总结 注意&#xff1a; 有的期刊需要双栏&#xff0c;而预定义的模板中可能为单栏&#xff0c;需要增加iicol选项。 例如&#xff1a; \documentclass[sn-mathphys-num]{sn-jnl}% —>\documentclass[sn-mathphys-num, iicol]{sn-jnl}…

【iOS】如何断点看系统方法在哪一个库

如何断点看系统方法在哪一个库 开源网站如何断点看系统方法在哪一个库1 下符号断点2 符号断点中输入 load &#xff0c;并且开启断点&#xff08;Enable&#xff09;。3 运行程序&#xff0c;触发断点&#xff0c;在堆栈信息中找到load方法&#xff0c;可以看到其在libobjc.A.d…

互联网应用主流框架整合之构建REST风格的系统

REST&#xff08;Representational State Transfer&#xff09;&#xff0c;中文译为“表述性状态转移”&#xff0c;是由Roy Fielding博士在他的博士论文中提出的一种软件架构风格&#xff0c;特别适用于网络应用的设计。REST不是一个标准&#xff0c;而是一种设计原则和约束集…

web错题(1)

action属性是form标签的必须属性&#xff0c;用于指定表单提交时表单数据将被发往哪里 dir能够指定文本显示方向的属性 可以产生下拉列表的标记时<select> multiple属性设为true&#xff0c;表示输入字段可以选择多个值 lable标签的for属性可以把lable绑定到另一个元…

【Echarts系列】水平柱状图

【Echarts系列】水平柱状图 序示例数据格式代码 序 为了节省后续开发学习成本&#xff0c;这个系列将记录我工作所用到的一些echarts图表。 示例 水平柱状图如图所示&#xff1a; 数据格式 data [{name: 于洪区,value: 2736},{name: 新民市,value: 2844},{name: 皇姑区,…

抢占人工智能行业红利,前阿里巴巴产品专家带你15天入门AI产品经理

前言 当互联网行业巨头纷纷布局人工智能&#xff0c;国家将人工智能上升为国家战略&#xff0c;藤校核心课程涉足人工智能…人工智能领域蕴含着巨大潜力&#xff0c;早已成为业内共识。 面对极大的行业空缺&#xff0c;不少人都希望能抢占行业红利期&#xff0c;进入AI领域。…

LeetCode 230.二叉搜索树中第K小的元素

各位看官们&#xff0c;大家好啊&#xff0c;今天这个题我用的方法时间复杂度比较高&#xff0c;但也是便于便于理解的一种方法&#xff0c;大家如果觉得的好的话&#xff0c;就给个免费的赞吧,谢谢大家了^ _ ^ 题目要求如图所示: 题目步骤&#xff1a; 1.我们可以一维数组来接…

【枚举】564. 寻找最近的回文数

本文涉及知识点 枚举 LeetCode564. 寻找最近的回文数 给定一个表示整数的字符串 n &#xff0c;返回与它最近的回文整数&#xff08;不包括自身&#xff09;。如果不止一个&#xff0c;返回较小的那个。 “最近的”定义为两个整数差的绝对值最小。 示例 1: 输入: n “123”…

Linux网络-HttpServer的实现

文章目录 前言一、请求报文的解析URL的解析 二、响应报文的发送Content-LenthConten-TypeCookie和Set-CookieCookie的风险 三、尝试发送一个HTML网页404网页Location 重定向 四、浏览器的多次请求行为总结 前言 之前我们简单理解了一下Http协议&#xff0c;本章我们将在LInux下…

00 - matlab m_map地学绘图工具安装及简单使用教程

00 - matlab m_map地学绘图工具安装及简单使用教程 0. 引言1. m_map工具的获取及配置过程2. 绘图示例3. 结语 0. 引言 m_map是MATLAB中的一个绘图工具包&#xff0c;用于绘制地图和地理数据。它提供了一系列函数&#xff0c;可以用来绘制地理投影、添加地理特征、绘制等值线图等…

wps-文档-js宏-批量修改表格格式

目录 前言开启JS宏我的脚本参考API文档 前言 由于需要修改word的表格的格式&#xff0c;一个一个的修改太慢了&#xff0c;所以需要通过宏的方式来修改&#xff0c;需要注意的是低版本可能没有JS宏… 开启JS宏 切换到工具–>点击开发工具 点击之后功能栏会变化成这样 选…