说明书 - 图文

更新时间:2024-05-16 08:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

学号20100602050140

密级 公开

兰州城市学院本科毕业论文

单片机应用系统中的报警电路分析与设计

学 院 名 称:培黎工程技术学院 专 业 名 称:电子信息科学与技术 学 生 姓 名:张建强 指 导 教 师:石蕊

二○一四年五月

I

BACHELOR'S DEGREE THESIS OF LANZHOU CITY UNIVERSITY

The Design and Simulation of

College:School of Bailie Engineering & Technology Subject:Electronic Information Science and Technology Name: Zhang Jian Qiang Directed by: Shi Rui

May 2014

II

郑 重 声 明

本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。本学位论文的知识产权归属于培养单位。

本人签名: 日期:

3

摘 要

基于社会安全保障的需要,电子报警这门综合技术的正在不断的发展。与此同时,红外线技术已成为先进技术的重要组成部分,由于红外线是不可见光,因此用它进行红外探测监控,具有良好的隐蔽性,白天和黑夜都可以使用,而且其抗干扰能力强。防盗报警系统利用单片机控制技术,自动探测发生在布防去内的侵入行为,产生警报信号,一旦发生突发事件,就会向人们发出报警提示,从而让人及时采取应对措施。奔系统采用了热释电红外传感器,它的制作简单、成本低、安装比较方便,而且防盗性能比较稳定,抗干扰能力强、灵敏度高、安全可靠。这种防盗器安装隐蔽,不易被盗贼发现,同时它的信号经过单片机系统处理后方便和PC机通信,便于多用户统一管理。本设计包括硬件和软件两个部分。硬件部分包括单片机控制电路、红外探头电路、驱动执行报警电路、LED控制电路等部分组成。处理器采用52系列单片机AT89C52,整个系统是在系统软件的控制下工作的,因此在防盗、警戒等安保装置中得到了广泛的应用。此外,在电子防盗、人体探测等领域中,热释电红外探测器也以其价格低廉、技术性能稳定等特点而受到广大用户和专业人士的欢迎。 关键字:单片机:红外传感器:数据采集:报警电路

4

Abstract

Based on the needs of the social security, electronic alarm is continuous development of the comprehensive technology. Infrared technology,

meanwhile, has become an important part of advanced technology, due to the infrared light is not visible light, so use it for infrared detection monitoring, good concealment, day and night, can be used and its anti-interference ability is strong. Security alarm system using single-chip microcomputer control

technology, automatic detection occurs within the protection to the intrusion behavior, an alarm signal, in case of emergency, will send out alarm prompt to people, so that people respond in a timely manner. The running of the system used the pyroelectric infrared sensor, its simple, low cost, installation is more convenient, and anti-theft performance is stable, strong anti-interference ability, high sensitivity, safe and reliable. The alarm installed concealment, is not easy to be thieves, found that at the same time its signal after dealing with the single chip microcomputer system is convenient and PC communication, facilitate unified management among multiple users. This design includes two parts of hardware and software. Hardware part includes single chip microcomputer control circuit, infrared sensor circuit, drive to perform alarm circuit, LED

control circuit and other parts. With 52 series single chip processor AT89C52, the whole system is under the control of the system software work, so in

security, alert security devices such as widely used. In addition, in the field of electronic guard against theft, the human body detection, pyroelectric infrared detector also by its price is low, the technical characteristics of stable performance and welcomed by the masses of users and professionals. Key words: single chip microcomputer: infrared sensor, data acquisition, alarm circuit

5

目 录

绪 论............................................................................................................................................. 6 第一章 设计任务与要求 ................................................................................................................. 8 第二章 基础知识介绍 ................................................................................................................... 9 2.1 热释电红外传感器简单介 ....................................................................................................... 9 2.2 PIR的原理特性 ...................................................................................................................... 9 2.3 AT89C52单片机简述 .............................................................................................................. 10

2.3.1 AT89C52单片机的结构 .............................................................................................. 10 2.3.2 AT89C52管脚说明 ...................................................................................................... 10 2.4 常用的报警电路 ..................................................................................................................... 12

2.4.1闪光报警 ...................................................................................................................... 12 2.4.2鸣音报警 ...................................................................................................................... 13 2.4.3语音报警 ...................................................................................................................... 13 第三章 方案设计 ........................................................................................................................... 14 3.1 总体设计思路 ......................................................................................................................... 14 3.2硬件电路设计 .......................................................................................................................... 14

3.2.1红外感应部分 .............................................................................................................. 15

