宁德师范学院 单片机课程设计报告
设计题目: 红外声光报警系统
系 别: 物理与电气工程系 专 业: 电气工程及其自动化 学 号: B2011052113 姓 名: 张 小 评
指导老师: 吴 必 瑞 日 期: 2013/6/15
目 录
一、设计要求........................................................ 1 二、设计方案........................................................ 1 三、具体电路设计.................................................... 1
(一)系统总体框图 .............................................. 1 (二)AT89C51芯片介绍........................................... 1 (三)各个模块电路设计 .......................................... 3 (四)整体电路图 ................................................ 3 四、软件设计........................................................ 4
(一)总程序功能设计 ............................................ 4 (二)总程序流程图 .............................................. 4 (三)红外报警器的测试与分析 .................................... 5 五、设计总结........................................................ 6 参考文献:.......................................................... 6 附录(程序)........................................................ 7
1
一、设计要求
1.本红外线防盗报警系统由热释电红外传感器、报警器、单片机控制电路、LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。终端由中央处理器、输入模块、输出模块、通信模块、功能设定模块等部分组成。
2.系统可实现功能:当人员外出时,可把报警系统设置在外出布防状态,探测器工作起来,当有人闯入时,热释电红外传感器将探测到动作,设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,经放大电路、比较电路送至门限开关,打开门限阀门送出TTL 电平至AT89C51单片机,经单片机处理运算后驱动执行报警电路使警号发声。
3.红外线具有隐蔽性,在露天防护的地方设计一束红外线可以方便地检测到是否有人出入。此类装置设计的要点:其一是能有效判断是否有人员进入;其二是尽可能大地增加防护范围。当然,系统工作的稳定性和可靠性也是追求的重要指标。至于报警可采用声光信号。
二、设计方案
选用单片机作为系统的核心部件,实现控制与处理的功能。单片机具有资源丰富、速度快、编程容易等优点。利用单片机内部的随机存储器(RAM)和只读存储器(ROM)及其引脚资源,外接LED灯,扬声器,键盘等实现数据的处理传输和显示功能,具有较好的灵活性,能很好地实现设计指标。
处理器采用51系列单片机AT89C51。整个系统是在系统软件控制下工作的。当红外检测装置检测到有人时,信号经放大电路和非门将相应的电平送至单片机的P1.3端口,在单片机内,经软件查询、识别判决等环节实时发出入侵报警状态控制信号,控制声光报警设备完成相应动作。当报警被触发后,如果触发信号一直维持,则可人工手动解除报警信号;若是触发后返回原来状态,则在报警一段时间后自动解除。同时,当警情触发或消除后可用复位电路使系统复位。另外,在一直维持报警时,若发现为意外触发,可以按下按键使P3.2产生控制信号,触发中断来消除报警,恢复正常工作状态。该红外报警系统可以适用于家庭及一般机构,起到防盗报警的效果。
三、具体电路设计
(一)系统总体框图
系统框图如下图1所示,各模块设计如下:
1.单片机的P1.3口接检测电路,用于实现报警触发信号的检测。
2.单片机的P1.0口以及P3.0口接LED灯,用于显示系统当前工作状态。 3.单片机的P3.1口接蜂鸣器报警电路,可以发出声响,起到报警作用。 4.单片机的P3.2口接按键,用于触发中断,起到控制报警电路的作用。 (二)AT89C51芯片介绍
1.AT89C51的管脚图如图2所示 2.管脚说明
VCC:这个管脚是用来给单片机供电的,接的是+5V电源 。 GND:这个管脚是单片机的接地端口。
RST:这个管脚是复位端口,当这个管脚两个周期以上的高电平时,就可以
1
使单片机复位,也可以当备用电源。
AT89C51 振荡电路 复位电路 按键中断电路 LED状态显示电路 LED状态显示电路 检测电路 单片机蜂鸣器报警电路 图1 系统总体框图
/EA:这个端口是控制单片机取指的。当它的电平为低时,它只从片外程序存储器取指;当它是高电平的时候,它从片内取指,不过当超过片内时,它就从片外取指。如果单片机无片内存储器的话,那么这个端口就应该始终接低电平。
/PSEN:当这个端口的电平为低时,就可以用单片机外部的存储器上进行读的操作。
ALE:可以当外部时钟脉冲使用,也可以用来扩展系统。
P0:这个端口比较特殊,它作为I/O口使用时,要外接上拉电阻,不然的话无法拉高输出电平。当它作为地址/数据总线使用时,它是一个双向口,我们不必外接上拉电阻。
P1:它只能作为I/O口使用,是一个标准的双向口。
P2:这个端口和P0和P1这两个端口相似,但又不一样。它可以作为I/O口使用,也可以作为高8位的地址线A8到A15输出口使用。
XTAL1,XTAL2:这两个端口是用来设定单片机的时钟信号的。作为外部时钟时,用于外接时钟信号;当作为内部时钟时,常见的接法是接两个电容和一个晶振。
图2 AT89C51芯片管脚说明图
2
(三)各个模块电路设计
1.时钟电路
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。
因为一个机器周期含有6个状态周期,而每个状态周期为2个振荡周期,所以一个机器周期共有12个振荡周期,如果外接石英晶体振荡器的振荡频率为12MHZ,一个振荡周期为1/12us,故而一个机器周期为1us。
2.复位电路
复位方法一般有上电自动复位和外部按键手动复位,单片机在时钟电路工作以后,在RESET端持续给出2个机器周期的高电平时就可以完成复位操作。例如使用晶振频率为12MHz时,则复位信号持续时间应不小于2us。本设计采用的是外部手动按键复位电路。
3.信号检测电路
采用光敏电阻TORCH代替红外检测装置,在光强度增加时,经过放大电路,P1.3为低电平,P1.3口红灯亮并伴随着警报声响。
4.LED灯电路
LED灯采用灌电流方式连接。系统正常工作时,P1.0口的绿灯(D1)亮;产生报警时,P3.0口的红灯(D2)亮。
5.声音报警电路
用一个BUZZER和三极管、电阻接到单片机的TXD引脚上,构成声音报警电路。
6.按键电路
按键电路接了上拉电阻。在按键按下时,P3.2为高电平,使中断触发,报警消除,电路恢复正常工作状态。 (四)整体电路图
C133PFU1X1CRYSTAL18XTAL219XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617C2C433PF91NFRSTR81k293031PSENALEEAR9470R11003D1U2:BLED-GREEN41D2LED-REDU2:A274LS04R31kQ12N171174LS0412345678R5220P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R71kBUZ1R2R45k1kBUZZERR6100Q2PN2369LDR1TORCH_LDR 图3 红外报警器电路图
3
四、软件设计
(一)总程序功能设计
当单片机检测到外部传感器送来的脉冲信号后,表示有人闯入监控区,从而经过单片机内部程序处理后,驱动声光报警电路开始报警,蜂鸣器持续发声。检测是否还有触发信号在保持,若保持,则继续鸣叫;否则停止鸣叫,恢复正常工作。若有按键按下,则产生中断信号,消除报警,蜂鸣器停止鸣叫,恢复正常工作。
(二)总程序流程图
开始 系统初始化 检测外部有 无信号输入 N Y 启动声光报警电路开始报警 是否有按键按下,触发中 Y 声光报警结束 N Y 是否还有检测信号等待下次报警 N 结束
图4 主程序工作流程图
4
中断源发出中断申请 关中断、保护现场 INTO端有输入信号关闭报警 恢复现场、开中断 中断返回 图5 中断服务程序流程图
本主程序实现的功能是:当单片机检测到外部热释电传感器送来的脉冲信号后,表示有人闯入监控区,从而经过单片机内部程序处理后,驱动声光报警电路开始报警,按键按下后停止报警,然后程序开始循环工作,检测是否还有下次触发信号,等待报警从而使报警器进入连续工作状态。同时,利用中断方式可以用手工按键停止的声光报警的作用。手工按键停止报警中断服务程序工作流程图,如下图5所示。
(三)红外报警器的测试与分析
1.红外报警器的测试
上电后初始化,系统正常工作,绿灯亮,蜂鸣器不叫。如图6所示。
C133PFU1X1CRYSTAL18XTAL219XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617C2C433PF91NFRSTR81k293031PSENALEEAR9470R11003D1U2:BLED-GREEN41D2LED-REDU2:A274LS04R31kQ12N171174LS0412345678R5220P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R71kBUZ1R2R45k1kBUZZERR6100Q2PN2369LDR1TORCH_LDR 图6
5
系统检测到有人闯入,即P1.3为低电平,开始报警,红灯亮,蜂鸣器鸣叫。如图7所示。
C133PFU1X1CRYSTAL18XTAL219XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617C2C433PF91NFRSTR81k293031PSENALEEAR9470R11003D1U2:BLED-GREEN41D2LED-REDU2:A274LS04R31kQ12N171174LS0412345678R5220P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R71kBUZ1R2R45k1kBUZZERR6100Q2PN2369LDR1TORCH_LDR 图7
按下按键,恢复正常工作状态,绿灯亮,红灯灭,蜂鸣器不叫,同图6。同样,按下复位键,可以是系统恢复正常工作状态,同图6。
2.红外报警器的分析
以上为红外报警系统的测试内容,运用protues进行硬件仿真和软件测试,结果均为正确,能够实现报警功能,即P1.3由高电平变为低电平时(有人闯入),触发报警系统,红色LED灯亮,蜂鸣器鸣叫,按下中断按键,停止鸣叫,恢复。
五、设计总结
本次设计的红外报警器以AT89C51为核心,用LED灯及蜂鸣器来表现实验效果,通过按键来实现对报警系统的控制。通过对硬件的仿真及软件测试,实现了设计功能的要求。
到目前为止我的课程设计也即将告一段落了,在这次的课程设计中,自己也学习到了很多以前没有经历过的知识,让我更加清楚了理论知识和实践能力的差别,了解到自己的短处,培养了我的独立思考能力,进一步提高了自己在实际设计过程中研究问题、发现问题、解决问题的能力,同时,也发现了自己的不足之处,和一些问题的存在,并有待进一步学习和发展,让自己在学习之中更快的适应和提高自己。
参考文献:
[1] 薛均义, 张彦斌. MCS-51系列单片微型计算机及其应用[M]. 西安: 西安交
6
通大学出版社, 2005.
[2] 李全利. 单片机原理及接口技术[M]. 北京: 北京航空航天大学出版社, 2004.
附录(程序)
ORG 0000H
LJMP MAIN ORG 0003H
MAIN:
LP: LA:
ALARM:
L1: L2:
PINT0:
LJMP PINT0 ORG 0200H MOV IE,#81H ;CPU开放中断,INT0允许中断 SETB IT0 ;外部中断为边沿触发方式 MOV SP,#30H ;指针入口地址 SETB P3.0 CLR P3.1 CLR P1.0 JNB P1.3,LA ;监测输入信号,是否有输入信号 ACALL DELAY ;延时消抖 JNB P1.3,ALARM ;再次监测输入信号,若有输入信号转入报警子程序 AJMP LP SETB P1.0 ;开始报警使运行正常绿指示灯熄灭,红灯和声报警启动 CLR P3.0 SETB P3.1 MOV R0,#0FFH ;循环次数 MOV R3,#0FFH MOV R4,#30
MOV TMOD,#01H ;定时器T0定时方式1 MOV TL0,#0FFH ;置定时初值 MOV TH0,#0FBH SETB TR0 ;启动T0 MOV TL0 ,#0FFH MOV TH0 ,#0FBH CPL P3.1
JBC TF0,L1 ;查询记数溢出
DJNZ R0,L2 ;循环次数继续循环 DJNZ R3,L2 DJNZ R4,L2 CLR EX0 ;外部中断0服务程序开始,屏蔽外部中断
7
PUSH PSW PUSH ACC JNB P3.2,LN ;监测是否有中断输入
LN: LCALL DELAY ;延时消抖 JNB P3.2,LN1 AJMP LN2 ;无中断输入,中断返回
LN1: CLR TR0
LN2:
DELAY: DELAY1:
SETB P3.0 CLR P3.1 CLR P1.0 POP ACC POP PSW SETB EX0 SJMP $ RETI MOV R1,#10 MOV R2,#255 DJNZ R2,$ DJNZ R1,DELAY1 RET END
;使报警结束,绿指示灯亮 ;开放外部中断0 8
因篇幅问题不能全部显示,请点此查看更多更全内容