基于单片机的火灾报警系统设计

摘 要

随着科技的不断发展,各种新技术在各行各业不断的产生以及应用。例如各种新的材料的出现,提高了制造行业的发展水平,各种新型变换器的出现提高了电力的用途以及使用效率,各种计算机技术的兴起提高了工厂自动化的程度,这些方面的发展使得普通居民的生活水平得到了极大的提高,但同时也存在着一些负面的影响。例如各种电子产品的信息与普及以及各种装饰材料的丰富,每个家庭都会存在较大的安全隐患,随时可能发生大型的火灾。为了确保人们能够同时享受科技带来的福利,同时也尽量减少火灾带来的伤亡和损害,应当对火灾的预警和处理进行相关研究,尽量通过相关技术将火灾发生的可能性减少到最低,或者在火灾刚有苗头时就将其扑灭,从而保护人民的生命财产安全。

根据上述的社会整体发展目标和要求,本文主要对如何进行火灾的智能处理系统进行了研究,研究过程中采用单片机为控制芯片能够实现对火灾现场的及时预警和处理。设计的预警系统中主要包含烟雾传感器,温度传感器和单片机控制芯片以及相关的外围电路和控制电路。系统通过不断的对周围环境的烟雾和温度等信号进行监测,并将相关信息传输到控制芯片中进行分析处理,从而产生及时的报警预警信号。本次设计的报警系统,采用简单的检测电路和控制电路以及信号发生电路,能够以较低的成本产生较为可靠的信号,具有一定的研究以及实际应用价值。

关键词:烟雾;温度;报警器;传感器;单片机

第2章 系统硬件设计

2.1单片机STC89C52

(1) 概述

STC89C52单片机具有8k的闪存空间,以及512字节的RAM存储空间,它本身只需采用3.3V电压进行驱动,同时可以进行复杂的运算逻辑和数字计算,同时单片机与51 指令相兼容,装处理器为8位通用型,因此可以通过单片机实现较为复杂的控制过程。

单片机本身具有40个引角,其中具有32个输入输出型引脚,两个中断引脚以及3个16位编程计数器引脚和两个全双工串行通信引脚。

(2) 8051单片机的引脚功能

8051单片机具有40个引脚,其相关设置如图2.2所示。

图2.2 STC89C52引脚图

管脚说明:STC89C52 单片机外部有32个端口可供用户使用,其部分引脚功能如表2.1所示:

表2.1 STC89C52并行I/O接口

2.1.1 最小系统电路

如图2.3所示为单片机的晶振电路,复位电路和电源电路。其中晶振电路主要包含晶振和外围电容。晶振电路的主要作用是产生固定的系统工作频率,作为单片机不同单元的工作频率基准。通过晶振和电容能够产生,写着同时由于电容采用30pF以及12M的晶振型号,因此系统的工作频率已经被固定,当晶振值取值越高时固定频率则会越高。因此需要根据单片机不同功能单元的需求频率进行晶振电路的参数设计。

复位电路主要是用于在系统产生故障时或完成工作后对系统进行重置。例如当系统跑飞或进入死循环使则可以通过复位电路中的按键进行系统的复位。通常研究人员在系统开始工作时,也会按下复位键,确保系统能够重新开始运行。

复位电路中主要包含电容和电阻,由于电容电压不能产生突变,因此在系统的电源电路通电时,其中RESET引脚则会出现高电平,高电平的导通时间由系统电路的时间常数决定,也就是电容和电阻值所决定,在单片机中设置,如果RESET的引脚保持高电平,在两个工作周期以上则系统程序则会自动进行复位设置。因此通过复位电路的电容电阻值设置,能够确保系统进行可靠的复位。

电源电路采用5V的电压直接输入,同时有电压调理电路,对输入的电压信号进行稳压和滤波功能。

复制代码
                          图2.3 单片机最小系统

第3章 系统软件设计

3.1 程序流程图设计

3.1.1 总体程序流程图设计

下图3.1所示即为本报警系统的整体软件流程图。系统开始工作后,首选对液晶功能及其显示内容进行初始化,然后对报警值进行初始化,将整个系统置于源点。之后则开始循环检测处理,将传感器检测到的烟雾浓度和温度值以此显示到1602液晶上,并对数值进行综合判定,对比报警值进行判断,若超过报警值则开始声光报警,然后检测设置按键是否被激活,是则重新调整报警值,否则归零继续重复检测、判断、报警。

复制代码
                             图3.1主函数流程图

3.1.2 液晶程序设计

液晶程序内容显示的重要前提就是将内容显示位置确定并发送给液晶。也就是告诉液晶接下来准备在哪个位置开始显示内容,比如说第3行第6列,位置确定之后才能显示内容。需要注意的是,液晶内容显示只能一位一位进行,如字符串"world",先显示第一个字符"w",然后逐个显示直到最后一位"d",数字同理。从第一次到最后一次显示完成,视为一次显示任务执行完毕。每次显示任务仅需在最开始进行定位,显示过程中间,即字符逐个显示的时候液晶会自动跳转无需再次定位。

复制代码
                          图3.2液晶显示流程图

3.1.3 模数转换程序设计

读取ADC0832芯片的采集数据之前,单片机要先发一个起始信号给ADC芯片,由于ADC0832有两路AD转换通道,因此还需要发一个通道选择信号,告诉ADC芯片要选择哪个通道进行转换。之后就进行采集结果的读取,ADC芯片会返回2字节数据,第1字节是进行正向传输,第2字节是反向传输,之所以要进行两次的传输,是因为可以把这两字节数据进行校验,以判断传输是否出错。最后把读取的AD结果返回给主函数。

复制代码
                            图3.3模数转换流程图

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

相关推荐
明早你自己说17 分钟前
学习寄存器——GPIO(二)学习BSRR BRR ODR寄存器的原子性和在HAL库的应用
单片机·嵌入式硬件·学习
2301_793121041 小时前
基于单片机的数字温度计设计
单片机·嵌入式硬件
Dev_XH1 小时前
【成品设计】STM32户外便携太阳能充电器设计
stm32·单片机·嵌入式硬件
ℳ๓. Sweet3 小时前
【STM32】关于STM32F407写Flash失败问题的解决办法
javascript·stm32·嵌入式硬件
CC呢3 小时前
基于单片机无线防丢/儿童防丢报警器
单片机·嵌入式硬件·51单片机·无线防丢
景彡先生5 小时前
STM32 HAL库详解:跨系列兼容、CubeMX自动生成与回调机制全解析
stm32·单片机·嵌入式硬件
书山有路勤为径~9 小时前
5 基于STM32单片机的绝缘检测系统设计(STM32代码编写+手机APP设计+PCB设计+Proteus仿真)
stm32·单片机·智能手机
Ronin-Lotus10 小时前
嵌入式硬件篇---机械臂运动学解算(3自由度)
嵌入式硬件·舵机·3自由度机械臂
Ronin-Lotus10 小时前
嵌入式硬件篇---舵机(示波器)
嵌入式硬件·舵机
@陽光總在風雨後10 小时前
嵌入式数据结构之顺序表总结
c语言·arm开发·stm32·单片机·嵌入式硬件