3.2.1.1 电源模块 ......................................................................................................... 15 3.2.1.2 热释电传感器 ................................................................................................. 15 3.2.1.3 菲涅耳透镜 ..................................................................................................... 16 3.2.1.4 BISS0001芯片简介 ........................................................................................ 17 3.2.1.5 信号采集处理模块 ....................................................................................... 19

3.3单片机部分 .............................................................................................................................. 20

3.3.1 STC89C52单片机简介 ................................................................................................ 20 3.3.2 单片机最小系统 ......................................................................................................... 20

3.3.3按键控制电路 ...................................................................................................... 22 3.3.4指示灯和报警电路 .............................................................................................. 23

3.4软件的程序实现 ...................................................................................................................... 24

3.4.1主程序工作流程图 ...................................................................................................... 24 3.5 报警判断程序 ..................................................................................................................... 26 3.6 程序编写与调试 ................................................................................................................... 27

3.6.1 Keil编译器软件简介 .............................................................................................. 27 3.6.2 使用Keil软件建立一个工程 ................................................................................. 28 3.6.3 使用Debug进行调试 ............................................................................................... 31 3.7 硬件调试及调试中遇到的问题 ........................................................................................... 33 第四章 总 结 ............................................................................................................................... 34 致 谢........................................................................................................................................... 35 参考文献......................................................................................................................................... 36 附件一:总体原理图设计 ............................................................................................................. 37 附件二:实物图 ............................................................................................................................. 38 附件三:程序源代码 ..................................................................................................................... 39 附件四:器件清单 ......................................................................................................................... 43

6

绪 论

随着社会的不断进步和科学技术、经济的不断发展,人们生活水平得到很大的提高,对私有财产的保护意识在不断的增强,因而对防盗措施提出了新的要求。本设计及时为了满足现代住宅防盗的需要而设计的家庭式电子防盗系统。就目前市面上装备主要有压力触发式防盗报警器、开关电子防盗报警器和压力遮光触发式防盗报警器等各种报警器,但这几种比较常见的报警器都存在一些缺点。而本设计中所使用的红外线是不可见光,有很强的隐蔽性和保密性,因此在防盗、警戒等安保装置中得到了广泛的应用。这种热释电红外传感器能以非接触形式检测出人体辐射的红外线,并将其转换为电压信号,同时,热释电红外传感器既可用于防盗报警装置,也可用于制动控制、接近开关、遥测等领域。红外线报警器分主动式和被动式两种。

主动式红外线警报器,是报警器主动发出红外线,红外线碰到障碍物,就会反弹回来,被警报器的探头接收。如果探头监测到,红外线是静止不动的,也就是不断发出红外线又不断反弹的,那么报警器就不会报警。当有会动的物体触犯了这根看不见的红外线的时候,探头就会检测到有异常,就会报警。

被动式报警器少了一项功能,就是发射红外线。物理学上告诉我们,当物体的温度高于OK的时候,就会发出红外线,换句话说任何物体都能发出红外线。而其后的原理,被动式报警器和主动式报警器是一样的。

红外线报警器对温度敏感,温度越高的物体辐射处的红外线越强,当感应到环境中存在高出背景强度的辐射时,就触发报警。

7

第一章 设计任务与要求

1、该设计包括硬件和软件设计两个部分。模块划分为数据采集、键盘控制、报警等模块子函数

2、本红外线防盗报警系统由热释电红外传感器、报警器、单片机控制电路、LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。终端由中央处理器、输入模块、通信模块、输出模块、功能设定模块等部分组成。

3、系统可实现功能。当人员外出时,可把报警系统设置在外出布防状态,探测器工作起来,当有人闯入时,热释电红外传感器将探测到动作,设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,经放大电路、比较电路送至门限开关,打开门限阀门送出TTL电平至AT89C52单片机,经单片机处理运算后驱动报警电路使警号发声。

4、红外线具有隐蔽性,在露天防护的地方设计一束红外线可以方便的检测到是否有人出入。此类装置设计的要点:其一是能有效判断是否有人员进入;其二是尽可能大的增加防护范围。当然,系统工作的稳定性和可靠性也是追求的重要指标。

8

第二章 基础知识介绍

2.1 热释电红外传感器简单介

热释电红外传感器是80年代发展起来的一种新型高灵敏探测元件。是一种能检测人体发射分红外线而输出电信号的传感器,它能组成防入侵报警器或各种自动化节能装置。它能以非接触形式检测出人体辐射分红外线能量的变化,并将其转化成电压信号输出。将这个电压信号加以放大,便可驱动各种控制电路。如图2-1示为热释电红外传感器的内部电路框图。

