火灾自动报警系统设计(5)

2019-05-18 15:33

毕业设计(论文)

图4-2 AT89C51单片机的晶振电路

图4-3 AT89C51单片机的复位电路

4.3 声光报警电路

声光报警电路是在89C51单片机的控制下,进行报警控制,根据不同的场景,采取不同的策略,一般来说,声光报警电路比较简单,也很容易实现[11,12,14]。

我们可以看到报警电路如图4-4所示,我们可以看到一般需要在I/0之间设置一个放大电路,对收集到的信号进行放大,这是因为一般蜂鸣器的工作电流大,系统内部的一般都是微弱的电流,无法实现输出的正常播放,因此在正常情况下,需要对电流进行放大处理。

一般声报警电路,是采用P10引脚进行控制,当P10输出的电平为高电平,三极管导通,蜂鸣器的电流形成回路,发出声音报警;否则,三极管截止,蜂鸣器不发出声音[24]。

14

毕业设计(论文)

图4-4 蜂鸣器报警

光报警电路路如图3.5,其中单片机的P2口进行控制,P2口的P2.3~P2.6分别控制4个发光二极管,予以光报警,如图所示。P2.3~P2.6控制的灯依次为红色(火灾信号灯)、红色(异常信号灯) 、黄色(故障信号灯)和绿色(正常信号灯) 。当P2.3~P2.6输出低电平时,对应的信号灯便会发光报警。

4.4 整体总电路图的绘制

图4-5 硬件电路总图

15

毕业设计(论文) 5 火灾自动报警系统软件仿真调试

5.1 Keil开发软件介绍

本系统的软件编程使用的是美国Keil Software公司出品的Keil C51,C51工具包的整体结构中,μVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经C51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对 目标板进行调试,也可以直接写入程序存贮器如EPROM中[15,16]。

5.2 程序设计流程

火灾报警系统控制器上采用AT89C51作为主控芯片,其主要功能包括:控制IO端口、逻辑判断处理、驱动外部电路和A/D采样等,该部分是火灾报警系统智能化的集中体现。

为了便于系统维护,在火灾报警系统的软件设计中采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。既使得程序结构清晰,又便于以后进一步扩展其功能。本系统主要包括主程序、温度烟雾数据采集子程序、火灾判断与报警子程序等[ 4 ]。系统程序流程图如图4.1所示。

16

毕业设计(论文)

图5-1 程序流程图

主程序是一个无限循环体,其流程是:首先在上电之后系统的各部分包括单片机输出输入端口的设置、数据存储电路、外围驱动电路等完成初始化,接下来执行火灾报警系统的数据采集程序、火灾判断、报警程序。系统初始化后,AT89C51的P26和P10口为低电平,P23、P24和P25口为高电平,所以只有绿灯D8亮,D5、D6、D7不亮,蜂鸣器不报警。

5.3 程序调试

源文件的建立:使用菜单 “File-New”或者点击工具栏的新建文件按钮,即可在项目窗口的右侧打开一个新的文本编辑窗口,在该窗口中输入汇编语言源程序(4.2小节所示)。保存该文件,加上扩展名(.asm或a51),这里将文件保存为examl1.asm。

建立工程文件:点击“Project-New Project”菜单,出现以个对话框,要求给工程起一个名字,我们输入examl1,不需要扩展名,点击保存按钮,出现第二个对话框。这个对话框要求选择目标CPU(即我们所使用的芯片型号80C51)点击ATMEL前面的“+”号,展开该层,点击其中的80C51,然后点击确定按钮。

17

毕业设计(论文) 回到主界面,此时,在工程窗口的文件页中,出现了“Targ et1”,前面有 “+”号,点击“+”展开,可以看到下一层的“Source Group1”,这时的工程还是一个空工程,里面什么文件也没有,需要手动把刚才编写好的源程序加入,点击“Souce Group”使其反白显示,然后,点击鼠标右键,出现一个下拉菜单。选中其中的“Add file to Group”Souce Group1”,对话框,要求寻找源文件,注意该对话框下面的“文件类型“默认为C Souce file (*.c),也就是以C为扩展名的文件,而我们的文件是以asm 为扩展名的,所以在列表框中找不到examl1.asm,要将文件类型该掉,点击对话框中”文件类型‘后的下拉列表,找到并选中“Asm Souce File(*.asm,*.a51)”,这样,在列表框中就可以找到examl1.asm文文件了。双examl1.asm文件,将文件加入项目,注意,在文件加入项目后,该对话框并不消失,等待继续加入其他文件,但初学时常会认为操作没有成功而再次双击同一文件,这时会出现对话框,提示你所选的文件以在列表中,此时点击确定,返回前一对话框,然后,点击”Close”即可返回主界面,返回后,点击“Souce Goup 1”前的加号,会发现examl1.asm 文件以在其中。双击文件名,即打开源程序。

编译、连接:在设置好工程后,既可以进行编译、连接。选择菜单Project-Build target,对当前工程进行连接,如果当前文件已修改软件会先对该文件进行比阿尼,然后在连接以产生目标代码。编译过程中的信息将出现在输出窗口中的Build页中,如果源程序有语法错误,会有错误报告出现,双击该行,可以定到出错的位置,对源程序反复修改后,最终会得到如图5-1所示的结果,提示获得了名为examl1.hex的文件,该文件即可被编程器读入并写到芯片中,同时还产生了一些其他相关文件可被用于KEIL的仿真与调试。

图5-1 调试成功后的截图

18


火灾自动报警系统设计(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:origin菜单栏中文解释

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: