




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论1.1课题研究背景及意义随着集成电路和电子行业的不断发展,智能产品越来越受到重视,并越来越多地应用于智能社会。在这样的大环境下,传统的安全设备已经无法满足市场的需要,于是,智能化的安全系统便应运而生。在现代科学技术的不断发展下,人们对智能化安全技术的关注也逐渐增加,许多发达国家都将目光投向了这一领域,并在此基础上做了大量的研究和开发。近年来,智能产品日益流行,在安全方面,智能终端也逐渐被应用;对家里的环境进行实时监控。为保证人民的人身和财产的安全,减少火灾造成的伤害,各国政府不但在人员上加强了治安管理,而且在技术上也在不断的增加投资。同时,在学校实验室中采用类似的智能安全报警系统,对强化实验室的日常管理、安全监控具有重要意义。大学实验室是培养人才的关键所在。实验室既能为学生创造一个学习和研究的环境,又能推动科学技术的创新发展。目前国内大多数大学对安全管理体系的应用都十分重视,但目前还处在不完善的状态。当今,我国已有的安全预警产品中,还存在着大量的问题,如:大多数产品安装麻烦,体积大,成本高,能耗高,设备复杂等。因此,设计一款低功耗、低成本、高实用性的智能安防系统具有很大的现实意义。1.2国内外研究现状以及发展趋势目前智能安防系统越来越得到人们的重视,安防系统主要体现在两个方面,分别是:火灾报警系统和安防系统,关于安防系统国内外研究现状,从两个角度展开了分析。火灾预警系统在国外已有较长的历史。最初是在19世纪40年代,美国的Channing和Farmer在1847年发明了世界上第一台火灾报警装置,从此开始了对火灾报警的研究。主要采用分离元件的原理实现火灾报警的研究。紧接美国之后,德国的哈斯克和西门子公司将电报技术运用到系统中,实现了对火灾信号的发送。[15]英国在1890年的火灾检测领域取得了很大的成绩,制造出第一款温感火灾探测器,对现代火灾预警技术的发展做出了卓越的贡献。20世纪50年代初期,一种离子式烟感传感器被瑞士的科学家ErnstMeili研制出来。由于此类传感器灵敏度较高的特点,在这种情况下,许多国家研制出许多新型的温感和烟感传感器,采用多线安装开关量的形式,但是安装复杂,维护繁琐,可靠性低。20世纪80年代,随着电子技术的进步,火情探测的种类日益增多,单一的火情探测方法所存在的不足也日益凸显。开始倾向于采用多个传感器来获得多个数据,通过对多个数据进行处理,从而达到对火灾报警的目的,同时,由于传感器的数量越来越多,导致了传统的开关报警系统的复杂性增加。[31]20世纪90年代,火灾探测算法的研究已经进入了一个新的阶段。根据火灾发生时火焰的动态和静态特性展开的。其中,有灰度图像、RGB图像等。[32]1997年,日本新宇宙股份有限公司在中国与上海燃气创立合资公司,在上海生产制造家庭气体报警装置。[38]在2000年,澳大利亚率先将WSN与传感器相结合,设计并应用于用于火灾报警,开创了一种将传统火灾监测技术向智能化方向发展的新途径。2008年英国研究人员将大数据分析预测技术与物联网、视频监控等多项技术结合,建立了火灾预测的大数据分析仓库,经过长年运行、优化升级,效果非常显著。[3]2011年LChun-yuan设计一种基于GSM的火灾报警系统,解决了火灾布线问题以及对火灾报警精度进行加强。[40]安全防护技术最初是从美国开始的,最初是在国家军队中使用,然后逐步在民用和私人领域中得到广泛的应用。美国ADT公司在20世纪30年代推出了安全报警服务。日本西科姆公司于20世纪80年代在家庭安全领域开展了研究。韩国的家用安全设备正逐步向智能化方向发展。与此同时,无线传感器等相关技术已广泛应用于世界各国。[29]到了20世纪90年代,国内开始研究安防相关的技术,到2002年的时候安防技术取得突破性进展,推动了安保产业的发展。[33]2008年,奥运会在北京召开,第一次使用c4i系统(奥运综合安防系统),科学技术是代表我国奥运精神的重要理念,科技奥运是奥林匹克发展的一个主要标志。[7]在2014年,一套适合家用的无线安全警报系统开始运行。目前最受欢迎的无线通信技术如蓝牙、ZigBee等,都存在着传输速度较慢的缺点。与之相比,近年来普及的WIFI技术更适用于无线通信。[41]2017年,家居安防系统中以MSP430为核心,利用SIM900A模块将报警信息发送给用户,从而达到了远程通讯的目的。[37]在2018年,由于用户需要通过移动电话来实现对报警的监控,并且GPRS的数据传输速度比GSM要快,并且可以实现更远的传输。[44]一种基于GPRS无线传输的安防报警系统被应用到安全预警中。[35]2019年是通讯产业进入大数据时代的重要一年。在这种情况下,对传统的安防报警行业的发展提出了新的要求。在大学实验室中应该采用智能化的安保技术,以达到对实验室进行智能化管理,以保证实验室的安全。[22]学校作为培养国家栋梁之所,加强对大学生人身安全的保护显得尤其重要。为了保证教师和学生的生命安全,保证学校的财产和科研工作的顺利进行,高校必须加强对校园的安保工作,特别是对实验室的安保工作。1.3本文主要研究内容本文在对目前国际以及国内安防状况进行调查和分析的基础上,提出了以STM32为核心的实验室智能安防系统。本项目的研究内容为:安防系统利用各个传感器对实验室内周围的环境进行监测,并将收集到的数据由显示模块在液晶屏幕上进行显示,在数据超出某一临界值时,启动报警。同时继电器打开,连接负载采取相应措施。主机由STM32F103C8T6单片机组成,并通过WIFI无线通讯模块将采集到的数据发送给使用者,使用者可以通过移动应用程序方便、直观地了解实验室内的情况;提高了系统的人机交互能力。1.4本文主要结构第一章首先阐述了论文的选题背景、选题目的和意义以及论文的主要内容,并从消防安全、安保等角度对目前国内外有关技术的研究状况进行了综述。第二章对目前的安全警报系统的市场需求进行了分析。按照市场的需要和开发的需要来设计整个系统。第三章介绍了系统的硬件电路,包括监测模块,显示模块,通讯模块,报警模块等。第四章对各个功能模块软件部分进行了说明。第五章是对系统进行功能验证分析。最终通过分析得出结论并提出本文的不足之处以及需要改进的地方。第2章总体设计方案本章结合目前国际上安防技术的发展状况,介绍了一种适用于实验室的智能化安防系统。在综合考虑了成本和实用性之后,最终确定了STM32系列单片机作为主控制器。在这一章中,首先对安防系统的需求展开了分析,然后,对实验室安防系统设计的总体方案进行了详细的阐述。2.1安防系统需求分析伴随着安防技术向智能化方向发展,人们对安防技术的要求也在日益提高,使用范围也日益扩大。然而,目前很多安全设备采用有线连接,而且布线繁琐,不够智能。目前,有些已进入公众视线的安防设备,其技术还不够成熟,大多数的安防设备都是以各自的方式独立运行着,没有很好的整合起来。安防系统在大学实验室中的应用的背景下,对其进行了需求分析,需要满足以下几点。需求如下:第一,实验室是培养人才的关键所在。实验室既能为学生创造一个学习和研究的环境,又能推动科学技术的创新发展。随着人数和实验项目的不断增多,这种情况下如果校园安全有疏忽的地方,会导致难以预料的后果。同时,学校实验室有着高昂的实验器材,发生灾害时会带来巨大损失,因此,应该重视实验室的安全情况。需要对校园的安防系统进一步强化,通过安防系统第一时间发现并控制灾情,降低灾情带来的损失。第二,科技推动着时代的进步,手机是当今每个人都需要的工具,监管实验室的领导和老师通过手机就可以方便快捷的掌握实验室的安全情况,及时有效地避免发生安全事故。第三,目前市场上大多数的安防产品是有线连接,这类安防产品的线路较为复杂,装置较为繁琐,不适合在大学的实验室中使用。此外,安防设备的布线暴露于外界,也极易引起电气事故。所以,急需一种既能实现无线互联,又能满足大学实验室运行费用的安防系统。设计出一种智能化的实验室安防系统,主要就是给高校中的科研人员以及老师同学们提供一种安全便捷的科研环境,所以对安防系统需求更偏向于操作简单,实用性强。如果在使用的过程繁杂,反而降低了系统的智能化。目前市场上的智能安防产品中存在着价格高,布线布局繁杂,操作复杂等问题,而且高校中的实验室数量多,通常情况下,要用到的安全设备数量很多,而大学若能选用智能设备,则具有较大的优越性。但在采用低成本的安全系统时,要保证系统的性能。因此,在整个系统的设计中,对硬件电路进行合理的选取与设计是非常关键的。既要保证系统的稳定性,又要保证它的造价。这样既能节省经费,又能节省物资,更能满足大学实验室的需要。2.2系统总体设计方案2.2.1方案芯片选型本文所设计的安防系统要达到的目的是:系统可以利用传感器对实验室环境进行实时监测,并且能采集实验室的环境信息,然后由主控制器对传感器收集的环境数据与系统设定的阈值进行判定,若超出设定的阈值进行声光报警,提醒管理人员采取相应的措施。因此,在进行硬件电路设计的过程中,不仅要遵循电路设计的基本原理,还要将成本低、实用性等方面的原因考虑进去。传统的安防系统主控芯片大多数是采用8位的51单片机,处理器的功能比较落后,运行速度慢,保护能力差,容易烧坏芯片,AD、EPROM等功能需要外接芯片扩展,增加芯片的负担,对于特定的程序需要耗费更长的时间和精力进行开发调试,对安防系统发展智能化有一定的局限性。本系统以STM32为主要控制单元。STM32单片机是一个32位的微控制器,它以ARMcortex为内核,拥有低功耗、高性能的特点,而且它的开发非常方便,是一个非常理想的选择。本系统采用STM32F103C8T6单片机作为主控单元。STM32F103C8T6是意法半导体公司开发的32位芯片,以ARM7架构为基础,具有高效率、易于开发、低功耗等优点。可以适用于许多应用。温度检测采用DS18B20芯片,具有体积小,精度高的特点。烟雾浓度使用MQ-2芯片,该芯片不但可以对烟雾进行探测,而且能探测各种可燃气体,操作简便,安装简单,性能稳定,长期使用不易老化,维护成本低。火焰检测使用HY-A1火焰传感器,可以检测更细微的火焰信号,具有灵敏度高,稳定性好的特点。定位模块使用中科微ATGM332D芯片进行定位,具有精度高,低功耗,低成本的特点。无线通信采用ESP8266芯片,具有接口丰富,功耗低的特点。显示模块使用TFT-LCD液晶显示屏,具有对比度高,色彩丰富的特点。将STM32单片机用作主控制器,对采集到的信息进行分析、判断,并对其进行处理,让安防系统中的各个模块能够进行联动工作,这是实现系统高度集成化的关键。2.2.2安防系统总体方案在方案选型的基础上,本文提出了一种基于STM32的实验室智能安防系统,并对其进行了详细的硬件设计。在图2.1中显示了该系统的结构方块图。图2.1系统总体结构框图本文设计的实验室智能安防系统主要分为对火灾检测(包括温度、烟雾浓度和火焰三种环境信号),定位模块,通信报警以及继电器模块四部分,各部分的设计方案如下。(一)火灾检测火灾检测主要通过收集温度、烟雾浓度以及火焰状态,对三种数据进行判定是否超过阈值进行报警,从而实现了以STM32F103C8T6为核心的最简电路,包括晶体振荡器,复位电路,它与各传感器电路模块一起构成了一个安防系统电路,因此可以实现当传感器采集到的数值超过临界值时,触发报警模式。(二)定位模块系统通过定位模块可以在发生灾情的时候确定发生的具体位置,管理员可以及时通过该模块及时知晓灾情发生的位置。(三)通讯报警模块通信报警模块主要有两种方式,一种是声光报警,另一种是远端报警,其中声光报警由LED灯和蜂鸣器构成,在报警被触发时,LED灯会闪烁,蜂鸣器就会发出警报声;这样,就可以在一定程度上提醒周围的人,使他们对周围的环境产生警觉,并能迅速疏散,减少因安全事故而造成的伤害。在远程报警时,利用ESP8266无线通信模块,由MCU接收到异常数据,启动报警方式,从而达到与STM32F103C8T6单片机的双向通信。当报警模式被启动后,单片机机与ESP8266模块进行无线通讯,单片机将采集到的数据以WIFI通讯方式传送至管理员,管理员可在手机应用程序中即时收到该信息;提示管理人员在发生事故的时候,能够做出正确的反应,减少实验室的损失。(四)继电器模块在自动化控制电路中,一般采用的是一种电气开关,继电器实质就是利用较低的电流来对较高的电流进行操作的“自动开关”。它在遥控、通信、自动控制以及电力电子设备中得到了大量的应用,属于最主要的控制元件,在电路中发挥着自动调节、安全保护、转换电路等功能。继电器连接着负载,传感器收集到的数据超过阈值,触发了报警模式之后,继电器导通使系统采取灭火的措施。2.3安防系统算法发生灾情的时间和地点都是人们难以预测的,环境可燃物种不确定,火灾的发生具有随机性,因此,为了尽快检测到火灾发生,提高检测灵敏度,算法起到很重要的作用,考虑到火灾的发生情况使用直观算法。依据比较原理,该方法可将直观算法分成两类:一类是固定门限检测方法,另一类是变化率检测方法。第一个办法就是对比传感器所监测的数据与设置的门限,当门限超出时,就会判断是否有火情发生。将监测到的信号为x(t),比较信号设为y(t),转换函数为T(),则该方法可以这样表示: y(t)=T[x(t)] (公式2-1) D[y(t)]=1,y(t)>s0,y(t)<s (公式2在公式(2-2)中,当D[y(t)]为1时,发生火灾,为0时不发生火灾,s为设定的阈值。第二种方法与第一种方法相差不大,只是采集信号由某个定值变成了一段时间内的信号,转换的信号也变成了某信号一段时间的变化速率。时间差用∆t表示,y(t)表示信号变化斜率。公式如下。 y(t)=∆x(t)∆t=x(t2)−x(t1)t2−t1,t2>t1 y(t)=dx(t)dt,D[y(t)]=1,y(t)>s0,y(t)<s 在公式(2-4)中,当D[y(t)]为1时,发生火灾,为0时不发生火灾,s为设定的阈值。本设计中烟雾浓度使用第一种方法,温度使用第二种方法,有效提高了采集效率。2.4本章小结在这一章中,首先对安防系统的整体需求进行了分析,然后对安防系统的整体方案进行了设计,并按照整体的要求,选择了STM32系列芯片作为系统的主控制芯片,并对各模块的器件进行了选择;在此基础上,本文还给出了实现实验室智能安防的一些算法。第3章系统的硬件设计3.1安防系统硬件电路设计安防系统的核心是用STM32F103C8T6芯片来进行控制的,要对STM32F103C8T6最小系统进行设计,其中包含了晶振,上电复位等,并对温度检测、烟雾浓度检测、火焰检测等模块进行了设计。3.1.1STM32F103C8T6最小系统设计STM32F103C8T6芯片可以在-40℃~105℃温度范围内工作,电源电压是2伏至3.6伏,操作频率是72兆赫。拥有大量的输入输出端口,晶振连接两个电容另一端接地,负载电容值等于并联电容值,复位电路将系统恢复到起始状态,电容在上电的同时进行充电,当电阻有了高电压后,单片机就可以进行复位,当电容完全充满电后,单片机就可以进行工作,然后再按下复位开关,单片机就可以进行复位。图3.1中显示了单片机的最小电路。图3.1单片机最小系统电路电压转换电路:利用AMS117-3.3芯片对单片机电压进行降压,把5V的电压转化成3.3V的电压。此外,在该芯片上还内置限制电流保护功能,能够更好地对单片机进行保护。电路图如图3.2所示。图3.2AMS117-3.3降压电路3.1.2温度模块电路设计在温度电路的测试中,采用了DS18B20温度传感器,它具有结构紧凑、抗干扰性好、测量精度高等优点。无需其它附属部件即可投入使用,采集的数据掉电不丢失。工作电压3~5.5V,它可以在-55摄氏度到+125摄氏度之间进行测试,可以设定9-12位的编程分辨率,将温度变换成12位数字格式最长可以达到750ms。电路原理图如图3.3所示。图3.3DS18B20电路原理图3.1.3烟雾检测模块电路设计烟雾检测模块主要使用能够直接连接单片机的MQ-2烟雾传感器,以SiO2为主体材质。当烟尘含量增加时,烟雾传感器的导电能力会增加,而其电阻会减小。MQ-2传感器利用导电率的改变来获取烟气浓度的变化值。MQ-2技术指标为:回路电压Vc≤24VDC;加热功耗Pℎ≤950mW,加热电压Vℎ=5V,电流为150mA,浓度在300-10000ppm的范围内,可以被检测到。具备图3.4MQ-2模块电路图3.1.4火焰检测模块电路设计火焰是火灾发生的最主要特征,在火焰探测模块中,使用了HY-A1型高灵敏火焰探测器,它能对760-1100nm的波长进行探测,并能对60度的探测角进行探测。在周围的火焰没有达到设定的阈值时,D0端输出一个高电平,在传感器探测到火焰超出阈值时,D0端由高电平变为低电平。图3.5中显示了火焰传感器电路图。图3.5火焰电路电路图3.1.5WIFI通信模块电路设计在WIFI通讯模块的设计中,选用了安信可公司开发的ESP8266芯片,它具有高度的集成度,能够在一块限定的PCB板上集成板载天线和电源管理转换器,其核心是一个32位微处理器;主要频率可为80兆赫或160兆赫,具有功耗低的特点。该芯片可以直接通过串口和主控制器之间进行通信。使用ESP8266模块为本文所研究的实验室智能安防系统提供了联网的功能,提高了数据的传输速度,打破了传统安防系统受限于有限距离的弊端,实现了数据实时传输,方便了管理人员通过手机就可以直接查看实验室的环境数据。ESP8266具有STA,AP,STA+AP三种工作方式。在表3.1中列出了工作模式的含义。表3.1ESP8266工作模式模式说明STAESP8266通过连接互联网,手机或者电脑通过互联网远程实现对设备的控制。APESP8266作为热点,实现手机或电脑与模块直接通信,实现局域网的无线控制。STA+AP两种模式的共存模式,通过互联网可以进行无缝切换。本系统使用AP模式,模块电路图如图3.6所示。图3.6ESP8266模块电路图3.1.6定位模块电路设计定位模块使用中科微ATGM332D作为本系统的定位模块,它的优点是高灵敏度和高准确度。ATGM332D具有32位追踪信道,能同步接受中国北斗和美国GPS等导航设备的GNSS信号,能实现定位、导航和时间同步。模块第一次定位时间是32s,定位精度为2.5米,ATGM332D的冷启动捕获灵敏度为-148dBm,热启动捕获灵敏度为-156dBm,追踪定位(测速定位)的灵敏度为-162dBm。在图3.7中显示了该模块电路。图3.7GPS接口电路图3.1.7显示模块电路设计安防系统采用TFT显示模块进行数据显示。TFT(ThinFilmTransistor)是一种有源矩阵LCD,也就是薄膜场效应管,刷新速度快,可以提供更加清晰的显示效果,具有对比度高,色彩丰富的特点。电路图如图3.8所示。图3.8TFT显示电路图3.1.8报警模块电路设计本系统报警模块使用LED和蜂鸣器来进行报警,蜂鸣器电路图见图3.9,LED灯电路图见图3.10。图3.9蜂鸣器电路图图3.10LED电路图3.1.9继电器模块电路设计继电器是在输入量到达预先确定的数值时,引起被控制量发生阶跃变化的一种电气控制器件,是一种用小电流控制大电流的“自动开关”。装置采用三极管作为继电器的驱动装置,在警报被触发的时候,由MCU输出一个高电平导通,这时,继电器电源被接通,LED灯会发光。电路图如图3.11所示。图3.11继电器电路图3.1.10按键电路设计本系统也可以通过按键进行阈值调整和报警以及继电器的控制。按键的控制管脚默认为高电平,按钮被按下时,相应管脚变为低电平。再进一步,可以完成对系统的人工输入,从而发挥出与用户进行互动的功能。电路图如图3.12所示。图3.12按键电路图3.1.11负载电路设计本系统通过继电器连接负载,实现报警之后采取的措施。由于负载需要外部供电,直接连接负载接线困难,所以设计负载转接电路。电源为5VDC或12VDC为负载供电,配一个LED灯显示负载电路的通断情况。其电路图如图3.13所示。图3.13继电器负载电路图3.2安防系统电路图和PCB图使用AD(AltiumDesigner)软件进行电路图的设计以及PCB板的设计,电路图和PCB图放在了附录处。第4章系统软件设计4.1Keil平台介绍KeilC51是KeilSoftware公司为ARM系列的单片机提供了MDK开发工具。在使用keil平台进行开发的时候,应该对开发环境进行配置,并添加启动程序。在Keil平台上,可以进行STM32编程,测试,以及其他一些功能。4.2系统总体流程图软件部分主要实现了数据与主控制器的信息交换,采用C语言作为程序设计的编程语言,采用keil5作为编译软件。该系统包括:主控制模块,温度检测模块,烟雾浓度检测模块,火焰检测模块,定位模块,WIFI无线通讯模块。在电源被打开的时候,首先要对所有的模块进行初始化,然后将这些模块的信息全部接收到显示屏上,再用无线通信来进行数据的传送,对这些数据进行判断,如果这些数据没有超出临界值,那么就不会出现警报,如果已经超出了临界值,则会打开声光报警,并且还会启动水泵的喷洒。软件设计整体流程图如图4.1所示。图4.1软件设计流程图4.3温度检测模块DS18B20是单总线通信方式,首先进行初始化,设置阈值∆T,之后单片机询问是否同意检测信号,通过之后采集热敏电阻电压根据相应公式转换为温度值T1和T2进行差运算与∆T比较,当数值大于∆T时以高电平的方式发出报警。图4.2中示出了温度的探测基本代码,图4.3中示出了图4.2温度检测主要代码图4.3温度检测流程图4.4烟雾浓度检测模块在进行烟雾信号的收集的时候,系统要对烟雾传感器进行初始化,并将系统所采集到的烟气浓度信号U1与设定值U0在单片机中进行对比,当烟气的浓度超出了设定值U0的时候,就会发出警报,否则就会持续对烟气进行采集。在图4.4中显示了检测流程。图4.4烟雾检测流程图4.5火焰检测模块当使用系统时火焰检测模块首先进行初始化,之后单片机进行扫描,如果有火焰产生进行声光报警。检测流程如图4.5所示。图4.5火焰检测流程图4.6WIFI通信模块ESP8266使用TCP/IP协议进行通信传输,将收集到的传感器数据传输给用户。主要程序如图4.6所示,工作流程图如图4.7所示。图4.6ESP8266主要代码图4.7WIFI通信工作流程图第5章安防系统的验证和结果分析5.1系统功能验证前面已经对各部分的硬件和软件设计进行了介绍,在这一章中,主要对火焰检测,显示模块,定位模块,通信报警模块,进行验证分析。5.1.1火焰检测火焰检测实现的主要功能包括:通过温度,烟雾浓度,火焰传感器三种检测模式,对实验室的环境数据进行同步检测,进而对是否有火灾进行了判定。(一)温度检测系统在检测温度的过程中遇到初始化失败的问题,DS18B20单总线对时序的要求极严格,应该按照时序来编写程序。按照时序编写之后重新启动解决了这一问题。根据查阅的资料可以知道,在房间里的温度达到68摄氏度的时候,就会达到火灾报警的温度,因为在当前的试验环境中,68摄氏度是很困难的,所以要对温度报警的检测功能进行验证,就把它的温度值设定为30℃进行测试。通过传感器检测出温度以及数据超过阈值之后进行报警的功能,同时触发继电器开关。如图5.1所示,可以证明本设计温度检测模块实现了检测温度的功能,解决了实验室中因设备工作不正常甚至损坏,以及因操作不当导致温度突然升高的情况,尽快报警并采取相应的措施。图5.1温度检测(二)烟雾浓度检测当室内发生火灾时,会释放一氧化碳,甲烷等有害气体,当烟雾浓度达到600ppm的时候会引起窒息。通过使用MQ-2烟雾传感器进行检测,当超出阈值时可以发出报警,继电器开关打开,并采取相应的措施。如图5.2所示。可以证明本设计烟雾检测模块实现了检测烟雾的功能,能够实时监测实验室烟雾情况,并及时进行报警,减轻了因灾情处理延迟带来的损失。图5.2烟雾检测(三)火焰检测系统在检测火焰的过程中遇到无法检测火焰的问题,由于位置不当,环境光线过强导致,可以通过重新摆放位置,避免强光干扰解决问题。系统使用火焰传感器进行检测,当有火焰靠近时,系统发出警报,进行声光报警,并打开继电器开关。如图5.3所示,可以证明本设计实现了火焰检测功能,可以及早发现实验室的火灾隐患,在火灾发生初期及时发出报警信号进行报警,使管理人员及时采取相应的措施。图5.3火焰检测5.1.2显示模块验证本设计使用2.4寸TFT显示屏进行显示,在验证的过程中出现过全黑屏现象,首先检查显示屏引脚是否与单片机正确连接,检查单片机是否上电,通过检查得知显示屏引脚与单片机连接接触不良,将显示屏重新安装好解决了这一问题。系统将主控制器采集到的信息实时显示在显示屏上。如图5.4所示。可以证明本设计实现了显示功能。图5.4TFT显示5.1.3定位模块验证系统通过ATGM332D定位模块来对发生灾情的区域进行定位,在对系统定位模块进行验证的过程中出现过在室内个别位置接收不到位置信息的现象,对此,可能有一些物体将接收天线遮挡,影响信号接收,可以将定位模块天线安装到空旷的地方,解决了这一问题。定位模块验证结果如图5.5所示,可以证明本设计实现了定位功能,可以实时显示位置信息,当系统检测到实验室中环境数据异常发出报警时,管理人员可以通过定位模块在灾情发生的第一时间确定灾情发生的地理位置,从而更快的采取相应的措施,减小实验室因灾情造成的损失。图5.5定位模块5.1.4通信报警模块验证系统实现通信报警的功能为:系统可以通过WIFI模块和管理员进行无线通信,实时显示收集的数据,当传感器监测到数据发生异常报警时,管理员也可以通过无线通信在APP中马上得知报警情况,并能够做出相应处理。结果如下图所示。可以证明本设计实现了通信报警功能。系统使用WIFI进行和管理员进行通信,解决了传统安防系统信息传递不及时,有线连接距离大的弊端,以及布线布局繁杂的缺点,同时WIFI可以提供实时的传输速率和稳定性,大幅提高了实时监控质量。图5.6温度过高时报警图5.7烟雾浓度过高报警图5.8有火焰时报警5.2结果分析通过对系统主要功能进行实物验证,通过验证可知,系统可以进行火焰检测、定位、显示以及通信报警,并能够在做出报警之后打开继电器采取相应的措施。系统可以正常运行,符合要求使系统通过验证。5.3本章小结本章中,对安防系统进行测试,对结果进行了详细的描述。在对系统展开验证的过程中可以了解到,本系统可以正常地对实验室的环境进行实时监测,一旦有危险发生立刻触发报警,并及时采取相应的措施,达到对危险情况及时预防的效果。第6章总结本论文以STM32为核心,结合嵌入式技术,设计出基于STM32的实验室智能安防系统,完成了该系统在实验室中的环境监测和安防报警功能,以下是该设计研究内容的主要概述:系统可以对实验室内的环境进行监测,在屏幕上实现了对各种数据的实时显示,STM32微处理器将传感器采集到的数据,并与设置的阈值相对比;在探测到的数据超出阈值时发出声光警报,同时打开继电器,及时采取灭火措施,并将数据可以传递给管理员,通过ESP8266模块,管理人员通过手机APP对实验室的实际环境进行监测,从而更好的体现出了其智能性。与传统的安防系统进行比较,本设计更加便捷智能,实用性更强,可以实时收集实验室的环境情况,在发生灾情时及时报警并采取相应措施,实现管理人员与单片机之间的信息传输,增强了人机交互性。本设计体积小,成本低,功耗低,安装简单,将系统各个模块集成到一个电路板上,解决了传统安防系统成本高,布线复杂,传输效率低等问题,提高了设计的实用性和便捷性。由于时间和条件限制,仍然有许多不足之处,在今后的设计中不断进行改进和完善,丰富安防系统的功能性。参考文献[1]张宇.智能建筑安防中的物联网技术应用研究[J].互联网周刊,2023(03):63-65.[2]李尚.数字时代基于智慧化的校园周界安防系统建设浅析[J].数字通信世界,2022(09):74-76.[3]马艳梅.基于智能传感器的消防监测系统研究与实现[J].太原学院学报(自然科学版),2022,40(03):31-37.[4]陈印超,叶名炀,陈嘉豪,王琪霖.智慧实验室安防系统研究设计[J].电子制作,2022,30(17):44-46+40.[5]李悦.基于物联网技术的智能家居安防系统设计研究[J].电子制作,2022,30(14):89-91.[6]何云飞,王利松,陈黄立.基于无线传感器网络的智能家居安防系统设计[J].无线互联科技,2022,19(09):89-91.[7]韩峰.浅析大型活动安保工作中的安防应用与发展[J].中国安防,2022(04):88-91.[8]王亚林,陈楠.一种物体定位检测实验电路设计[J].电子技术与软件工程,2022(06):124-127.[9]蓝丽金,陈良伟.基于物联网的智能家居安防系统设计[J].数字技术与应用,2022,40(01):177-179.[10]刘海涛,陈军,吕刚,丛晓燕,韩岳.高校物理实验室的安全管理[J].内蒙古科技与经济,2022(01):42-43.[11]赵琳.基于单片机的火警报警器设计[J].产业与科技论坛,2022,21(01):32-33.[12]占华林,陈亮亮,张配阳,诸丽芳,于子正.基于STM32单片机的仓库温度监测系统设计与控制[J].科技创新与应用,2021,11(29):39-41.[13]阮承治,李琦,曾东梅,杨君,李青,吴函汀.智能化烟雾报警控制系统的设计与实现[J].黑龙江工业学院学报(综合版),2021,21(09):48-53.[14]王昊冉.浅谈智能安防技术在大型活动安保工作中的应用[J].安徽警官职业学院学报,2021,20(05):71-74.[15]廖银霜.基于物联网的火灾探测报警系统的研究[D].贵州大学,2021.[16]徐巧年,朱国旺.基于物联网的校园实验室安防预警系统[J].集成电路应用,2020,37(10):38-39.[17]李萌,安娜,王磊.基于物联网智能家居安防系统的设计与实现[J].数码世界,2020(10):45-46.[18]刘恩元.浅析平安城市建设与中国安防技术创新[J].中国公共安全,2020(Z1):133-135.[19]徐雷,崔子晨,刘俊俊,王浩然,李文娟.基于DS18B20温度监测报警系统的设计与实现[J].安庆师范大学学报(自然科学版),2020,26(01):89-92.[20]钱伶琳.独立式火灾探测报警器发展展望[J].日用电器,2020(01):47-49.[21]付文刚,高霞娥.吸气式感烟火灾探测器在地铁车站中的应用[J].中国新技术新产品,2019(24):145-146.[22]王毅敏.高校实验室管理中智能管理系统的实践分析[J].信息系统工程,2019(12):160+163.[23]蒋青山,李亮亮,李运泽,康煌杰.室内智能安防报警系统[J].山西电子技术,2019(05):25-28.[24]吴晓尉.智能安防技术在大型活动安保工作中的应用[J].武警学院学报,2019,35(05):28-32.[25]李丽萍.物联网技术在智能家居安防系统中的应用研究[J].网络安全技术与应用,2018(12):120-121.[26]谭淑梅.基于单片机的烟雾报警系统的设计与实现[J].大庆师范学院学报,2018,38(06):40-41.[27]林鲁春,邵根富,姜周曙,黄国辉.智慧实验室系统的研究与构建[J].实验科学与技术,2020,18(01):151-154.[28]潘晓贝.基于物联网的智能家居家庭安防系统设计与实现[J].三门峡职业技术学院学报,2018,17(03):127-132.[29]许锰.基于云平台的家庭安防系统研究与设计[D].山东大学,2018.[30]周海军,黄雨,邓伟强,李磊.基于STM32的家庭智能防盗报警系统设计[J].赤峰学院学报(自然科学版),2018,34(03):42-44.[31]陈东阳.基于图像分析的火灾报警系统研究[D].哈尔滨工业大学,2018.[32]朱慧君.智能安防系统之无线火灾远程报警器的设计[D].哈尔滨理工大学,2018.[33]赵璐.安防的发展现状与博物馆安防应用[J].中国高新区,2018(04):215+217.[34]马标.基于WiFi的智能家居安防系统的设计[J].物联网技术,2018,8(01):74-75.[35]关雯馨,王新蕊.智能家居安防GPRS无线远程监测报警系统设计[J].电子世界,2018(01):121-122.[36]钱晓鹏,朱浩然.实验室环境温湿度监测系统[J].科技创新导报,2017,14(15):151+153.[37]陈宇瑞,李明,付帅.基于GSM的智能家居安防系统设计[J].电子制作,2017(07):38-39+50.[38]杨华博,赵静雅,徐江红.烟雾温度火灾报警器的设计[J].电脑知识与技术,2016,12(34):272-273.[39]姚雪,陆宁,马晓明.基于GPRS的无线安防系统的设计与实现[J].电子科技,2016,29(05):142-144.[40]KoggalageR,WelihindaM,NuwanH.GSMbasedsmartfireandhigh-temperaturedetectionsystem[J].ITEGAM-JETIA,2021,7(28):56-61.[41]ZhangB,ZuoJ,MaoW.SmartWAZ:DesignandimplementationofasmartWiFiaccesssystemassistedbyZigbee[J].IEEEAccess,2019,7:31002-31009.[42]WaleedJ,AbduldaimAM,HasanTM,etal.Smarthomeasanewtrend,asimplicityledtorevolution[C]//20181stInternationalScientificConferenceofEngineeringSciences-3rdScientificConferenceofEngineeringScience(ISCES).IEEE,2018:30-33.[43]PingguiH,XiuqingC.DesignandimplementationofcampussecuritysystembasedonInternetofThings[C]//2017InternationalConferenceonRobots&IntelligentSystem(ICRIS).IEEE,2017:86-89.[44]MauryaS,SharmaS,YadavP.InternetofthingsbasedairpollutionpenetratingsystemusingGSMandGPRS[C]//2018InternationalConferenceonAdvancedComputationandTelecommunication(ICACAT).IEEE,2018:1-5.附录附录A安防系统电路原理图安防系统的电路原理图如下。图A.1安防系统电路原理图附录B安防系统PCB图安防系统PCB如下图所示。图B.1安防系统PCB图图B.2安防系统PCB图附录C安防系统实物图安防系统实物图如下。图C.1安防系统实物图附录D主要程序#include"my_include.h"#defineMAX_SET_SIZE3u16setParaTab[MAX_SET_SIZE]={0,50,32};u8setParaCount=0;u8setMode=0;u8updataDis=1;//需要更新显示标志u8buzzerFlag=0;//蜂鸣器报警状态chardis0[50];//液晶显示暂存数组chardis1[128];//液晶显示暂存数组#defineF_SIZE16#defineMyLCD_Show(m,n,p)LCD_ShowString(LCD_GetPos_X(F_SIZE,m),LCD_GetPos_Y(24,n),p,F_SIZE,false)#defineALLPARA_START_Y3//液晶设置参考位置u16nowYq=0;//烟雾值floatnowTemp=0;u8disFlag=0;//更新显示u8rememberTiemSe=0xff;//记录当前秒数据u8abnormalFlag=0;//异常显示标志u8gpsDealOkFlag=0;//gps数据获取更新成功标志voidOnGetEspMessage(const_esp_msg_obj*espMsgRec){char*strPtr;if((strPtr=strstr(espMsgRec->payload,"RTC"))!=NULL){My_RTC_SetStr(strPtr+3);//设置时间}if((strPtr=strstr(espMsgRec->payload,"SET_"))!=NULL)//接收到字符串*SET_Y65T25#{setParaTab[1]=ParseInteger(strPtr+5,2);//提取设置参数setParaTab[2]=ParseInteger(strPtr+8,2);//提取设置参数}if((strPtr=strstr(espMsgRec->payload,"MD"))!=NULL)//接收到字符串{if(*(strPtr+2)=='1')setMode=1;//手动模式elseif(*(strPtr+2)=='0')setMode=0;//自动模式}if(setMode==1)//手动模式下才进行控制{if((strPtr=strstr(espMsgRec->payload,"RL"))!=NULL)//接收到字符串{if(*(strPtr+2)=='1')relay=1;//打开elseif(*(strPtr+2)=='0')relay=0;//关闭}if((strPtr=strstr(espMsgRec->payload,"BZ"))!=NULL)//接收到字符串{if(*(strPtr+2)=='1')buzzerFlag=1;//打开elseif(*(strPtr+2)=='0')buzzerFlag=0;//关闭}}updataDis=1;//需要更新显示参数}voidinitLcdDisplay(void);//初始化液晶显示voidscanKeyAnddealKey(void);voiddisplayOfCollectedData(void);voidwrite_FlashBuf(void);voidread_FlashBuf(void);voidinit_FlashBuf(void);voidkeySetTime(void);intmain(void){USARTx_Init(USART1,9600);//初始化串口及波特率USARTx_Init(USART2,9600);My_RTC_Init(false);//初始化rtcMy_ADC_Init(ADC1);My_KEY_Init();My_LED_Init();//输出初始化init_FlashBuf();//初始化flash中数据if(My_DS18B20_Init(PB6)){printf("18B20exist");}//1602显示第一行relay=1;buzzer=1;//My_DEVBlink(BEEP_PIN,200,200);//上电硬件动作下delay_ms(200);relay=0;buzzer=0;//My_DEVBlink(BEEP_PIN,0,10);LCD_Init();//tft初始化LCD_Clear(Color16_BLACK);//清全屏BACK_COLOR=Color16_BLACK;FRONT_COLOR=Color16_LIGHTBLUE;keySetTime();//进入按键设置时钟如果是有无线通信的情况下该按键设置可以取消MyLCD_Show(1,1,"WiFiinit..");//显示MyLCD_Show(1,2,"PleaseWaitting..");//显示Esp8266_Init_StationAP("AUAISOUT000","");// MyLCD_Show(1,5,"wifiInit..",24);//显示initLcdDisplay();//上电初始化显示内容while(1){scanKeyAnddealKey();//按键扫描及处理if(disFlag==1)//更新显示{disFlag=0;FRONT_COLOR=Color16_LIGHTBLUE;if(rememberTiemSe!=calendar.second)//时间发生了变化更新显示{rememberTiemSe=calendar.second;//记录此刻时间sprintf((char*)dis0,"%04d-%02d-%02d%02d:%02d:%02d%d",calendar.year,calendar.month,calendar.day,calendar.hour,calendar.minute,calendar.second,calendar.week);//年月日周MyLCD_Show(4,1,dis0);//显示 }nowYq=My_ADC_GetGas(ADC1,ADC_Channel_1,1);//读取异常烟雾参数nowTemp=My_DS18B20_GetTemp(PB6);//采集温度displayOfCollectedData();//显示采集到的数据并进行数据对比if(setMode==0)//自动模式异常数据报警{if(abnormalFlag==1)//有异常报警{buzzerFlag=1;relay=1;}else{buzzerFlag=0;relay=0;}//停止报警}if(buzzerFlag)//蜂鸣器报警处理{My_LEDBlink(PA6,BEEP_ON,5,100,300);}//蜂鸣器报警else{My_LEDBlink_Stop(PA6);}sprintf((char*)dis1,"*D%04d%02d%02d%02d%02d%02d",calendar.year,calendar.month,calendar.day,calendar.hour,calendar.minute,calendar.second);//年月日周sprintf(dis1,"T%03dY%03d",(int)nowTemp*10,nowYq);sprintf(dis1,"%st%03dy%03d",KeyIsPressed(KEY_Huoyan)?"F1":"F0",setParaTab[2],setParaTab[1]);if(gpsDealOkFlag==1){sprintf(dis1,"N%09lu",(long)gps_info.location.latitude);sprintf(dis1,"E%09lu",(long)gps_info.location.longitude);}else{sprintf(dis1,"%s","NlinkElink");}sprintf(dis1,"%s%sM%d#",(relay==0)?"R0":"R1",(buzzerFlag==1)?"B1":"B0",(int)setMode);My_ESP8266_SendStrToAll(dis1);//发送数据}My_ESP8266_Process();//处理串口数据}}voidscanKeyAnddealKey(void){u8i;u8disYplace=0;//显示所在行递增变量My_KeyScan();if(KeyIsPress(KEY_4)){if(setMode!=0)setMode=0;//自动模式elsesetMode=1;//手动模式}switch(setMode){case0://自动模式if(KeyIsPress(KEY_1)){setParaCount++;//切换设置当前参数if(setParaCount>=MAX_SET_SIZE){setParaCount=0;//设置当前参数write_FlashBuf();//将设置量写入flash}}if(KeyIsPress(KEY_2)){if(setParaTab[setParaCount]<100)setParaTab[setParaCount]++;}if(KeyIsPress(KEY_3)){if(setParaTab[setParaCount]>0)setParaTab[setParaCount]--;}break;case1://手动模式if(KeyIsPress(KEY_3)){buzzerFlag=!buzzerFlag;}//手动切换状态if(KeyIsPress(KEY_2)){relay=!relay;}//手动切换状态setParaCount=0;//取消设置default:break;}if(HasKeyEvent()||updataDis==1)//有任何按键按下或者需要数据更新否则更新过于频繁浪费时间{if(updataDis==1)write_FlashBuf();//将设置量写入flash可能串口数据有更新updataDis=0;//需要数据更新处理disYplace=ALLPARA_START_Y;FRONT_COLOR=Color16_LIGHTGRAY;for(i=1;i<MAX_SET_SIZE;i++)//显示设置位置及设置参数设置数组第一个数据为空白非设置参数所以从1开始{sprintf(dis0,"%d",setParaTab[i]);MyLCD_Show(20,disYplace,dis0);//显示if(i==setParaCount){MyLCD_Show(19,disYplace++,">");}//对所在设置位置显示>//**Allnotescanbedeletedandmodified**//}}}voidinitLcdDisplay(void)//初始化液晶显示{u8disYplace=0;//显示所在行递增变量LCD_Clear(Color16_BLACK);//清全屏BACK_COLOR=Color16_BLACK;FRONT_COLOR=Color16_LIGHTBLUE;//MyLCD_Show(3,0,"智能安防系统",24,0);//显示LCD_ShowString(LCD_GetPos_X(24,3),LCD_GetPos_Y(24,0),"智能安防系统",24,false);FRONT_COLOR=Color16_LIGHTBLUE;MyLCD_Show(4,2,"参数阈值");//显示 FRONT_COLOR=Color16_LIGHTGRAY;disYplace=ALLPARA_START_Y;//开始依次显示MyLCD_Show(1,disYplace++,"烟气:");//显示MyLCD_Show(1,disYplace++,"温度:");//显示MyLCD_Show(1,disYplace++,"火焰:");//显示MyLCD_Show(1,disYplace++,"继电器状态:");//显示MyLCD_Show(1,disYplace++,"报警状态:");//显示MyLCD_Show(1,disYplace++,"模式:");//显示MyLCD_Show(1,disYplace++,"火灾分析:");//显示MyLCD_Show(1,disYplace++,"所在纬度:");//显示MyLCD_Show(1,disYplace++,"所在经度:");//显示}voiddisplayOfCollectedData(void)//在disFlag中处理{staticu8remRelayFlag=0xff;//记录上一次继电器staticu8remFxFlag=0xff;//记录上一次分析结果staticu8rembuzFlag=0xff;//记录上一次蜂鸣器staticu8rememberMode=0xff;//记录上一次设置状态staticu8gpsTimeSetRtc=0;//将gps时间设置给时钟变量staticu8fenXiFlag=0;//用于统计异常情况u8abnormalCount=0;//用于统计异常情况u8disYplace=0;//显示所在行递增变量chardis_NS[17]="LINKING...";//显示chardis_EW[17]="LINKING...";//显示disYplace=ALLPARA_START_Y;abnormalCount=0;//检测异常参数if(nowYq>setParaTab[1]){FRONT_COLOR=Color16_RED;abnormalCount++;}//切换显示颜色elseFRONT_COLOR=Color16_LIGHTBLUE;//切换显示颜色sprintf(dis0,"%2d",nowYq);MyLCD_Show(7,disYplace++,dis0);//显示if(nowTemp>setParaTab[2]){FRONT_COLOR=Color16_RED;abnormalCount++;}//切换显示颜色elseFRONT_COLOR=Color16_LIGHTBLUE;//切换显示颜色sprintf(dis0,"%4.1f'C",nowTemp);MyLCD_Show(7,disYplace++,dis0);//显示if(KeyIsPressed(KEY_Huoyan)){FRONT_COLOR=Color16_RED;//切换显示颜色MyLCD_Show(7,disYplace++,"Fire");//显示abnormalCount++;}else{FRONT_COLOR=Color16_LIGHTBLUE;//切换显示颜色MyLCD_Show(7,disYplace++,"Normal");//显示}FRONT_COLOR=Color16_LIGHTBLUE;if(remRelayFlag!=relay)//继电器状态发生变化{remRelayFlag=relay;if(relay==0)MyLCD_Show(13,disYplace,"关");//显示elseMyLCD_Show(13,disYplace,"开");//显示}disYplace++;if(rembuzFlag!=buzzerFlag)//状态发生变化{rembuzFlag=buzzerFlag;//记录状态if(buzzerFlag==1){MyLCD_Show(13,disYplace,"开");//显示}else{MyLCD_Show(13,disYplace,"关");//显示}}disYplace++;if(rememberMode!=setMode)//设置模式有变化更新显示{rememberMode=setMode;//记录设置模式if(setMode==0)MyLCD_Show(6,disYplace,"自动");//显示elseif(setMode==1)MyLCD_Show(6,disYplace,"手动");//显示}disYplace++;if(abnormalCount!=0)//有异常状态{abnormalFlag=1;}elseabnormalFlag=0;//所有状况正常if(remFxFlag!=abnormalFlag){remFxFlag=abnormalFlag;//记录设置模式if(abnormalFlag){FRONT_COLOR=Color16_RED;//切换显示颜色MyLCD_Show(10,disYplace,"有火灾");//显示}else{FRONT_COLOR=Color16_LIGHTBLUE;MyLCD_Show(10,disYplace,"正常");//显示}}disYplace++;gpsTimeSetRtc++;//约800ms处理一次if(gpsTimeSetRtc>=4)//gps数据不需要更新那么快//校准时间标志位(隔一段时间校准){gpsTimeSetRtc=0;//清空标志FRONT_COLOR=Color16_LIGHTBLUE;if(gps_info.value==TRUE){//gps_info.value=FALSE;gpsDealOkFlag=1;//gps数据更新成功sprintf(dis_NS,"%f",((double)gps_info.location.latitude)/1000000);MyLCD_Show(11,disYplace++,dis_NS);//显示sprintf(dis_EW,"%f",((double)gps_info.location.longitude)/1000000);MyLCD_Show(11,disYplace++,dis_EW);//显示//sprintf(dis0,"20%02d-%02d-%02d%02d:%02d:%02d",gps_info.date.year,gps_info.date.month,gps_info.date.day,gps_info.time.hour,gps_info.time.minute,gps_info.time.second);//MyLCD_Show(1,disYplace++,dis0);//显示My_RTC_Set(2000+gps_info.date.year,gps_info.date.month,gps_info.date.day,gps_info.time.hour,gps_info.time.minute,gps_info.time.second);//设置实时时钟时间My_RTC_SetCounter(RTC_GetCounter()+8*60*60);//GPS获取的是0时区时间(UTC),+8小时调整为东八区(北京)时间}else{gpsDealOkFlag=0;//gps数据更新不成功MyLCD_Show(11,disYplace++,dis_NS);//显示MyLCD_Show(11,disYplace++,dis_EW);//显示}}}#defineFLASH_SAVE_ADDR0X0800f800voidwrite_FlashBuf(void){My_STMFlash_Write(FLASH_SAVE_ADDR,(u16*)setParaTab,MAX_SET_SIZE);//读取数据}voidread_FlashBuf(void) {My_STMFlash_Read(FLASH_SAVE_ADDR,(u16*)setParaTab,MAX_SET_SIZE);//读取数据}voidinit_FlashBuf(void)//开机初始化保存数据{read_FlashBuf();//读取flash值if(setParaTab[0]!=0xaa)//如果不是重新写入{setParaTab[0]=0xaa;//修改值setParaTab[1]=25;setParaTab[2]=45;//setParaTab[3]=35;//setParaTab[4]=20;//setParaTab[5]=100;//setParaTab[6]=20;delay_ms(5);write_FlashBuf();//读取数据}}#pragmadiag_suppress188#ifdefLCD_2_4#defineMyLCD_ShowSetTime(m,n,p)LCD_ShowString(LCD_GetPos_X(24,m),LCD_GetPos_Y(24,n),p,24,false) #else#defineMyLCD_ShowSetTime(m,n,p)LCD_ShowString(LCD_GetPos_X(12,m),LCD_GetPos_Y(12,n),p,12,false) #endifvoidkeySetTime(void){u8delay=0;//延时跳出u8setTimeFlag=0;//不进行设置时间u8disPlace=0;u16setYear,setMonth,setDay,setHour,setMin,setSec;u8setFlag=0;u8i=0;MyLCD_ShowSetTime(1,2,"SetRtc?");MyLCD_ShowSetTime(1,3,"K1:YesK2:No");delay=100;//延时选择约2swhile(delay){My_KeyScan();//按键扫描if(KeyIsPressed(0)){setTimeFlag=1;//进入时间设置LCD_Clear(Color16_BLACK);//清除液晶屏幕FRONT_COLOR=Color16_WHITE;//设置液晶前景色(画笔颜色)MyLCD
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 无机颜料制造考核试卷
- 乐器声音的数字化处理与优化考核试卷
- 木楼梯的声学性能改善措施考核试卷
- 劳动法律法规解读考核试卷
- 固体废物处理与环保科技创新考核试卷
- 体育会展新媒体运营与粉丝经济考核试卷
- 体育经纪公司体育场馆运营与管理策略考核试卷
- 房屋改建施工合同范本
- 简易土建劳务合同范本
- 俱乐部合同范本模板
- 2025-2030年中国数字告示(数字标牌)行业需求现状及发展趋势分析报告
- 矛盾纠纷排查知识讲座
- 汽车制动系统课件
- 统编版七年级语文下册《第16课有为有不为》教案
- 【上海】第一次月考卷01【20~21章】
- 2025年东营科技职业学院高职单招语文2018-2024历年参考题库频考点含答案解析
- 《新媒体广告》课件 第4章 从技术到场景:新媒体广告的创新应用
- 2025年烟台工程职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析
- 2025年上半年中煤科工集团商业保理限公司招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年南京机电职业技术学院高职单招语文2018-2024历年参考题库频考点含答案解析
- 物业管理消防维保流程优化建议
评论
0/150
提交评论