光学滤镜 场效应管 D S 传感器 偏置电阻 EMI电容 封装内部电路 GND

图2-1热释电红外传感器的内部电路框图

2.2 PIR的原理特性

热释电红外传感器主要是由一种高热电系数制成的探测元件,在每个探测器呢装入一个或两个探测元件,并将两个探测元件以反极性串联,以控制由于自身温度升高而产生的干扰。由探测元件将探测并接受到的红外线辐射转变成微弱的电压信号,经装在探测头内的场效应管放大后向外输出。

人体辐射的红外线中心波长为9-10um,而探测元件的波长灵敏度在

9

0.2-20um范围内几乎稳定2.在传感器顶端开设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围在7-10um,正好适合于人体红外辐射的探测,而对于其他波长的红外线由滤光片予以吸收,这样使形成了一个专门用作探测人体辐射的红外线传感器。一旦人侵入探测区域内,人体红外辐射通过部分镜面聚焦,并被热释电接收,但是两片热释电单元接收到的热量不同,热释电也不同不能抵消,经信号处理输出电压信号。

2.3 AT89C52单片机简述 2.3.1 AT89C52单片机的结构

AT89C52单片机是美国Atmel公司生产低压、高性能COMS8位单片机,片内含4kbytes的可反复擦写的只读程序存储器(EPROM)和128bytes的随机存取数据存储器(RAM),器件采用Atmel公司的高密度、非易失性存取技术,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flsah存储单元,功能强大。AT89C52单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。

AT89C52单片机的基础组成功能方块图,由图可见,在这一块芯片上,集成了一台微型计算机的主要组成部分,其中包括CPU、存储器、可编程I/O口、定时器、计数器、串行接口,各部分通过内部中总线相连。 2.3.2 AT89C52管脚说明

ATMEL公司的AT89C52是一种高效微控制器。采用40引脚双列直插封装形式。AT89C52单片机是高性能单片机,因为受引脚数目的限制,所以有少数引脚具有第二功能。如图2-3示AT89C52的管脚图。

VCC:供电电压 GND:接地

P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高电阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FALSH编程时,P0口作为源码输

10

入口,当FALSH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接受输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电压时,将输出电流,这是由于内部上拉的缘故。在FALSH编程和校验时,P1口作为第八位地址接受。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写1时,其管脚被内部上拉电阻拉高,而且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或者16位地址外部数据存书签进行存取时,P2口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入1时后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流。

P3口也可作为AT89C52的一些特殊功能口,如下表所示: P3口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INT0(外部中断0) P3.3 INT1(外部中断1) P3.4 T0(计时器0外部输入) P3.5 T1(计时器1外部输入) P3.6 WR(外部数据储存器写选通) P3.7 RD(外部数据储存器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许端的输出电平用于锁存地址的地址字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以

11

不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只在执行MOVX,MOVC指令是ALE才起作用。

PSEN:外部程序存储器的选通信端。在由外部程序存储器取值期间,每个机器周期两处PSEN有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不会出现。

,EA/VP:当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH)不管是否有内部程序存储器,注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:反向振荡放大器的输出,如采用外部时钟源驱动器件,应不接。

图2-3 AT89C52管脚图

2.4 常用的报警电路

2.4.1闪光报警

闪光报警时最简单,也是最常用的一种报警方式,单片机应用系统中的闪光报警就是在控制指示灯的程序中加入定时程序,按一定的时间间隔来交替点亮与熄灭指示灯。闪光报警在硬件连接上也是非常简单,通常利用AT89C52的I/O口直接驱动发光二极管实现。

电路中的发光二极管一般反向连接,其正端接正5V,负端通过限流电阻与I/O口线相连。限流电阻的阻值的选择要同时考虑发光二极管的驱动电流及I/O口的负载能力,一般可选择330或360殴,如使某发光二极管点亮,则只需相应的输出口输出低电平。

12

2.4.2鸣音报警

鸣音报警的方式有两种,一种是单频音报警,另一种是音乐声报警。 1、单频音报警

实现单频音报警的接口电路比较简单,其发音元件通常采用电压蜂鸣器。当在蜂鸣器两引脚上加3-15V直流工作电压,就能产生3KHZ左右的蜂鸣震荡影响。压电式蜂鸣器结构简单、耗电少,更适合在单片机系统中应用。

在实际应用传统中,经常讲闪电报警和单频音报警结合起来使用,以便更好地引起操作人员的注意

2、音乐声报警

