资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
目录1 方案设计.11.1 课题背景.11.2 课题设计要求.11.3 课题工程方案.12 电路方案设计.22.1 电路原理图.22.2 单元电路设计.23 程序设计.43.1 程序设计思路.43.2 程序源代码.54 仿真与分析.9总结.12参考文献.1311 方案设计1.1 课题背景随着信息技术的飞速发展以及人们生活水平的大幅度提高,人们对住宅水平的需求已从追求简单的生存空间向着追求质量、功能和服务等多重需求过渡。同时,随着人们的保护意识不断增强,家庭安全性能迫切需要提高,家用报警系统应运而生。当今社会人们的生活方式发生了很大的改变,上班时间比在家的时间更多,在上班时家里会发生什么状况自己也不能及时了解,而且上班地点可能距离家里比较远,当安全事故发生时自己也不能及时处理。所以,根据现在普遍是小区式住宅的现状,且从节约成本的角度,开发设计了本次可视性的家用报警系统。1.2 课题设计要求正常情况下,门外的显示屏会交替显示“正常”两字,三种突发状况由设置的1、2、3开关进行控制,当开关合上产生报警信号,蜂鸣器会持续一定时间的鸣叫,对应的LED灯会不停闪烁,8*8显示屏也会显示相应危险的字样,警报时间过后,LED灯熄灭,警报声停止,显示屏将重新交替显示“正常” 。1设计出硬件电路; 2设计出软件编程方法,并写出源代码;3用PROTEUS进行仿真;1.3 课题工程方案单 片 机 最 小 系 统U2 74LS373U3 74LS373与门8*8显示屏警情情况P0P3.2P1图 1.1 工程技术方案22 电路方案设计2.1 电路原理图此电路主要由AT89C51单片机,电阻,LED灯,按钮,74LS373寄存器和8*8显示屏组成。图 2.1 电路原理图2.2 单元电路设计下图为中断信号电路,在此电路中使用了300欧姆的电阻,红蓝黄LED灯,蜂鸣器以及三个按键。图 2.2 中断信号电路设计3下图为显示电路,为了达到显示报警类型的目的,以及正常状态的视觉感受,采用了8*8点阵设计,因为端口数同样为8,使用了两个74LS373寄存器,可以达到节约成本的目的。图 2.3 显示电路设计43 程序设计3.1 程序设计思路3.1.1 主流程图图 3.1 程序流程图3.1.2 子程序流程关中断初始化P2.4=0?P2.5=0?P2.6=0?关中断返回火灾信号 (红灯闪烁,喇叭响, 显示“火”字样)延时 煤气信号 (蓝灯闪烁,喇叭响, 显示“CO”字样)求救信号 (黄灯闪烁,喇叭响, 显示“SOS”字样)延时延时NNNYYY中断图 3.2 中断子程序流程图开始初始化调用点阵显示子程序53.2 程序源代码ORG 0000HLJMP STARTORG 0003HLJMP ZDORG 0100HSTART:SETB EASETB EX0SETB IT0MOV R3,#00H ;计数表格的行数MOV R2,#100 ;控制延时次数MOV P2,#0F0H LP0:MOV R0,#0FEH MOV R1,#00HLP1:MOV A,R0MOV P1,AMOV A,R0RL AMOV R0,AMOV A,R3MOV B,#8MUL ABADD A,R1MOV DPTR,#TABMOVC A,A+DPTR ;查表 TABCPL AMOV P0,A ;显示字样LCALL DS02 ;调用延时 2INC R1CJNE R1,#8,LP1 ;判断“正”是否显示完毕DJNZ R2,LP0 ;延长字样显示时间6MOV R2,#100INC R3 CJNE R3,#2,LP0 ;判断表格是否全部查询完毕LJMP STARTZD:CLR EAMOV R4,#100JNB P2.4,L0P1 ;火警查询JNB P2.5,LOP2 ;煤气报警查询JNB P2.6,LOP3 ;求救信号查询L0P1:MOV DPTR,#HUO SETB P2.0LCALL AlarmDJNZ R4,L0P1LJMP TC ;火警报警子函数LOP2:MOV DPTR,#COSETB P2.1LCALL AlarmDJNZ R4,LOP2LJMP TC ;煤气报警子函数LOP3:MOV DPTR,#SOSSETB P2.2LCALL AlarmDJNZ R4,LOP3 ;求救子函数TC:SETB EARETIDS01:MOV R6,#5 ;延时子函数 1D1:MOV R7,#10D2:DJNZ R7,D2DJNZ R6,D1RETDS02:MOV R5,#20 ;延时子函数 27D3:MOV R6,#20D4:DJNZ R6,D4DJNZ R5,D3RETAlarm:SETB P2.3 ;蜂鸣器驱动程序和显示对应字样的程序MOV 22H,#200LP3:MOV 20H,#90CPL P2.3LP2:DJNZ 20H,LP2DJNZ 22H,LP3MOV 22H,#200LP5:MOV 21,#120CPL P2.3LP4:DJNZ 21H,LP4DJNZ 22H,LP5MOV R3,#00HMOV R2,#5MOV P2,#0F0HLP8:MOV R0,#0FEHMOV R1,#00HLP9:MOV A,R0MOV P1,AMOV A,R0RL AMOV R0,AMOV A,R3MOV B,#8MUL ABADD A,R1MOVC A,A+DPTRCPL A8MOV P0,ALCALL DS01INC R1CJNE R1,#8,LP9DJNZ R2,LP8MOV R2,#5INC R3CJNE R3,#1,LP8RETTAB:DB 0FFH,81H,0EFH,0A3H,0AFH,0AFH,01H,0FFHDB 0ABH,81H,45H,0C7H,0EFH,83H,0ABH,0EFHCO:DB 0FFH,0CFH,0B9H,76H,76H,0B9H,0CFH,0FFHSOS:DB 9CH,7BH,63H,0A5H,0DEH,0DEH,39H,0FFHHUO:DB 6EH,6DH,0ABH,0C7H,0E7H,0DBH,0BDH,3CH END94 仿真与分析在正常情况下,即不触动按钮,显示屏会交替显示“正常”字样,LED灯不亮,蜂鸣器不响。图 4.1 正常情况(一)图 4.2 正常情况(二) 10当触动 K1 火灾开关后,蜂鸣器会发出警报声,红灯亮,8*8显示屏上显示“火”字样。图 4.3 火灾警示当触动 K2 煤气开关后,蜂鸣器会发出警报声,蓝灯亮,8*8显示屏上显示“CO”字样。 11图 4.4 煤气泄露警示当触动 K3 求救开关后,蜂鸣器发出警报声,黄灯亮,8*8显示屏上显示“SOS”字样。图 4.5 求救信号12总结通过这次课程设计,我真的学到了很多知识。现在感觉一个人如果不逼自己一把就不会知道自己会有多大的潜力。在刚开始学习单片机的时候,因为部门、协会的工作,我在单片机学习上花的时间比较少,只是上课听一下,课后却没有花时间去练习,导致后面学习单片机很吃力,甚至想放弃。后来在实验室评估的时候,在老师的“一帮多”的政策下,认真学会了几个程序,熟悉了那些指令,感觉单片机越来越有趣。这次单片机的课程设计更让我有机会独立地去研究一个课题,把自己原来懂的甚至不懂的知识都用上去,为了做好一个课题,我需要学习更多的知识。这次我的课题是家用报警系统设计,因为自己本身的知识水平有限,做得可能不是很完美。我在设计的时候采用外部中断的形式来替代火灾、煤气泄漏和紧急求救的信号输入,把注意力放在了显示和蜂鸣器的警报上面,为了做好这个,我还特地研究了8*8LED点阵显示内容,通过上网等途径学习了蜂鸣器的警报程序。程序只是一部分,如果想检验程序的可行性,还需要熟练使用PROTUES仿真软件来验证结果。在这过程中我学会了正确使用元器件来达到预期的实验效果,有时候也需要合理选用元器件以达到降低成本的目的。在编写论文阶段,也是一件比较浩大的工程,除了需要一定的排版技巧外,我们还需要整理出一个完整的思路,在对应的图表上加上一定的文字说明。特别是画流程图的时候,因为以前只是在草稿本上写的,很少使用VISIO软件,刚开始用的时候很不方便,后来画了几个图后,感觉这个软件的实用性还挺强的,自己掌握之后在给同学帮忙的时候也更得心应手,还可以教他们怎么使用。总而言之,在本次课程设计中,我学到了很多,我不仅进一步的巩固了单片机的知识,而且学会了与人合作,交流。虽然目前来说单片机的知识懂的还不是很多,但在以后的学习中我会进一步加强巩固。在此,我也要感谢老师及周围同学的帮助,让我能顺利的搞好课程设计。13参考文献1郭天祥编著,51 单片机 C 语言教程,电子工业出版社.2彭伟编著,单片机 C 语言程序设计实训 1
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号