《红外线防盗报警器系统设计 (2).doc》由会员分享,可在线阅读,更多相关《红外线防盗报警器系统设计 (2).doc(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 学号12132305302 毕业设计(论文)题目: 红外线防盗报警器的设计作 者 罗 柳 岸 届 别 2012届 院 别 信息与通信工程学院 专 业 通信工程 指导教师 刘 靖 职 称 教 授 完成时间 2017年5月5日 湖南理工学院毕业设计(论文)摘 要随着信息化时代进程的加快,人们对于智能防盗的要求越来越高,一般的防盗措施已经不能满足日常需求,高性能的防盗报警器受到了广大民众的喜爱。本论文讲述了智能化光电防盗报警的研究意义,设计并实现了针对家庭、办公室、仓库、实验室等重要场合的红外防盗报警系统。系统由硬件设计和软件设计两部分构成。硬件系统由红外发射电路、红外接收电路、单片机控制电路、声
2、光报警电路、按键设置模块电路等部分组成。当有人进入监控区域时,热释电红外线传感器会探测到人体发出的红外辐射并转变成为微弱的电压信号,经放大后输入到单片机,启动声光报警系统。软件系统主要使用C语言编写和调试控制程序,给出了相关的程序流程图。该报警系统误报率低,使用安全可靠,成本低廉,具有很强的使用价值。关键词:单片机;热释电红外传感器; 报警电路 ;智能防盗AbstractWith the continuous development and progress of society, people have more and more attention to security issues o
3、n the property, now life also have a wide range of security products, some can protect the personal safety of others can protect the property safety, the design is according to the show set a microcontroller based intelligent residential burglar alarm, can the house property safety.Intelligent anti-
4、theft alarm system of this design is mainly realized in the house when no one can set dont open, the house is in a monitoring state, when a sensor detects when someone enters the thief into the house, the control system will control the alarm device for alarm. Through searching related literature su
5、mmary ideas in the design process design, the design is divided into two parts: hardware design and software design in the design: in hardware design is mainly based on the design task of the hardware diagram of the whole system design, hardware circuit diagram is designed according to the diagram o
6、f each module, including the MCU module circuit, pyroelectric sensor module circuit, alarm circuit and key module setting module circuit etc. The system mainly uses the C language technology to design and debug the software control program. After the test of hardware and software, the physical circu
7、it board is designed.This design has the important use value in the life, and the design cost is low, the volume is small, may use flexibly.Key words: single chip microcomputer; pyroelectric infrared sensor; alarm circuit; intelligent anti-theft目录摘要IAbstractII第1章 绪论11.1 研究背景11.2 防盗报警系统在国内外的发展11.3 本文
8、的主要内容21.4 论文的组织结构21.5本章小结3第2章 系统整体方案设计42.1 系统功能42.2 系统总体结构设计42.3 单元模块的选择52.3.1 单片机模块的选择52.3.2 人体传感器模块的选择52.3.3 显示模块62.3.4 键盘模块设计方案62.3.5 报警模块62.5本章小结7第3章 系统硬件电路设计83.1 单片机最小系统电路设计83.1.1 STC89C52单片机介绍83.1.2电源电路的设计93.1.3晶振电路的设计93.1.4复位电路的设计103.1.5 单片机的最小系统电路103.2 LED指示灯电路与设计113.3热释电传感器电路123.4显示模块电路的设计1
9、33.5 按键电路设计133.6 报警电路设计143.7本章小结15第4章 系统软件程序设计164.1 程序编程语言的选择164.2 keil编程软件的介绍164.3 主程序194.4中断服务程序264.5 报警服务程序274.6 本章小结28第5章 系统的调试与仿真295.1系统的调试295.3程序下载305.3仿真分析305.4 本章小结33总结35致谢36参考文献37附录1 原理图39附录2 PCB图40IV第1章 绪论1.1 研究背景目前中国的经济越发展越快,老百姓的生活质量越来越高,家里边的贵重物品也就越来越多,为了保障家财产安全等不受到威胁,人们越来越注意家庭的防盗工作。经常在家里
10、安装一些防盗报警装置,来保证家里面的防盗安全工作。 按照当今住房条件的改善和住房环境的发展,我们可以明显的看出来,现在城市的楼房在逐渐的网高层的发展趋势上进行发展,这样也就会到值在一个小区中住着好几千户的人家1。而且由于城市中人们的生活的规律大部分都是早出晚归。很难熟悉自己家的周围的邻居。还有就是小区有很多人买了房子是自己不住的,是用来出租的,这样就会导致小区的人员的流动性很大。在这种环境下也就需要我们增加安全防盗意识,保证家庭和人身的财产安全不受影响。因此研究一款基于智能家庭防盗报警器对于居民的人身和财产安全来说具有重要的意义2。根据家庭住房发展的趋势,可以明显的感觉到现代人们的住房需求主要
11、朝群体花园式住宅区发展,一个住宅区有几幢甚至几十幢,可是目前市场上所出现的家庭电子防盗报警系统都是用在单独的住宅单元,不方便进行统一的管理,而且也不能适应现代住宅区的发展现状3,所以非常有必要对家庭防盗报警系统进行提高和完善,以满足当代发展的需要。本次设计是用红外传感器作为监测,用蜂鸣器作为报警途径来满足现代住宅防盗的要求。本次设计是在原有的家庭防盗报警系统上做的改进。既可以满足单一的家庭防盗,也可以满足大规模的社区防盗报警,防盗系统的工作安全性高,可靠性好,不会出现错的报警4。系统通过单片机作为微处理器,通过相关的接口电路可以实现与计算机想连接,这样通过计算机就可以实时的对系统进行控制和设计
12、系统的工作模式等等。为用户提供了方便管理的途径。1.2 防盗报警系统在国内外的发展北美是最早出现报警系统的,早到在上世纪初就出现了报警系统的雏形。那是北美的大部分街上都有报警呼救箱,当出现紧急情况需要呼救时,就可以使用呼救箱发出声响提示,附近的警察就会过来提供帮助。同时呼救箱也连接到了附近的警局,可以让稍微远点的警察也能收到呼救信息前来帮助。随后随着通信的不断发展,电报公司出现了,他们和警局合作为警局提供远程服务,这样使求救或者报警信号能传到更远的地方5。但是这种用电报的方式也不长久,因为很难普及,这就给电话的出现提供了很好的基础。而此后自由于科技的迅速发使得电话被普及到千家万户,从而使得通过
13、这种电话报警灯方式得到了前所未有的发展。在上世纪90年代,人们开始意识到周边防范的重要性,用各种方法来进行周边防范,最多使用的就是围墙、铁栅栏等屏障,如果没有条件进行大范围的防范,也会对房屋等建筑物行进小的防范,如安装防盗窗户,铁门等等。他们在防护区域使用多种不同的探测原理的探测器来形成多道防线,起初这种探测器很容易被其他障碍物挡住,随着科技发展,防遮挡功能的探测器相继问世,这大大加快了入侵探测器技术的发展6。最近这些年来国内的安全监控技术也在逐渐的快速发展过程中,现在已经和国际上先进国家的监控技术进行了接轨。在最近这些年来,在计算机技术、自动化技术、通信技术、互联网技术的快速发展下,安全防盗
14、系统也有了进一步的进步,有些安全防盗产品甚至上已经做到了智能化的产品,可以实现对视频信息的监控、音频信息的天空、图像信息的监控等7。而且还有些产品可以很自己的门禁系统进行良好的融合。这些技术可以说都是国际上先进水平的。因此智能安防系统也在随着人们的需求在快速的发展中。1.3 本文的主要内容本课题主要应用红外传感器检测技术设计了一款基于的智能防盗报警系统,本设计可以应用到家庭防盗报警中,具有很高的使用价值。主要是实现在家里面没有人的时候可以把设别开启,使家里处于一个监控的状态,当有小偷进入家门的时候传感器会检测到有人进入,控制系统会控制报警设备进行报警提示。1.4 论文的组织结构 根据本次的设计
15、需求,本论文在段落结构设计上分为如下几个章节:第1章:是绪论部分。绪论部分主要是一个简单的介绍章节,在这一章中主要介绍了本课题研究的意义和背景,以及本课题设计的目的,课题的主要研究内容等。第2章:是本课题的主要的方案和框图设计章节,在这一章中主要是根据课题要实现的功能,通过方案的对比和分析设计了系统的整体的硬件框图,并对硬件框图进行了简单的介绍。第3章:是本次设计的硬件电路设计章节,在这一章中主要是对系统的硬件电路进行了设计,包括单片机电路、人体信号检测电路、显示电路等,详细的对每一个模块电路的功能进行了描述。第4章:是本次设计的软件程序设计章节,在这一章中主要介绍了编程的C语言的选择、编程环
16、境的使用,以及相关程序流程图的设计,并根据程序流程图设计了C语言程序。第5章:是本课题的整机电路原理及验证分析章节,在这一章中分对系统的整体原理图进行了分析,并通过单片机仿真软件protues对系统的功能进行了仿真验证。第6章:是论文的结论部分。在结论部分总结了课题在设计过程中所遇到的困难,以及可课题最后所实现的功能,对课题设计过程中存在的问题提出了新的方法以及后续的展望等。1.5本章小结在这本章中主要是根据系统的实现的任务要求,查阅相关的资料分析和总结了课题研究的背景和意义,通过对当系统的调查和研究,总结了本课题防盗报警控制系统的主要的特点和优点。之后对本课题的主要的工作进行了进一步的论述。
17、以及在课题设计的过程中所使用的研究的方法进行了说明。最后划分了论文的整体的写作思路和论文的整体的组织结构。40第2章 系统整体方案设计2.1 系统功能本设计的智能防盗报警系统,以单片机为控制核心,使用红外传感器检测技术实现人体信号的检测和采集,并具有报警电路实现报警的功能。在使用过本设备的时候,只需要把设备的电源连接上,设备的液晶显示屏幕上会显示相关的信息,按下系统的布防按键,系统会进行布防倒计时20秒,在这20秒内使用者需要离开传感器的检测范围,时间到了后液晶显示屏幕上会显示“yibufang”字样,此时说明报警设备已经开始工作,这时当有人在进入传感器检测区域后会,热释电传感器会输出信号给单
18、片机,进行报警。2.2 系统总体结构设计本次设计的智能防盗器,根据设计功能和任务要求,以及经过查阅相关的文献,在硬件设计上设计了系统的整体的硬件框图,如下图2-1所示8。主要由如下几部分组成,单片机控制部分、红外热释电传感器检测部分、LCD液晶显示部分、按键控制部分、报警部分等及部分组成。图2-1 系统整体框图(1)单片机部分,单片机是系统的控制核心器件,系统的控制程序需要写入到单片机中,通过单片机来协调其它部分电路的工作;(2)晶振部分电路,晶振电路的主要的作用是给单片机提供可靠的工作时钟信号,晶振的支持单片机不能工作。(3)复位电路,复位电路也是单片机工作不可缺少的组成部分,复位电路可以再
19、单片机上电的瞬间提供给单片机一个复位信号,是单片机的程序可以重头开始执行。(4)红外热释电传感器部分,热释电传感器是一款专门用于检测人体心很高的传感器,可以检测传感器范围内是否有人存在。(5)液晶显示部分,液晶显示电路的主要的是作为人机交换界面,用于显示报警器的工作状态,是用户可以很直观的看到报警器的工作情况。(6)按键电路部分,按键电路的主要的作用是用户可以通过按键来设定相关的信息。(7)报警模块部分,进行蜂鸣器报警使用,当布防的区域内有人进入的时候会进行报警。2.3 单元模块的选择2.3.1 单片机模块的选择对于一个智能系统来说单片机是整个系统的灵魂,所有的数据都要通过它来进行处理,对于本
20、次设计选择热释电传感器和液晶的读/写操作都是通过它来进行控制的。所以对这个模块的选择必须慎之又慎,这里也是选择了两种方案进行对比。方案一 :STC89C52特点:该单片机是8位的单片机,包括8位中央处理单元(CPU)、8KB闪存程序、随机存储器是512字节,512字节数据闪存存储器组成的微控制器。工作范围频率范围为040MHZ9。方案二:STM32F103特点:该单片机是32位的单片机,该片的内核是ARM Cortex-M3的,它具有小体积、低功耗、散热快、DSP指令和单精度浮点运算单元的特点,给予ARMv7结构。高精度ADC/DAC单元。运算处理很快且带有独立的浮点运算单元10。通过上述两个
21、方案的对比我最终选用STC89C52单片机作为本系统的核心器件。因为我们要运行的系统的实时性非常高,而且里面的浮点运算也非常多同时AD转换芯片要求的精度也很高,所以我们选择STC89C52作为我们的主控单片机。2.3.2 人体传感器模块的选择方案一:摄像头检测采用摄像头技术进行人体信号的检测,摄像头技术可以进行人体的图像的拍摄和录像等功能,可以非常直观的看到现场的情况。但是摄像头的成本很贵每一个好点的摄像头都都需要成百或者上千。而且摄像头对处理器的要求非常的高。方案二:红外热释电传感器检测热释电传感器是一款基于红外信号的的专门用于检测人体信号的传感器,当红外传感器的范围内有人进入的时候传感器会
22、输出信号。专用的红外传感器模块有HC-SR501模块,模块的价格便、体积小、精度高。经过方案一和方案二比较,以及结合本次设计的要求本次选择方案二作为系统的传感器检测方案。2.3.3 显示模块方案一:数码管显示电路数码管是一种半导体发光器件,它由7个发光二极管以8字形封装到一起,并引出他们的公共电极以及各个笔划的引脚以高低电平的方式控制其显示数据。数码管显示电路具有使用简单,造价低廉等优点,在显示较少数据时多使用数码管来进行显示。方案二:LCD1602液晶显示电路LCD1602是指显示的内容为162的液晶显示器,也就是可以显示两行,每行16个字符的液晶模块11。它内部的字符存储器存储了160个不
23、同的字符图形,分别有数字、大小写英文字符、常用符号以及日文假名,每个字符都有特定的代码,使用时只需通过程序将代码显示出来,就可以在屏幕上显示出该代码所代表的字符。根据以上两种方案的对比,最终选择了LCD1602作为本设计的显示模块,这是由于LCD1602显示方式更加的灵活,并且体积更小,显示数据也更多。相对于本次设计所需显示的众多参数LCD1602更能担当此重任。2.3.4 键盘模块设计方案按键模块的主要的功能室提供一个人机交互的接口,用户可以通过按键输入一些设置信息,或者通过按键实现对防盗报警器功能等,本次在进行按键电路的设计上主要使用了如下的两种方案:方案一:采用独立按键作为系统的设置按键
24、,独立按键是常用的一种按键,独立按键的电路设计简单,控制程序编写的清晰,一个I/O端口只能控制一个按键,通过I/O端口的状态就可以实现对按键是否有输入进行判断,缺点是如果系统使用的按键比较多就会占用很多的I/O端口,在此种情况下会给设计上带来困难12。方案二:还有一种按键是一种矩阵键盘按键,矩阵键盘按键是一种按键的组合。常用的按键有3*3按键、4*4按键。使用这样形式的按键可以组合出M*N中状态,而且使用的单片机的I/O端口非常的少。可以节约单片机的I/O资源。缺点是矩阵键盘的成本较高。通过方案一和方案二的介绍以及结合本次毕业设计的需求,我们选择了方案一作为本次设计的按键模块方案。2.3.5
25、报警模块报警电路的主要的作用是为系统提供一个报警的提示,本次设计的基于STC89C52单片机的智能防盜報警系统中使用蜂鸣器作为报警设备。当检测到布防的传感器的范围内具有任意进入的时候会通过蜂鸣器进行报警提示。2.5本章小结本章主要是课题的整体方案论证章节,在这一章中首先根据任务要求,通过查阅文献资料提出了设计方案,并对方案进行了分析和论证,最后确定了方案。之后对整个系统的工作的原理进行了详细的论述,这也对后面的设计提供了原理性的铺垫。最后根据系统的整体的设计框图详细论述了系统的整体组成部分,以及每部分具有的重要的作用。第3章 系统硬件电路设计我设计红外防盗报警系统是由中央控制器、人体热释电红外
26、传感器、液晶显示模块、警铃电路部分组成。控制器采用单片机STC89C52,检测部分采用红外感应芯片BISS0001,警铃电路设计。概况起来可分信号采集端,数据处理显示,警铃电路三部分。本文从硬件和软件两方面介绍了防盗报警系统,对硬件原理图和程序图作了简洁的描述。3.1 单片机最小系统电路设计3.1.1 STC89C52单片机介绍根据课题的要求在选择系统的控制器的时候选用了STC89C52单片机,STC89C52单片机是一款51系列内核的单片机,在单片机的设计过程中使用了CMOS的制造工艺,单片机的体积非常的小,内部集成了性能优良的存储器,单片机的输入输出引脚和指令系统都是相互兼容的。STC89
27、C52单片机是一款性能优越的8位单片机,单片机的生产厂家是深圳宏晶科技公司,单片机的内核是传统的51内核,这种单片机无论外形、引脚、功能还是指令都能兼容于传统51单片机13。而此单片机性能上又远高于传统的51单片机,而单片机的处理速度是一般51单片机的8-12倍,所以执行起来非常的快。STC89C52单片机工作的时候性能非常的稳定,功耗也非常的低,STC89C52 单片机有很多种封装,有DIP形式封装和LQFP形式的封装,本次使用DIP40封装,单片机具有4个I/O引脚,内部FLASH的大小为8K,RAM的大小为512字节,同时单片机具有2个内部定时器,定时器T0和定时器T1,具有4个外部中断
28、,2个UART串口,的那片机的工作电压为3.8V-5.5V14。下载程序通过串口下载。引脚图如下图3-1所示。图3-1STC89C52单片机引脚图3.1.2电源电路的设计电源是系统正常工作不可缺少的组成部分之一,本次设计中使用的芯片,包括单片机,热释电度传感器,LCD液晶显示器都是使用的5V供电,因此设计了5V直流电路的接口,如下图3-2所示,Switch为电源的接口,为系统提供5V直流电。 图3-2 系统电源电路3.1.3晶振电路的设计晶振电路主要由晶振器件和两个电容器件一块组成,上电后会提供单片机时钟信号来保证单片机工作。不同型号的单片机晶振电路是不同的,一些单片机具有内部时钟电路所以不用
29、外部的时钟电路,而本次使用的单片机型号为STC89C52单片机需要在外部设计时钟电路,外部时钟电路主要由一个12MHz的晶振和两个22PF的电容组成,单片机的XTAL1/XTAL2引脚是作为时钟信号的输入引脚使用,在单片机的引脚图上对应的是单片机的Pin19/Pin18引脚15。本次设计的晶振电路如下图3-3所示,选择晶振为11.0592MHz,电容的容量值为22pF。图3-3 STC89C52单片机时钟电路3.1.4复位电路的设计单片机的复位电路常用的有两种形式一种是上电自动复位电路,还有一种是手动复位电路,本次为了在调试程序的时候方便设计了手动复位电路。该复位电路主要由电阻、电容和一个复位
30、按键组成。在单片机程序正常运行的过程中,当按下复位复位电路后,可以使单片机重新开始执行。这就类似于电脑的重新开机。单片机程序进入死循环的时候通过复位电路可以使单片机重新开始执行,本次使用的单片机型号为STC89C52单片机单片机是高电平复位,单片机的复位引脚为REST引脚,是单片机的第九个引脚16。本次设计的复位电路如下图3-4所示。电阻R1的阻值为10K、电容C2的容值为10uF、K1为复位按键。图3-4 STC89C52单片机复位电路3.1.5 单片机的最小系统电路本次设计的军队安全防盗报警器主要是通过STC89C52单片机作为为控制器来实现的。STC89C52是一种带8K字节Flash存
31、储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位单片机。内部的具有可以反复擦出1000多次的只读存储器。这款单片机采用ATMEL公司的特殊的储器制造技术制造,完全兼容工业中的MCS-51输出管脚相兼容和指令集。STC的STC89C52是一款高效的微控制器,这是因为它将闪烁存储器和多功能8位CPU组合在了一个个芯片中。STC89C52单片机的发展给嵌入式控制系统提供了一种灵活性高且价廉的方案。单片机最小系统主要由单片机芯片自身、晶振电路、复位电路、还有电源电路组成,在设计的过程中只要有这三种电路存在
32、单片机就能够简单的运行起来,可以进行程序的下载17。如果想要实现自己需要实现的功能只要在单片机最小系统的电路的基础上进行扩展就可以实现。最小的系统原理图如下图3-5所示。图3-5 STC89C52单片机最小系统3.2 LED指示灯电路与设计本次设计的工作指示灯电路包括两个部分,工作指示部分和监控状态显示部分。因为条件受限所以本次设计的系统的监控器部分是由LED灯来指示的,LED灯的亮灭分别表示监控器的开和关。这两个电路都是由电阻和发光二极管相串联,然后与单片机STC89C52的I/0口相连接, D1与单片机P3.3相连接,作指示电路。D2与单片机P3.2相连接,作监控器电路。当指示灯D1亮的时
33、候说明系统是出于布防状态,此时P3.3口为高电平。在布防状态当传感器检测到报警信号后会通过蜂鸣器进行报警,同时也会点亮D2指示灯,此时P3.2口为高电平。指示灯知识通过单片机的I/O引脚控制的如下图3-6所示。图3-6 指示灯电路原理图3.3热释电传感器电路热释电传感器的主要的作用是可以检测人体信号,作为本次设计的主要的传感器检测器件,本次采用了集成的热释电传感器模块实现,本次设计使用了HC-SR501型号的热释电模块,这款模块的价格便宜、体积小、检测灵敏度可以根据需求调节18。非常适合安装到家里面门窗上起到防盗检测的目的。这红外传感器的核心芯片是BISS0001。传感器的实物图如下图3-7所
34、示。图3-7 传感器实物图根据传感器的输出特点和热释电传感器的使用说明书,我们知道,传感器实物模块具有三个引脚一个是电源引脚VCC,一个是地线引脚GND,还有一个是传感器的信号输出引脚OUT。为此我们专门设计了传感器和单片机相连接的电源如下图3-8所示。图中使用了三极管9013作为一个电平的变换。图3-8 热释电传感器接口电路3.4显示模块电路的设计LCD1602是指显示的内容为162的液晶显示器,也就是可以显示两行,每行16个字符的液晶模块。它内部的字符存储器存储了160个不同的字符图形,分别有数字、大小写英文字符、常用符号以及日文假名,每个字符都有特定的代码,使用时只需通过程序将代码显示出
35、来,就可以在屏幕上显示出该代码所代表的字符。显示电路如下图所示,通过显示电路可以显示防盗报警器的工作状态等信息。图3-9液晶显示电路3.5 按键电路设计按键控制电路有很多种形式,设计中经常使用的有独立式按键或者矩阵式按键。独立式按键是通过单片机的I/O端口的状态来判断按键是否按下,这种方式控制按键非常的简单,电路简单,程序也简单,缺点是使用这种方式控制按键一个I/O端口只能控制一个按键,这样如果按键多就会导致单片机的I/O端口不够用。矩阵式按键在控制上可以设计成M*N形式的按键,按键分为行驱动和列驱动,例如一个4*4 按键只需要4个单片机的I/O端口控制行,4个单片机的I/O端口控制列就可以实
36、现一个16个按键功能的键盘单片机,可以节省很多的单片机I/O端口资源,缺点是矩阵键盘电路复杂而且编写控制程序员也比较负载。本次根据设计的要求,由于单片机的I/O端口充足,而且按键也比较少因此使用独立按键的方式进行设计19。按键电路如下图3-10所示。总共设置了2个按键,分别为:KY1为取消布防按键、KY2布防按键。图3-10键盘电路3.6 报警电路设计报警电路的作用是起到一个很好的提醒的作用,当系统处于布防状态的时候当有人进入布防区域后会进行报警提示。通过单片机的IO端口驱动PNP形式的三极管,实现三极管的道统和关闭从而实现对蜂鸣报警电路的主要的功能是当系统出于布防的状态的时候当有人进入该区域
37、的时候电路板上的蜂鸣器会进行发生报警,报警电路主要是通过单片机驱动蜂鸣器实现的。蜂鸣器电路电路如图3-11所示。蜂鸣器电路部分采用的是PNP三极管,三极管的基极与单片机的P1.2相连接,发射极端直接接地,集电极端与蜂鸣器相串联后接上5V电压,当系统检测到有人入侵时,P1.2置于低电平,此时PNP管导通,蜂鸣器导通,蜂鸣器开始鸣叫,指示有人入侵。当入侵者离开之后,P1.2置于高电平,此时PNP不导通,蜂鸣器两端电压相等,蜂鸣器不鸣叫。图3-11报警电路图3.7本章小结本章主要是系统的整体的硬件电路设计章节,这一章主要是在第二章的系统的整体框图上进行的设计。首先介绍了系统所使用的单片机的型号,以及
38、单片机的特点和功能。之后设计了单片机相关的电路,包括晶振电路、复位电路,单片机最小系统电路、热释电传感器检测电路、报警电路、液晶显示电路、电源电路等。第4章 系统软件程序设计4.1 程序编程语言的选择本次在课题的设计过程中使用到了单片机,就需要对单片机进行程序的编写,从而实现控制功能,在编写单片机程序的过程中需要选择合适的编程语言,当今对单片机编程的语言有很多中,常用的有汇编语言、C语言、C+语言等。单片机设计过程中通常有两种编程语言可以供设计者使用,一种是汇编语言,汇编语言也是最古老的一种语言,在单片机这款芯片研发出来的时候使用的都是汇编语言,汇编语言的特点是按照程序指令一条一条的执行,程序
39、执行起来速度非常的快,对单片机的内存占用的也非常的少。在很多的精密场合都需要开发者使用汇编语言,比如航天、地铁等领域中单片机的开发都是使用的汇编语言20。但是汇编语言也有一个缺点就是汇编语言的程序可读性不好,而且不便于程序的移植,对于很多初学单片机的人员也会造成很多的困难。因此在现在很多的研发工作中都不在使用汇编语言。随着芯片种类和处理器技术的不断的进步,又产生了一种单片机编程语言,C语言,C语言的产生可以说对于单片机的程序开发有了很重要的意义。C语言的设计思路是按照模块化的设计思想进行设计,C语言是以函数为单位来实现,函数之间可以相互的调用和组合。C语言含有一个最重要的特点就是C语言的程序可
40、读性好,程序可以很方便的进行移植,对于很多初学单片机的开发人员来说,如果在普通的场合选择C语言进行单片机程序的开发可以提高工作效率,而且C语言已经是当今发展的一个潮流21。4.2 keil编程软件的介绍Keil软件是一款程序编译软件,该软件是的设计公司是美国的Software公司,每年keil软件都会有新的版本的推出,功能也是越来越强大。Keil软件是当今最流行的编程和调试软件,在keil中可以进行很多公司的芯片的程序的编写,对于51系列单片机来说keil软件是学习51单片机编程不可缺少的软件之一,软件可以兼容标准的汇编指令和C语言指令。而且软件开公司在设计keil软件的时候就已经集成了很多公
41、司常用的单片机的头文件,这样可以使使用者在建立程序工程的时候只要选择好使用的单片机的型号22,在调用该型号的头文件就可以轻松的实现编程,使用这种方法可以大大的缩减程序的开发周期提高工作效率。现在keil软件的版本也是越来越多,从最初的keil2、到keil3现在已经发展到keil4版本和keil5版本。Keil5版本主要是对于ARM编程使用的比较对多,而且软件的界面和keil4相比也有所不同。在51系列单片机编程中使用的最多的还是keil4软件,本次设计使用的就是keil4软件进行的程序的编写。使用keil4软件进行程序调试的时候可以使用两种方式,一种方式是软件模拟的方式,使用这种方式可以再用
42、户没有单片机开发板的境况下就可以进行,通过查看软件中单片机相关的寄存器和工作变量就可以初步的判断单片机的工作状态。还有一种方式是使用在线调试的方式进行,使用这种方式需要用户具有一个开发板和一个仿真器,通过仿真器和开发板链接,在把仿真器连接到电脑上,没在keil软件中设置仿真器参数,就可以实现程序的在线调试,在调试的过程中可以单步调试或者全速运行,也可以在程序中相关的位置打断点来测试单片机的工作状态23。图4-1所示就是keil4软件的编写程序的窗口图。图4-1 KEIL3软件窗口图打开keil软件后如果要进行程序的编写,需要先建立一个新的工程,学会如何使用keil软件建立工程也是初学者编程的第
43、一步,也是最重要的一步。第一步,打开keil软件会显示如上图所示,在上图中点击project菜单下面的NewProject会弹出如下图4-2所示的界面,在下面的界面中可以根据我们选用的单片机的厂家来选择我们使用的单片机的型号。图4-2 KEIL3软件窗口图第二步,找到本次使用的单片机的型号后,需要使用鼠标点击该型号,是该型号的单片机处于选中状态,如下图4-3所示。图4-3 KEIL3软件窗口图第三步,选完单片机的型号后,需要我们在工程中建立C语言程序文件,并将文件保存在新建的程序工程下面,界面如图4-4所示。图4-4 KEIL3软件窗口图最后一步,因为编程使用的是C语言进行编程,因此需要建立以
44、.C命名的程序文件,此时说明是使用C语言编程,如果使用汇编语言编程则需要建立以.A命名的程序文件。将建立好的程序文件添加到工程中,之后进行保存后就可以在程序文件中编写程序和调试程序了,如下图4-5所示。图4-5 KEIL3软件窗口图4.3 主程序主程序是系统的程序的整体的设计原理框图,所有的程序都应该按照汉族程序的设计流程设计。如图4-6是本次设计的防盗报警系统的主程序流程图。当系统上电后会进行相关器件的初始化工作,包括单片机的初始化,传感器初始化等。之后会进行检测传感器是否有检测信号,如果有信号说明存在报警的情况,会进行报警。中断程序系统初始化声光报警结束检测外部有无信号输入声光报警是否持续
45、10秒开始启动声光报警电路开始报警是否还有检测信号等待下次(报警结束YNNYYN图4-1主程序流程图void main() init1602(); Timer0_init(); init();/初始化AT24C02/下面是初始化串口 TMOD=0x21;/设置定时器1为工作方式2TH1=0xfd;TL1=0xfd;TR1=1;REN=1;SM0=0;SM1=1;EA=1;ES=1;/在液晶上显示table的数据 for(temp=0;temp4;temp+) write_data(tabletemp); delay(20); write_com(0x80+0x40); /在液晶上显示table2的数据 for(temp=0;temp5;temp+) write_data(table2temp); delay(20); if(flag=0) if(keynum10)&(i11) telnumi=keynum+0x30; write_com(0x80+0x45+i); write_data(keynum+0x30); delay(20); i+; if(flag=1) if(keynum10)&(i11) telnumi=keynum+0x30; write_com(0x80+0x45+i); write_data(keynum+0x30);