单频音报警电路,简单实用,已能满足音响报警的一般需求,但是音调单调,而且采用压电蜂鸣器音元件,音量较小且不可调整,下述的音乐声报警电路,与单片机系统连接,也是方便易行,而且报警的音响又优美动听。

2.4.3语音报警

在单片机控制系统中,要实现语音报警功能,首先在存储器中要有语言的数据块,然后根据系统测量结果,把在语音采集系统中获得的语语音数据可控制,可重组的实时恢复,从而实现控制系统状态的实时语音报警或者紧急状态的语音报警功能。

目前迅速发展的DSP技术已在数据采集、通信及多媒体等领域中得到广泛的应用。

13

第三章 方案设计

3.1 总体设计思路

本设计包括硬件和软件设计两个部分。模块划分为数据采集、键盘控制、报警等子模块电路结构可划分为:热释电红外传感器、报警器、单片机控制电路、LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。

就此设计的核心模块来说,单片机就是设计的中心单元,所以此系统也是单片机应用系统的一种应用。单片机应用系统也是有硬件和软件组成的。硬件包括单片机、输入/输出设备、以及外围应用电路等组成的系统,软件是各种工作程序的总称。单片机应用系统的研制过程包括总体设计、硬件设计、软件设计等几个阶段。

从设计的要求来分析该设计须包含如下结构:热释电红外传感器、报警电路、单片机、复位电路及相关的控制管理软件组成;

处理器采用52系列单片机AT89C52,整个系统是在系统软件控制下工作的。设置在监测点上的红外线探头将人体辐射的红外线光谱变换成电信号,经放大电路、比较电路送至门限开关,打开门限阀门送出TTL电平至AT89C52单片机。在单片机内,经软件查询、识别判断等环节实时发出入侵报警状态的控制信号。驱动电路经控制信号放大并推动声光报警设备完成相应的动作。当报警延迟10s时间后自动解除,也可人工手动解除报警信号,当警情消除后复位电路使系统复位,或者是在声光报警10s钟后有定时器实现自动消除报警。

3.2硬件电路设计

本设计包括硬件和软件设计两个部分。

14

从设计的要求来分析该设计须包含如下结构:红外感应部分、STC89C52单片机、报警系统三大部分。电路总原理图如图3-1所示:

电源 复位电路 按键控制 电源开关 LED指示灯 STC89 C52 单片机 报警电路

图3-1 总体设计框图

处理器采用51系列单片机STC89C52。整个系统是在系统软件控制下工作的。设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,送出TTL 电平至STC89C52单片机。在单片机内,经软件查询、识别判决等环节实时发出入侵报警状态控制信号。驱动蜂鸣器及报警指示灯报警。 3.2.1红外感应部分 3.2.1.1 电源模块

本系统电压为4.5v左右,直接接3个1.5V的直流干电池提供电源,然后用导线连接电源接口模块。 3.2.1.2 热释电传感器

热释电红外传感器(简称PIR)是80年代发展起来的一种新型高灵敏度探测元件。它能以非接触形式检测出人体辐射的红外线能量的变化,并将其转换成电压信号输出。将这个电压信号加以放大,便可驱动各种控制电路,如作电源开关控制、防盗防火报警、自动览测等,人体辐射的红外线中心波长为9~10--um,而探测元件的波长灵敏度在0.2~20--um范围内几乎稳定不变。在传感器顶端开

15

设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围为7~10--um,正好适合于人体红外辐射的探测,而对其它波长的红外线由滤光片予以吸收,这样便形成了一种专门用作探测人体辐射的红外线传感器,本传感器是整个系统的关键,只有本传感器才能感应到人体红外线。如图3-2所示。

图3-2热释感应传感器 3.2.1.3 菲涅耳透镜

菲涅耳透镜片相当于热释感应传感器的“眼镜”,它和人的眼睛一样的作用,配用得当与否直接影响到使用的功效,配用不当产生错误的动作,致使用户或者开发者对其失去信心。它的作用是有效的将探测到空间的红外线集中到传感器上,菲涅耳透镜根据性能要求不同,具有不同的焦距(感应距离),从而产生不同的监控视场,视场越多,控制越严密。如图3-3所示为菲涅耳透镜模型图。

图3-3 菲涅耳透镜

16

3.2.1.4 BISS0001芯片简介

BISS0001是一款传感信号处理集成电路,只要热释感应器把红外线接收到信号传输到BISS0001里进行信号处理,它本身静态电流极小,工作电压在3V—5V之间,当工作电压为5V时输出的驱动电流为10MA。配以热释电红外传感器和少量外围元器件即可构成被动式热释电红外传感器,广泛用于安防,自控等一些领域,它是有16个管脚组成的一种集成块。如图3-4所示为BISS000集成芯片的内部框图,管脚功能说明如表1所示。

