欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于51单片机的火灾自动报警系统设计(22页).docx

    • 资源ID:37318440       资源大小:154.96KB        全文页数:21页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于51单片机的火灾自动报警系统设计(22页).docx

    -基于51单片机的火灾自动报警系统设计-第 1 页基于51单片机的火灾自动报警系统设计摘 要现如今,随着电子产品的普及,各类消费类电子产品开始走入千家万户,在给人们的生活带来无尽的便利的同时还带来了一个隐患:火灾隐患。由于电子产品以及各类用电器在消耗电能的同时会不可避免地转化为热能,而一旦用电器或电子产品发生例如短路等故障,火灾隐患将大幅上升。因此,为了避免火灾损害人员生命和财产安全,及时发现并报警很重要,因此,火警自动报警装置的重要性也就越来越被凸显出来了。本系统是一个基于51单片机和DS18B20温度传感器的的火灾自动报警系统。先设定一个报警温度值,然后由DS18B20温度传感器对温度进行实时的监控,并将温度值显示在LCD1602液晶显示屏上,若温度值超过了报警温度值,则驱动蜂鸣器报警。本系统硬件电路简单,程序复杂度不高,可靠性较强,且成本低,稳定度较高,因此具有一定的实用性价值。关键词:51单片机、温度传感器、火灾自动报警AbstractNowadays , with the popularization of the electronic products , varieties of electronic products have been bought by many families . Those products can provide people with great convenience , but also fire hazards . As electronic products would convert electricity to heat , so once those products get short-circuited , they will be very likely to begin to burn . So , in order to keep people from conflagration , an alarming system seems to be a necessary . This system is an alarming system based on 51 SCM and DS18B20 temperature sensor . We will set an alarming temperature , then , DS18B20 temperature sensor will keep measuring the temperature , then send the data to the LCD screen and display it . If the temperature reaches the alarming temperature , the SCM will control the buzzer to give an alarm. This system's advantages are : simple circuit , less complicated code , high reliability , cheap and it is quite stable. So that will be practical . Key words: 51 SCM 、 temperature sensor 、 auto fire alarming system目 录基于51单片机的火灾自动报警系统设计1摘 要IAbstractII目 录III第1章 绪 论11.1 选题背景及意义11.2 本文所做的工作11.3 国外的相关研究1第2章火灾自动报警器原理3第3章 硬件电路设计43.1 单片机选择43.2 单片机知识53.2 火灾探测器选择73.3 液晶显示器选择83.4 硬件电路设计9第4章 程序设计104.1 程序流程图104.2 编程语言104.3 开发平台114.4 程序代码11第5章 软件仿真和实物测试195.1 仿真平台195.2 软件仿真结果195.3 实物测试结果21第6章 总结22致 谢23参考文献24第1章 绪 论 1.1 选题背景及意义火,给人类带来了文明的进步、光明以及温暖,但与此同时,当火失去控制时,又会给人类带来巨大灾难。据统计,我国70年代火灾平均损失不到2.5亿元,80年代火灾平均损失接近3.2亿元。进入90年代,特别是1993年以来,火灾造成的直接损失上升到年均十几亿元,年均死亡2000多人。随着社会和经济的发展,社会财富日益增加,火灾给人类社会带来的危害不断增加,它不仅能毁坏财产,还会威胁人的生命。于是人类逐渐意识到火灾预防和预警的重要性。良好的监控以及报警机制能答复减少火灾的发生,并降低不必要的损失。人类自从进入电气时代以来,便多了一项火灾隐患,那就是由电能所产生的热能所导致的火灾。因此,一个可靠稳定而又及时的报警系统显得尤为重要了。1.2 本文所做的工作本文中所采用的方案是选用美国DALLAS公司推出的高精度温度传感器DS18B20、STC89C52单片机以及LCD1602液晶显示器等元件来设计火灾自动报警器。可实现温度的实时显示以及温度达到限定值后自动报警功能。该系统性能稳定、硬件电路简单、价格较低,故有一定的应用前景。为了完成本文所做的工作为:1 . 围绕STC89C52来设计硬件电路。2 . 用DS18B20来实现对温度的实时监控。3 . 用LCD1602实现温度的实时显示。4 . 实现温度达到限定值后自动报警。5. 完成程序的编写。1.3 国外的相关研究火灾报警系统在国外已有百年以上的发展史。最早的火灾报警系统是19世纪40年代美国人发明的火灾报警系统。而90年代初,英国成功研制温度式的火灾报警系统,并将其正式应用于火灾探测工作中。此后,随着科技的不断进步和发展,火灾的侦测技术也逐步趋于完善。越来越多的火灾侦测系统逐步进入市场。火灾的侦测系统的发展大致可分为以下几个阶段:第一阶段,从19世纪40年代到20世纪40年代左右,是火灾报警系统的初级阶段。主要以温度传感器作为探测器。系统通过温度传感器采集温度信号,然后通过判断温度是否达到限定的温度值来判断是否发生火灾。系统都较为简单,且仅靠温度一个参数来判断火灾容易收到其他因素的影响,产生误报警现象。第二阶段,从20世纪末到20世纪70年代末。在20世纪的40年代末,瑞士物理学家研究出埃姆斯特梅利研究出离子烟感探测器,从此之后烟感探测器被广泛应用于火灾报警系统中,并使得温度传感器的报警器的市场份额大幅减小。到了70年代末,烟感探测器已经不仅仅局限于离子式的,而是在光电技术的基础上得到了蓬勃发展。光电式探测器一经面世,便获得了大力发展以及大量应用。其优点是抗干扰能力强,使用寿命长,且没有离子探测器的辐射问题。因此,光电式的烟感探测器逐渐取代离子式的探测器,正式登上历史舞台。第三阶段是从20世纪80年代末。在此阶段中,总线式的报警系统兴起,获得了广泛应用。其优点是布线的工作量显著减少,且易于安装和调试。但是由于其采用有线连接,因此对工程的要求较高。第四阶段则是从20世纪80年代中后期至今。在这段时间中,计算机技术、集成电路技术以及传感器技术飞速发展,火灾报警系统逐步进入智能化时代。模拟量可寻址技术的应用使得报警系统的安全性、智能型和准确性有了质的飞跃。近年来,采用无线通信方式的自动报警系统在国外的市场中呈现出欣欣向荣的状态。这种系统应用了无线通信技术,从而代替了传统的有线通信技术,实现了将大多数电气装置通过无线通信的方式连接起来,并加以控制或是传输数据。其适用范围非常宽广,各种建筑都适用。起初这种报警器紧紧适用于如名胜古迹或是博物馆等不适宜大规模布线的场所,但由于电子元件成本的降低,无线火灾自动报警装置也如旧时王谢堂前燕一般,开始飞入寻常百姓家。第2章火灾自动报警器原理一般而言,火灾报警器主要由火灾探测器、单片机、传感器接口电路、报警器等组成。火灾探测器是通过对火灾产生的物理或化学现象,例如气体、烟雾、温度等要素进行检测,并将数据发送至单片机,然后通过单片机执行相关判决程序来判定是否发生火灾,若发生火灾,则由单片机驱动报警器发出警报来进行火灾报警。而对于本文所设计的报警系统而言,其原理为:先通过单片机控制程序设定一个报警的温度值,然后让DS18B20不停地采集温度数据,并送入单片机。单片机将温度值实时显示在LCD1602液晶显示屏上,并将采集到的温度值与预设报警温度值进行比较,若采集到的温度值小于报警温度值,则重复上述步骤。若蜂鸣器液晶显示屏高于或等于报警温度值,则驱动蜂鸣器进行报警。电路的整体框图如图2.1所示DS18B20温度传感器单片机 图2.1 系统框图第3章 硬件电路设计3.1 单片机选择在一个火灾自动报警器中,单片机是其中的核心部件,它需要接受来自传感器的信号,还需要将其与预设的报警温度值进行比对、将温度信息输出至LCD1602液晶显示屏、驱动蜂鸣器报警。综合多方面考虑,本设计中采用的是STC公司出品的STC89C52RC单片机。STC89C52RC是一家深圳的公司STC公司(宏晶科技)生产的一种高性能但低功耗的8位CMOS处理器,具有8K在系统可编程flash存储器。STC89C52RC使用经典的MCS-51内核,但做了很多改进,是的芯片具有传统的51单片机所不具有的功能。它具有以下标准功能:512字节RAM、8k字节flash存储器、32位I/O口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外,STC89C52可将至0Hz静态逻辑操作,支持2中软件可选择的节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,知道下一个中断或硬件复位为止。其最高工作频率为35MHz,6T/12T可选。封装有LQFP-44和DIP-40封装可供选择。根据本设计的需求,采用DIP-40封装。其引脚图如图3.1所示 图3.1 STC89C52RC引脚图3.2 单片机知识单片机的内部结构组成如图3.2所示图3.2 单片机内部结构图由图可见,该系列单片机主要由随机数据存储器(RAM)、程序存储器(ROM)、中央处理器(CPU)、输入输出口、串行口、内置的定时器/计数器、中断控制、总线控制、以及时钟电路通过总线连接而成。CPU是单片机内部的核心器件,分为运算器和控制器两大部分,此外还有面向控制的未处理功能。STC89C52中有512字节的随机数据存储器(RAM),可通过片外扩展来提升RAM容量。存储器(ROM),是用来存储程序的存储器,在STC89C52中集成了8K字节的FLASH存储器,如果片内的容量不够,还可扩展至64KB。中断系统:具有5个中断源,2级中断优先权定时器/计数器: 片内集成了3个16位的定时器/计数器T0、T1、T2,具有四种工作方式串行口:一个全双工异步串行口,具有四种工作方式,可进行串口通信,扩展并行I/O口,还可以与多个单片机相连以构成多级系统。特殊功能寄存器(SFR):共有26个特殊功能寄存器,用于CPU对片内各功能部件进行管理和监视。特殊功能寄存器实际上是片内各个功能部件的控制寄存器和状态寄存器,这些特殊功能寄存器映射在片内RAM区80H-FFH的地址区内。时钟电路用于产生单片机工作时所必需的控制信号。STC89C52单片机的内部电路正是在时钟电路的控制下严格按时序执行指令进行工作的。在执行指令时,CPU首先到程序存储器中取出需要执行的指令操作码,然后译码,并由时钟电路产生一系列控制信号完成指令所规定的操作。CPU发出的时序信号有两类,一类用于对片内各个功能部件的控制;另一类用于对片外存储器或I/O口的控制。 STC89C52内部有一个用于构成振荡器的高增益反向放大器,它的输入端为芯片的XTAL1脚,输出端为XTAL2脚。这两个引脚跨界石英晶体和微调电容,构成一个稳定的自激振荡器。电路的电容C1和C2通常选择30pF。该电容的大小会影响振荡器频率的高低,振荡器的稳定性和起振的快速性。晶体振荡频率的范围通常是1.2-12MHz。STC89C52通常采用12MHz的石英晶体。晶体的频率越高,系统的时钟频率越高,单片机的运行速度也就越快。但运行速度快对存储器的速度要求就越高,对PCB电路板的工艺要求也就越高,即要求线间的寄生电容要小。晶体和电容应尽可能安装得离单片机近一些以减少寄生电容,更好地保证振荡器稳定、可靠地工作。为了提高温度稳定性,应采用温度稳定性好的电容。外部时钟方式使用现成的外部振荡器产生脉冲信号,通常用于多片STC89C52单片机同时工作,以便于多片单片机之间的同步,一般为地狱12MHz的方波。外部时钟源直接接到XTAL1端,XTAL2端悬空。当使用片内振荡器时,XTAL1、XTAL2引脚还能为应用系统中的其他芯片提供时钟,但需要增加驱动能力在单片机最小系统里晶振的作用是给单片机输入时钟信号,这个时钟信号就是单片机的工作速度。单片机工作的最小时间计量单位就是由这个晶振决定的。晶振电路电容选择的原则为:(1)C1,C21,因为每一种晶振都有各自的特性,所以最好按制造厂商所提供的数值选择外部元器件。(2)在误差允许的区域内,C1和C2值都是越小,实现的功能就越精确,如果C1和C2值比正常数值大时,可能会使振荡器更加稳定,可是也会增加响应的时间。 单片机执行的指令均是在CPU控制的时序控制电路的控制下进行的,各种时序均与时钟周期有关。 时钟周期是单片机时钟控制信号的基本时间单位。若时钟晶体的振荡频率为fosc,则时钟周期Tosc=1/fosc.如fosc=12MHz,Tosc=83.3ns。CPU完成一个基本操作所需要的时间称为机器周期。单片机中通常把执行一条指令的过程分为几个机器周期。每个机器周期完成一个基本操作,如取指令、读或写数据等。STC89C52单片机每12个时钟周期为一个机器周期。即Tcy=12/fosc.若fosc=12MHz,Tcy=1us STC89C52单片机的一个机器周期包括12个时钟周期,分为6个状态,S1-S6。每个状态又分为两拍:P1和P2。因此,一个机器周期中的12个时钟周期表示为S1P1、S1P2、S2P1、S2P2、.、S6P2。指令周期是执行一条指令所需的时间。STC89C52单片机中指令按字节来分,可分为单字节、双字节、三字节指令,因此执行一条指令的时间也有所不同。对于简单的单字节指令,取出指令立即执行,只需要一个机器周期的时间。而有些复杂的指令则需要两个或多个指令周期。 从指令的执行时间看,单字节和双字节指令一般为单机器周期和双机器周期,三字节指令是双机器周期,只有乘除法指令占用4个机器周期。3.2 火灾探测器选择为了尽可能做到简化硬件电路,故在本设计中采用美国DALLAS公司出品的温度传感器DS18B20。该温度传感器是一种常用的数字温度传感器,具有体积小、硬件开销低、抗干扰能力强、精度高等优点。由于它输出的是数字量,故在硬件电路上可省去A/D转换电路,大幅度降低了硬件电路的复杂程度,也降低了硬件开支。DS18B20接线极为方便,只需要接VCC、GND以及数据线DQ即可。测温范围在-55+125,固有测温误差为1。独特的一线接口,使其只需要一条线即可完成与单片机的通信,简化了硬件电路的复杂程度。且适应电压的范围较宽,为3.05.5V,且在寄生电源的方式下可由数据线供电。DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三条线上,实现组网多点测温。DS18B20在使用中不需要任何外围器件,全部的传感元件以及转换电路都集成在了传感器内部。其可编程的分辨率为912位,对应的可分辨的温度分别为0.5、0.25、0.125和0.0625,因此可实现高精度的测温。且在9位分辨率时最多在93.75ms内将温度转化为数字量,12为分辨率时最多在750ms内将温度转化为数字量,因此该传感器的速度很快。其测量结果直接输出数字温度信号,直接串行输送给CPU,同时可传送CRC校验码,因此具有极强的抗干扰纠错能力。当电源反接时,芯片不会因发热而烧毁,只是无法工作。DS18B20内部结构主要有64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。如图3.2.1所示。其测温原理为:DS18B20内部的晶振的温度系数很高,温度的变化将会引起晶振的振荡频率的显著变化,而产生的脉冲信号将会输入到计数器2中,而温度寄存器和计数器1将会被预置为-55所对应的基数值。计数器1会对低温度系数所产生的脉冲信号进行减法计数,若计数器1的预置值被减至0,则温度寄存器的值加1,接下来,计数器1的预置值将被重新装入,计数器1重新开始对低温度系数的晶振所产生的脉冲信号进行计数。不停地循环,直至计数器2的值为0。图3.2.1 DS18B20内部结构图3.3 液晶显示器选择液晶屏选用LCD12864。12864液晶是一种统称,是业界约定俗成的简称,说明屏幕是由128×64个点组成,该点阵型液晶屏的成本相对较低,适用于各类仪器,小型设备的显示领域。工作温度在-20+70之间,点中心距为0.44×0.60mm。引脚功能如下:第1脚:VSS,电源地;第2脚:VCC,电源正;第3脚:V0,对比度调整;第4脚:RS(CS),高电平时选择数据寄存器,低电平时选择指令寄存器第5脚:R/W(SID),高电平时读数据,低电平时写数据;第6脚:E(SCLD),使能端,写操作时,下降沿使能。读操作时,高电平有效;第714脚:DB0DB7,三态数据线;第15脚:PSB,高电平时选择8位或4位并口方式。低电平时选择串口方式;第16脚:NC,空脚;第17脚:RESET,复位端,低电平有效;第18脚:VOUT,LCD驱动电压输出端;第19脚:A,背光源正端;第20脚:K,背光源负端。若是在实际应用中仅使用并口通讯模式,可将PSB接固定高电平。模块内部有上电复位电路,因此在不需要经常复位的场合下可将17脚悬空。如背光和模块共用一个电源,则可将19脚和20脚短接,但是如果需要调节背光亮度,则可接1k电位器。3.4 硬件电路设计将单片机的P0口作为LCD1602的数据口,8个I/O口分别与LCD1602的7-14脚相连,P20接LCD1602的第6脚,P21接第4脚,P22接第5脚。硬件电路如图3.4所示 图3.4 硬件电路第4章 程序设计4.1 程序流程图开始 液晶屏初始化 温度传感器初始化 设定报警温度值 测量温度值并将温度值发送给单片机 将温度值发送给1602显示温度是否达到报警温度值 N 报警 Y 图4.1 程序流程图4.2 编程语言编程语言采用C语言,C语言已成为当前举世公认的高效简介、可读性强、且贴近硬件的编程语言之一。将C语言向单片机上移植始于上世纪80年代中后期。经过大量工程师们十数年的努力,C语言终于成功地成为专业化的单片机实用高级语言。人们通常把开发MCS-51所使用的C语言简称C51。采用C51编写的应用程序结构清楚、模块化程度高、可读性强、且易于移植。应用C51进行软件开发,用户可以不必具体考虑寄存器、存储器的分配等工作,而把这部分工作交给编译、连接软件,用户只需了解MCS-51的存储器结构,甚至不必去了解51的指令系统。C51开发环境一般都提供了数学计算等子程序,为程序开发带来方便。虽然采用C51编程形成的源代码比不上有经验人员编写的汇编语言精炼,但对于相对复杂的系统开发或复杂运算,还是比用汇编语言容易得多,且易于移植及有利于系统的维护和升级。在实时要求较高的场合,可采用C51汇编混合编程。本设计我们采用的是C51,其编译器是Keil C51,它是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。Keil C51软件提供了丰富的库函数和功能强大的集成开发调试工具。C51语言编程方法是:1.启动uvision4(Keil C51基于Windows下的开发环境),创建一个项目文件,并从器件数据库里选择一款CPU芯片;2.根据应用要求,在PC上用文本编辑软件编写C语言源程序;利用C51编译工具软件对源程序进行编译,生成目标文件(.obj文件);利用C51连接工具对目标程序进行连接定位,生成绝对程序,即可以装载到开发装置仿真运行。在某些情况下,也可以将绝对程序转化为十六进制代码程序(.hex文件)。4.3 开发平台软件设计的开发平台采用美国keil Software公司出品的Keil uvision4。Keil uvision4是美国keil software公司出品的兼容MCS-51单片机的软件开发系统。相较于汇编语言,C语言的优势在于其功能、结构、可维护性以及可读性,学习和应用都较为容易。keil uvison4提供了一整套的开发解决方案,包括C语言编译器、链接器、宏汇编、库管理和一个功能强大的仿真调试器等强大的组件。若使用C语言进行编程,keil将是不二之选,即使是使用汇编语言编程,keil方便易用的集成环境以及强大的软件仿真调试工具也能让开发者事半功倍。4.4 程序代码#include<REG52.h>#include"lcd12864.h"#define uchar unsigned char#define uint unsigned int/DS18b20接口sbit DQ=P10;/按键sbit keySec=P13;sbit keyDec=P12;/蜂鸣器sbit beep=P30;sbit key=P17;uchar code table="温度为:"uchar table1=" "uchar tablekey=" "uchar code table2=""uchar code table3="上限=:"uchar val;uchar Highlimit=20;uchar xdata stringBuf6;/延时函数void delay(uchar z) uchar x,y;for(x=z;x>0;x-) for(y=110;y>0;y-); /显示界面初始化void LCDShowInit() uchar i; LCD12864_WriteCmd(0x80); for(i=0;i<8;i+) LCD12864_WriteData(tablei); LCD12864_WriteCmd(0x90); for(i=0;i<6;i+) LCD12864_WriteData(table3i);void delay1(uchar num) while(num-);/*18b20初始化*/void Init_DS18B20(void) uchar x=0; DQ=1; delay1(10);/稍作延时 DQ=0; delay1(80);/延时>480us 540us DQ=1; /拉高总线 15-60us delay1(20); x=DQ;/读总线状态 为0复位成功,为1则不成功 delay1(30); DQ=1;/释放总线/*读取数据*/uchar readonechar(void) uchar i; uchar dat=0; for(i=0;i<8;i+) DQ=0; dat>>=1; DQ=1;/给脉冲if(DQ) dat|=0x80;/读1 / 读0右移处理 delay1(8);/15us内读完一个数 return(dat);函数名称:void WriteOneChar(uchar dat)返回值:无参数: uchar dat作用:写1820一个字节/*写DS18B20*/写0 60us读完,写1 30us 内读完void writeonechar(uchar dat) uchar i=0; for(i=0;i<8;i+) DQ=0; DQ=dat&0x01;/写所给数据最低位 delay1(10); / DQ=1;/给脉冲 dat>>=1; delay1(8);/读取温度判断正负uchar displaytemp() uchar a,b; uchar temp; Init_DS18B20(); writeonechar(0xcc); writeonechar(0x44); Init_DS18B20(); writeonechar(0xcc); writeonechar(0xbe); a=readonechar(); b=readonechar(); temp=b; temp=temp&0xf8; if(temp=0x00) val=0; table10='+' else if(temp=0xf8) val=1;table10='-' b<<=4; b+=(a&0xf0)>>4; return(b);/显示温度void Display() uchar tt,ge,shi,bai; uchar i,j; i=0; j=0; tt=displaytemp(); delay(2000); if(val=1) tt=255-tt+1; if(tt>Highlimit) beep=0; else beep=1; bai=tt/100; ge=tt%10; shi=tt%100/10; table1i+1=bai+0x30; i+; table1i+1=shi+0x30; i+; table1i+1=ge+0x30; i+; LCD12864_WriteCmd(0x84); for(i=0;i<4;i+) LCD12864_WriteData(table1i); LCD12864_WriteCmd(0x86); for(i=0;i<2;i+) LCD12864_WriteData(table2i);/设定上限温度void Warnset() uchar i,ge,shi,bai; i=0; if(keySec=0) delay(5); while(keySec=0); Highlimit+; if(Highlimit=125) Highlimit=20; if(keyDec=0) delay(5); while(keyDec=0); if(Highlimit=20) Highlimit=125; Highlimit-; bai=Highlimit/100; ge=Highlimit%10; shi=Highlimit%100/10; tablekeyi='+' tablekeyi+1=bai+0x30; i+; tablekeyi+1=shi+0x30; i+; tablekeyi+1=ge+0x30; i+; LCD12864_WriteCmd(0x93); for(i=0;i<4;i+) LCD12864_WriteData(tablekeyi);void main() LCD12864_Init(); LCDShowInit(); Init_DS18B20(); key=0; while(1) WarnSet(); Display();第5章 软件仿真和实物测试5.1 仿真平台仿真平台采用英国Labcenter electronics公司开发的EDA工具软件proteus。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是一款世界闻名的仿真工具软件。可进行原理图的编辑、PCB电路板设计、电路仿真、代码调试等工作。史无前例地做到了将电路仿真、虚拟模型仿真和PCB电路板设计集成到一个软件中。该软件的元件库能够支持8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086和MSP430等处理器,且在2010年又加入了对Cortex和DSP系列处理器的支持。在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。该软件具有丰富的器件库,包含超过27000中元器件,用户还可以很方便地创建新元件。支持总线结构,使用总线器件和总线布线让用户设计电路更加简明清晰。还可以输出高清图纸。是一款非常方便的EDA工具软件。5.2 软件仿真结果从程序可知,设定的报警温度为40,所以,若温度超过40时,扬声器应该发声报警。看到的现象应该为单片机的P26输出低电平。1.当温度为34时,液晶屏上显示温度为34,单片机P27输出高电平,扬声器不响2.当温度为41时,液晶屏显示温度为41,单片机P27输出低电平,扬声器发声报警。5.3 实物测试结果实物测试结果如下图所示。第6章 总结本次系统设计任务让我明白了耐心细致的重要性。虽然最终成功地设计出了这套火灾自动报警系统,但是这条设计指路并不平坦,而是崎岖的。首先,由于自己对单片机的编程并不算太熟练,于是我不得不重头温习单片机的编程,这占据了大量时间。然后由于对DS18B20和LCD1602不熟悉,因此还不得不花大量时间来熟悉DS18B20温度传感器和LCD1602的驱动代码。尤其是DS18B20温度传感器的代码让我尤为头疼。当时在选择硬件方案的时候为了简化硬件电路,于是选择了硬件电路极为简洁的DS18B20作为火灾探测器,然而简洁的硬件电路带来的却是复杂的程序。但是,虽然DS18B20方案的程序较为复杂,但是却能极大地提升我的编程能力,且运用这个方案能节省成本,因此,收获还是大于付出的。在做硬件的软件仿真时,对proteus的不够熟练也耽误了我一些时间,虽然proteus是一个功能很强大的软件,但是由于其本身操作界面不够明了,再加之这个软件用得也不算太好,因此在仿真的过程中遇到了不少的麻烦,但是最终被一一化解。现在想来,如果以前多加练习使用这款软件,也许这次的软件仿真会顺利很多,效率也会得到大大的提高。说到底还是平时实践经验不足导致的,平时过度注重理论学习,导致在实践中的相关经验不足,因此走了许多弯路,浪费了许多宝贵的时间。因此,我也意识到,要想成为一名合格的工程技术人员,光有理论知识是远远不够的,必须理论与实践相结合才行。毕竟我们是工科生,实践很重要。毕竟实践是检验真理的唯一标准。因此,以后若是还有机会,一定要多加注意培养自己的实践能力,只有理论和实践相结合,才能如虎添翼。这次设计算是较为成功的一次设计,成功地实现了温度的实时显示和温度超过预定的温度值蜂鸣器自动报警的功能。但是还有一些缺陷。那就是硬件电路中只用了一种传感器来对是否发生火灾进行判决,这其实是不够的。火灾虽然能带来高温,但是高温不代表就一定发生了火灾,因此用这套系统有可能出现误报警的情况,因此可靠想不算非常高。因此,这套系统还存在较大的改进空间。还可加入光耦、光电式的烟感传感器来进行对火情的综合判断,这样就可以大幅提高系统可靠性。致 谢大学生活即将结束,我们即将步入工作岗位。在大学里,我学到了很多专业知识,结交了许多朋友,也算是没有虚度光阴。在大学生活即将结束之际,我想对很多人说一声谢谢。首先,我要感谢我的父母,是你们一直在我背后默默地支持我,让我没有物质财富上的担忧。你们对我无微不至的关怀就是我不断前进的动力。其次,我要感谢我的指导老师xxx老师,我此次的毕业设计离不开xxx老师的耐心教导。尽管工作繁忙,但是xxx老师在此次毕业设计的过程中一直在耐心地点拨我,使我受益匪浅。若没有xxx老师的悉心教导,我将不得不多经历许多挫折,甚至有可能无法顺利完成此次毕业设计。因此,我想对xxx老师表示由衷的感谢。我还要感谢我的朋友们、同学们、室友们。与你们共度了大学的美好时光,你们给我留下了许多最美好的回忆,而这些回忆,将会是终生的。希望毕业之后我们一起努力奋斗。图书馆的老师也给我提供了许多帮助。在写这篇论文的时候,我查阅了很多资料,有一些是图书馆的老师推荐的。若没有图书馆老师的帮助,我将很难在茫茫书海中找到自己满意的文献资料。因此,必须对图书馆的老师表示衷心的感谢。感谢xxx学校,给我提供了这么安静且美丽的学习环境和生活环境。离开了这里之后一定会想念这里的美丽环境的。还要感谢本文中设计到的各专家学者们。我借鉴了一些你们的研究成果。在这一刻,我就是站在巨人肩膀上的人。最后,我要感谢身边所有帮助过我的人,谢谢你们的帮助!参考文献1张毅刚 ,单片机原理及应用M.北京:高等教育出版社,20042 STC89C52RC单片机用户手册3DS18B20工作原理.21IC中国电子网,2015412864液晶屏学习手册5刘和平.PIC16F87X单片机使用软件与接口技术C语言及其应用M.北京:北京航空航天大学出版社,20026李朝青.PC机及单片机数据通信技术M. 北京:北京

    注意事项

    本文(基于51单片机的火灾自动报警系统设计(22页).docx)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开