单片机报警器设计

单片机报警器设计

ID:18320953

大小:373.50 KB

页数:16页

时间:2018-09-17

单片机报警器设计_第1页
单片机报警器设计_第2页
单片机报警器设计_第3页
单片机报警器设计_第4页
单片机报警器设计_第5页
资源描述:

《单片机报警器设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、河南城建学院电子技术课程设计课程名称报警器的设计专业电气工程及其自动化学号091410359姓名刘志伟指导教师赵红梅、徐安峰、米启超电气与电子工程系2012年6月一.设计目的熟悉并掌握单片机原理及基本应用,掌握单片机基本外设的使用方法,掌握汇编语言编程方法,熟悉PROTEUS、伟福、Q软件的使用,综合运用所学的知识及电子焊接技术的基础知识连接硬件实现设计功能。二.设计要求报警器系统设计要求:(1)设计一个报警器,当第一次触发时发出报警信号。(2)延时6秒后报警停止。(3)十秒内若没有第二次触发则复位,十秒内第二次触发则持续报警。(4)只可由复位键复位。三.总体设计1.8

2、9C52的介绍AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8单片机,片内含8kbytes的随机存储数据存储器,期间采用ATMEL公司的高密度,非易失性存储技术生产,与标准的MCS-51指令系统即8052产品引脚相兼容,片内置通用的8位CPU和FLASH存储单元,功能更为强大。AT89C52提供以下标准功能:8k字节FLASH闪存寄存器,256字节内部RAM,32个I/O口线,3个16位定时计数器,一个6向量中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C52可降至OHZ的静态逻辑操作,并支持两种软件可选的节点工作模式,空闲方式停止

3、CPU工作,但允许RAM,定时器、计数器,串行口及计数器继续工作。掉电方式保存片内RAM中的内容,但振荡电路停止工作阻止其它部件的工作直到下一个部件复位。2.设计思路应用AT89C52单片机来设计报警器的硬件电路,利用汇编语言进行程序设计。主程序被设计为一个查询指令,用来查询内部RAM的位地址为20H的状态,当没有触发信号时,20H为0,当有触发信号时变为1,带动有源蜂鸣器发出第一次的报警信号,并使20H复位为0,通过程序的控制该信号持续时间为6秒钟,从发出第一次的报警信号(即20H复位为0)后的10秒钟内主程序又开始查询20H的状态若在这十秒钟内再次查询到触发信号则在

4、十秒钟后再次置位20H为1,在这种情况下蜂鸣器将一直响下去,持续报警,直到人为地按下复位信号后不再响;否则蜂鸣器响六秒钟后将不会再响。3.由设计思路可知报警器系统包括有触发电路、复位电路、扬声器发声电路四部分组成。3.系统结构四.各部分电路设计1.复位电路MCS-52单片机的复位是由外部的复位电路来实现的。复位引脚RT通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。上电复位:上电复位电路是一种简单的复位电路,只要RST复位引脚接一个电容到VCC,接一个

5、电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。上电复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以率先上点自动复位。本设计中用按钮控制复位。电路图如下2.时钟电路时钟是单片机的心脏,单片机各功能部件的运行都是时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单

6、片机的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本文用的是内部十种方式。电路图如下:MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,该高增益反相放大器的输入端为芯片引脚XTAL1,输入端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。3.报警电路报警电路是整个电路成功的体现。报警电路用了两个三极管(一个PNP型一个NPN型)对电路进行放大驱动蜂鸣器。五、整体电路图1.主程序流程图2.中断程序流程图3.C程序设计#includesbitkey=P3^2;sbitfm=P

7、3^7;unsignedintnum=0;unsignedintut=0;voiddelay10ms(void)//误差0us{unsignedchara,b,c;for(c=1;c>0;c--)for(b=38;b>0;b--)for(a=130;a>0;a--);}voiddelay6s(void)//误差0us{unsignedchara,b,c;for(c=71;c>0;c--)for(b=168;b>0;b--)for(a=250;a>0;a--);}voidmain(){loop:EA=0;ET0=0;TR0=0;TMOD=0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。