图3-4 BISS0001内部框图 引 名脚 称 1 A I/O 功能说明 可重复触发和不可重复触发选择端。当A为“1”时,允许重复触发;反之,不可重复触发 控制信号输出端。由VS的上跳前沿触发,使Vo输出从低电平跳变2 VO O 到高电平时视为有效触发。在输出延迟时间Tx之外和无VS的上跳变时,Vo保持低电平状态。 3 4 5

I RR1 -- RC1 -- RC2 -- 输出延迟时间Tx的调节端 输出延迟时间Tx的调节端 触发封锁时间Ti的调节端 17

6 7 8 9 RR2 -- VSS -- VRF I VC I -- 触发封锁时间Ti的调节端 工作电源负端,一般接0V 参考电压及复位输入端。通常接VCC,当接“0”时可使定时器复位 触发禁止端。当Vc>VR时允许触发(VR≈0.2VDD) 运算放大器偏置电流设置端,经RB接VSS端,RB取值为1M左右。 工作电源正端,范围为3~5V 第二级运算放大器的输出端 第二级运算放大器的反相输入端 第一级运算放大器的同相输入端 第一级运算放大器的反相输入端 第一级运算放大器的输出端 10 IB 11 VCC -- 12 2OUT O 13 2IN- I 14 1IN+ I 15 1IN- I 16 1OUT O 表1:管脚说明图

由图可见BISS0001 由运算放大器、电压比较器和状态控制器、延迟时间定时器、封锁时间定时器即参考电压等构成的数模混合专用集成电路。可广泛应用于多种传感器和延时控制器。首先,根据实际需要,利用运算放大器OP1组成传感信号预处理电路,将信号放大。然后耦合给运算放大器OP2,再进行第二级放大,同时将直流电位抬高为VM(≈0.5VDD)后,将输出信号V2送到由比较器COP1和COP2组成的双向鉴幅器,检出有效触发信号Vs。由于VH≈0.7VDD、VL≈0.3VDD,所以,当VDD=5V时,可有效抑制±1V的噪声干扰,提高系统的可靠性。 COP3是一个条件比较器。当输入电压Vc>VR时,COP3输出为高电平,进入延时周期。 当A端接“0”电平时,在Tx时间内任何V2的变化都被忽略,直至Tx时间结束,即所谓不可重复触发工作方式。当Tx时间结束时,Vo下跳回低电平,同时启动封锁时间定时器而进入封锁周期Ti。在Ti时间内,任何V2的变化都不能使Vo跳变为有效状态(高电平),可有效抑制负载切换过程中产生的各种干扰。而可重复触发工作方式下的波形在Vc=“0”、A=“0”期间,信号Vs不能触发Vo为有效状态。在Vc=“1”、A=“1”时,Vs可重复触发Vo为有效状态,并可促使Vo在Tx周期内一直保持有效状态。在Tx时间内,只要Vs发生上跳变,则Vo将从Vs上跳变时刻起继续延长一个Tx周期;若Vs保持为“1”状态,则Vo一直保持有效状态;若Vs保持为“0”

18

状态,则在Tx周期结束后Vo恢复为无效状态,并且,同样在封锁时间Ti时间内,任何Vs的变化都不能触发Vo为有效状态。 3.2.1.5 信号采集处理模块

图3-5信号处理模块

图3-6实物图

本电路是将人体辐射的红外线转变为电信号。热释红外感应2脚输入到前置放大器OP1进行放大,然后由C4耦合给运算放大器OP2进行第二级放大。再经过电压比较器COP1和COP2构成双向鉴幅器处理后,检出有效触发信号去启动延时时间定时器输出信号在经过R3进入单片机部分进行处理。延时周期可通过

19

R12来调节输出,在延时时间内只要Vs发生上跳变,Vo就会从Vs上跳变时刻起继续延长一个周期,而电路中的电容为了能够更好的控制了芯片内的定时器,若Vs一直保持为高电平,这样就可以通过P10传输到单片机内进行下一步处理。而根据不同的距离要求来调节R13,最大可以调节到7米左右。图中BISS0001中1脚用跳线连连接住一个接高电平后,在延时时间段内如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才将高电平变为低电平,本电路设计就是可触发方式。

3.3单片机部分

3.3.1 STC89C52单片机简介

STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。这一模块以单片机为中心把程序代码烧进去然后外围接上复位电路、振荡电路、键盘控制、LED显示电路、报警电路等子模块。 3.3.2 单片机最小系统

要使单片机工作起来最基本的电路构成为单片机最小系统如图3-7所示。

20

图3-7信号处理模块

单片机最小系统包括单片机、复位电路、时钟电路构成。

STC89C52 单片机的工作电压范围:4V-5.5V,所以通常给单片机外界5V直流电源。连接方式为单片机中的40脚VCC接正极5V,而20脚VSS接电源地端。

复位电路就是确定单片机的工作起始状态,完成单片机的启动过程。单片机接通电源时产生复位信号,完成单片机启动确定单片机起始工作状态。当单片机系统在运行中,受到外界环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。一般有上电自动复位和外部按键手动复位,单片机在时钟电路工作以后,在RESET端持续给出2个机器周期的高电平时就可以完成复位操作。本设计采用的是外部手动按键复位电路,需要接上上拉电阻来提高输出高电平的值。

时钟电路好比单片机的心脏,它控制着单片机的工作节奏。时钟电路就是振荡电路,是向单片机提供一个正弦波信号作为基准,决定单片机的执行速度。XTAL1和XTAL2分别为反向放大器的输入和输出,该反向放大器可以配置为片内振荡器。如采用外部时钟源驱动器件,XTAL2应不接。因为一个机器周期含有6个状态周期,而每个状态周期为2个振荡周期,所以一个机器周期共有12个振荡周期,如果外接石英晶体振荡器的振荡频率为12MHZ,一个振荡周期为1/12us。

21

3.3.3按键控制电路

本电路的设计就是为了控制电路中布防和紧急状态下不同的工作形式,当按下布防按键后, 30秒后进入监控状态,当有人靠近时,热释红外感应到信号,传回给单片机,单片机马上进行报警。当遇到特殊紧急情况时,可按下紧急报警键,蜂鸣器进行报警。如图3-8所示。

22

开始 布防按键按下 30秒倒计时开始 倒计时结束 N 检测到有无 信号 Y 紧急按键按下 Y 蜂鸣器报警,发光二级管闪烁 蜂鸣器报警 结束 图3-8按键部分 3.3.4指示灯和报警电路

在单片机的I/O 里会输出高低电平,在P20、P21和P22分别接上LED指示灯而P23接上蜂鸣器而蜂鸣器外接个8550的三极管起到开关作用,当三极管达到饱和状态下就驱动了蜂鸣器工作了 。

23

图3-9指示灯和报警电路

3.4软件的程序实现

3.4.1主程序工作流程图

按上述工作原理和硬件结构分析可知系统主程序工作流程图如下图所示:

24

开始 布防按键按下 30秒倒计时开始 倒计时结束 N 检测到有无 信号 Y 紧急按键按下 Y 蜂鸣器报警,发光二级管闪烁 蜂鸣器报警 结束

图3-10主程序工作流程图

25

3.5 报警判断程序

来的脉冲信号后,表示有人闯入监控区,从而经过单片机内部程序处理后,驱动声光报警电路开始报警,持续报警,然后程序开始循环工作,

/******************红外报警处理**********************/ void hongwai_dis() { }

if(flag_alarm == 1) //报警 {

red = ~red;

//红灯报警

beep = ~beep; //蜂鸣器报警

}

if(flag_bufang_en == 1) //准备开始布防 {

green = ~green; //绿灯闪

}

if(flag_bufang == 1) //确认布防 { }

green = 0; //如果延时布防成功 绿灯长亮 if(hw == 1) { }

flag_alarm = 1;

//红外有输出

26

3.6 程序编写与调试

3.6.1 Keil编译器软件简介

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用。

图15 C51工具包整体结构图

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

27

3.6.2 使用Keil软件建立一个工程

Keil是目前进行51单片机开发最常用的编译软件。关于Keil的使用,有很多的资料介绍,这里只介绍其整个编译过程,在最短时间内开始使用Easy 51DP-2开发板。对于Keil更详细的介绍,可以参考一些专门书籍资料。在Keil里,每一个完整的程序,都是以一个工程的形式建立的。一个工程里可以有一个或多个*.c文件和*.h文件,但只可以有一个main()函数。一般的做法是将包含main()函数的C文件加入到工程中,其他文件以#include头文件的形式加到这个C文件里。这样,在编译的时候,其他的文件会被自动的导入到工程里来。

打开Keil软件后,出现(图16)所示界面。当然,如果Keil在上次关闭时有打开的工程,再一次打开时它会自动加载上一次的工程文件。

图16 Keil软件主界面

首先点击Project->New Project?(Project->Open Project?为打开一个已经存在的工程),如图17所示。

28

图17 Keil软件打开新工程界面

点开后,在出现的对话框中选择工程存在路径,单击“保存”后,出现(如图18所示)界面。在此界面上选择电路板上所用的单片机型号:Atmel STC89C52(或者是AT89S52,视开发板上具体型号而定),单击“确定”。

图18 选择电路板上所用的单片机型号

设置完成后,软件会提示“是否将8051上电初始化程序添加入工程?”如图19所示,这个一般选择“否”。(关于STARTUP.A51的相关内容可查阅相应资料)

图19 是否将8051上电初始化程序添加入工程

29

这样,就建立了一个空的51工程。

接下来的事,就是在这个工程里面加入自己的程序代码。点击

,或者

File->New,便建立了一个空的文本框。现在,就可以开始在里面输入你的代码了。

保存时注意:如果是用C语言写的程序,则将文本保存成*.c,如果是用汇编写的程序,则将文本存成*.asm。

到目前为步,我们已经建立了一个工程,也写了一个程序代码。但现在还不能开始编译。因为还没有将程序代码添加到工程里面去。

下一步就是将写完的程序添加到工程里面,如图20所示,在左边Project Workspace里的Source Group 1上右击,选择Add Files to Group ’Source Group 1’。在打开的对话框中,选择刚存的文件路径和对应的扩展名。这样,程序就添加进了这个工程。

图20 添加文件到工程中

下一步,就开始编译刚输入进去的代码。点击工具栏中的Keil会打出下面的提示: Build target 'Target 1' assembling led.asm... linking...

按钮。接着,

30

Program Size: data=8.0 xdata=0 code=100 \

其中“\”说明现在的工程编译通过,0个错误和0个警告。建立工程的时候,默认是不生成HEX文件的,得在编译做如下设置:单击

,或者在Project Workspace里Target 1上右击,选择“Options

for Target ‘Target 1’”。出现如图21所示对话框,选择“Output”按图示,将箭头所指的多选框勾上,点“确定”。 现在再点击

重新编译,系统提示:“creating hex file from \”。

便会在工程所在文件夹里生成HEX文件。

图21 生成HEX文件

3.6.3 使用Debug进行调试

Keil有很强大的调试功能,可以显示C程序的反汇编代码、可以计算代码运行的时间、可以显示程序中某一变量的值??能用好这个调试工具对编写单片机程序会有很大的帮助。同样的,在这里,只对Debug进行简单应用介绍,更详细的使用方法可以参看相关书籍资料。

31

图22 调试前设置窗口

首先,单击

,弹出如图22所示对话框,在Target页面上设置对应的晶

,进入调试界面(如图23所示)。

振频率。其他不用作修改。设置完成后,单击

图23 Keil调试界面

点击

中对应的工具按钮则可以开始调试。

32

另外,“View”下的三个工具在调试中会经常用到如.图24所示,“Disassembly Window”显示C文件的反汇编程序;“Watch & Call Stack Window”可以显示程序中某一变量的值;“Memory Window”可以显示内存中某一地址的值。

图24 三个常用的调试工具

3.7 硬件调试及调试中遇到的问题

第一步为目测,单片机应用系统电路全部手工焊接在洞洞板上,因此对每一个焊点都要进行仔细的检查。检查它是否有虚焊、是否有毛剌等。

第二步为万用表测试,先用万用表复核目测中认为可疑的连线或接点,查看它们的通断状态是否与设计规定相符,再检查各种电源线与地线之间是否有短路现象。

第三步为加电检查。当系统加电时,首先检查所有插座或器件引脚的电源端是否有符合要求的电压值,接地端电压值是否接近零,接固定电平的引脚端是否电平正确。

第四步是联机检查。

在对硬件电路调试过程中,还遇到了不少问题,第一次把所有的元件都焊上去后,都准备调试了,才发现正负电源的插针离得太近了,不容易接电源,本不该犯的错误,这些都是由于自己的粗心大意造成的,所以说,做任何事情都必需经过“三思而后行”,来不得半点的马虎,否则浪费了时间和精力

33

第四章 总 结

本设计研究了一种基于单片机技术的无线智能防盗报警器。该防盗报警器通过以AT89C52单片机为工作处理器核心,外接热释电红外传感器,它是一种新颖的被动式红外探测器件,能够以非解除方式探测出人体发出的红外辐射,并将其转化为相应的电信号输出,同时能有效的抑制人体辐射波长以外的红外线与可见光的干扰,平时传感器输出低电平,当有人在探测区范围内移动时输出低电平变为高电平,此高电平输入单片机,作为单片机的外部触发信号处理,经单片机内部软件程序处理后,单片机输出控制信号,驱动声光报警电路开始报警。该报警器的最大特点就是使用户能够操作简单、易懂、灵活;且安装方便、智能性高、误报率低。随着现代人安全意识的增强以及科学技术的快速发展,相信报警器必将在更广阔的的领域得到更深层次的应用。

34

致 谢

在本次毕业设计中,我得到了指导老师石蕊老师的热心指导。自始至终关心督促毕业设计进程和进度。帮助解决毕业设计中遇到的许多问题。还不断向我传授分析问题和解决问题的办法,并指出了正确的努力方向,使我在毕设过程中少走很多弯路。同时,他还提供给我们专门的各种设备及场所,使我在调试过程中能够有充足的时间。在这里非常感谢石蕊老师的指导和帮助,并致以诚挚的谢意!

同时,身边的同学给了我许多的帮助。在此,我向身边关心我的同学致以诚挚的谢意!另外,系里的领导和老师也给了我们必要的指导,我也向系和年级的领导们表示衷心的感谢!最后感谢学院对我这几年的培养。

35

参考文献

[1]胡萍.串口通信的红外报警器的研制[J].计算机与现代化,2010(10):15-16.

[2]唐德琴.电子温度测量仪器技术发展战略研究[J].电子科学技术,2009,27(1):1-8

[3]李行善.基于串口组件的体系结构[J].电子串口与仪器学报,2010(08):15-16.

[4]姜道连等.用于AT89C51设计红外报警器的设计与制作[J].国外电子元器件,2010(12):31-34.

[5]冯国进.嵌入式Linux驱动程序设计从入f-J至U精通D田.北京:清华大学出版社,2008

[6]蔡文斋. 专业级串口调试器设计. 现代电子技术, 2010. [7]熊如贵.串口通信感应装置[J].电子制作,2009(6):23-31.

[8] 时德钢等.基于串口通信的红外报警器的研究[J].计算机测量与控制,2009,10(7):480-482.

36

附件一:总体原理图设计

37

附件二:实物图

38

附件三:程序源代码

#include //调用单片机头文件

#define uchar unsigned char //无符号字符型 宏定义 变量范围0~255 #define uint unsigned int //无符号整型 宏定义 变量范围0~65535

#define key_io P1 uchar key_can;

// 红外热释电平时为0 有输出为1

sbit beep = P2^3; //蜂鸣器定义

sbit red = P2^2; //红色发光二极管定义 sbit green = P2^1; //绿色发光二极管定义 sbit yellow = P2^0; //黄色发光二极管定义 sbit hw = P1^3; //红外热释传感器定义 bit flag_300ms = 0;

/****************独立按键处理函数************************/ void key() { static uchar key_new = 0,key_old = 0,key_value = 0; if(key_new == 0) //按键松开 { if((key_io & 0x07) == 0x07) key_value ++; else key_value = 0; if(key_value >= 5) //按键松开松手检测 { key_value = 0; key_new = 1; //按键松开后进入等待按键状态 } } else { if((key_io & 0x07) != 0x07) //按键按下 key_value ++; else key_value =0; if(key_value >= 5) //按键按下消抖 {

39

key_value = 0; key_new = 0; //按键松开后进入等待松开按键状态 } } key_can = 20; if((key_new == 0) && (key_old == 1)) { switch(key_io & 0x07) { case 0x06: key_can = 1; break; //得到按键值 case 0x05: key_can = 2; break; //得到按键值 case 0x03: key_can = 3; break; //得到按键值 } } key_old = key_new; }

/*************定时器0初始化程序***************/ void time_init() { EA = 1; //开总中断 TMOD = 0X01; //定时器0工作方式1 ET0 = 1; //开定时器0中断 TR0 = 1; //允许定时器0定时 }

uchar flag_alarm ; //报警标志位 uchar flag_bufang ; //布防标志位 uchar flag_bufang_en ; //布防标志位使能 uint flag_value; //用做定时器的变量

/******************红外报警处理**********************/ void hongwai_dis() { if(flag_alarm == 1) //报警 { red = ~red; //红灯报警 beep = ~beep; //蜂鸣器报警 } if(flag_bufang_en == 1) //准备开始布防 { green = ~green; //绿灯闪 }

40

本文来源:https://www.bwwdw.com/article/j7k7.html

Top