




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、红外报警系统 隋淞印 唐国梁 孙家齐设计目的:为个人家居以及公共场所提供一个防盗报警的有力保障。目前市场上的主流红外线防盗系统大都由红外对管加简单外围电路直接驱动报警器,这样虽然节省了成本却达不到一定的精度要求。我们设计基于AVR Mega16单片机的红外防盗系统的目的就在于使防盗系统有更高的灵敏度和精确度,并且很重要的一点是我们在这个装置中加入了一个时钟系统,能够记录下有人擅自或非法闯入的准确时刻,为破案取证提供了重要的线索。同时将所学的单片机知识应用于实践。设计用途及功能:本产品可安置在一些禁止入内的场所的入口,如军火库、金库、危险物品存放地等,能够起到提示警告的作用。同时也可以用于家居或
2、办公场所,安置于隐蔽处,当有盗贼闯入时,报警将盗贼吓跑或提示主人采取行动,同时记录下的闯入的时刻有助于警方破案。电路原理图:硬件设计及使用:如以上原理图所示,PB0、PB1和PB5为输出口,分别驱动红色LED、绿色LED和蜂鸣器,所连电阻即R0和R1、R2、R3都是电路板自带的。蜂鸣器的两个引脚分别为正负极,当正负极两端加上5V电压后,蜂鸣器发出响声。注意,该蜂鸣器两脚不能接反,否则蜂鸣器会烧毁。PB7为输入口,设置内部上拉使能,外接红外探测器。红外探测器实为红外光电开关,采用实验室里的12V直流电源供电,其特性为:当光电开关发出的光线在探测距离内未被反射时,OUT输出9V高电平;当光电开关发
3、出的光线在探测距离内被反射时,OUT输出0V低电平。根据这一电平特性,采用上图分压电路,该分压电路采用串联分压,使红外探测器高电平时有4.7伏左右电压输入到MAGE16单片机,从而达到输入电平的变化。此分压电路为自己焊接而成,电路板上没有。七段数码管的七个端口分别连接180欧姆的电阻,再连接至单片机的PA0-PA6端口。4个位选端口分别与PD0-PD3连接。软件设计思想及功能:软件在设计的时候也是分为两个部分,即报警部分和时钟部分。设计的思路来自市面上流行的防盗系统的运作方式。简单的说就是用单片机控制各个硬件的状态变化,从而达到报警的效果。报警部分比较简单,大体就是判断PB7端口输入的是高电平
4、还是低电平,若输入低电平,则命令单片机,使驱动红色LED灯闪亮,同时蜂鸣器报警。时钟部分比较复杂,但也是比较常规的程序设计,与常见的主流时钟程序类似,在此不多做介绍,可参看我们的源程序。系统的检测与调试:对于时钟精确度的检测,我们给系统提供电源使其运行12个小时后,再与标准时间对照,确定时钟系统在12小时内几乎无误差,精确运行。对于报警系统的检测,我们甚至用一根细线在光电开关前迅速划过,结果系统及时精确报警,灵敏度极高。所需资源:Mega16单片机、Course Project 实验板、4位的七段数码管、光电开关、红色LED,电阻若干,导线若干。应用拓展:见证了我们作品的实际效果之后,我们联想
5、到可以把此装置加以改进,制成短跑冲刺时的精确记录统计装置。当运动员冲过终点线(光电开关正对的水平直线)时,此装置精确记录下时刻,十分精确灵敏。当然,要实现这种用途,在软硬件上还要做出少许改动。成员分工情况:隋淞印:总体设计及硬件焊接,程序烧录,论文、总结及PPT编写。唐国梁:软件设计及后期调试。孙家齐:硬件调试及Protel原理图。以上是各成员分工情况,实际工作中大家通力合作互相补充,共同为完成课程设计而努力,任何一个成员的贡献都是我们这个团队不可或缺的一部分。 我们团队各成员的贡献系数为:隋淞印0.4 唐国梁0.3 孙家齐0.3实物照片:参考资料:AVR单片机嵌入式系统原理与应用实践 大学生
6、科技创新大赛培训教程 单片机与C语言开发源程序:/ICC-AVR application builder : 2009-6-7 22:20:51/ Target : M16/ Crystal: 4.0000Mhz#include #include void port_init(void) PORTB = 0x1E; DDRB = 0x23; PORTA = 0x00; DDRA = 0x00; PORTC = 0x00; DDRC = 0x00; PORTD = 0x00; DDRD = 0x00;void init_devices(void) CLI(); port_init(); MCUC
7、R = 0x00; GICR = 0x00; TIMSK = 0x00; SEI(); void delay_nus(unsigned int n);void delay_nms(unsigned int n); void main(void) PORTB = 0x1E; DDRB = 0x23; while(1) if (PINB&0b10000000)=0) PORTB = 0x7D; DDRB = 0x23; delay_nms(30000); void delay_nus(unsigned int n) unsigned int i;for (i=0;in;i+) asm(nop);
8、void delay_nms(unsigned int n) unsigned int i; for (i=0;in;i+) delay_nus(1000); /*File name ; 时钟Chip type ; ATmega16Program type ; ApplicationClock frequency ; 1.000 000 MHzMemory model ; SmallExternal SPAM size ; 0Data stack size ; 256*/#include #include unsigned char led_710 = 0x3F,0x06,0x5B,0x4F,
9、0x66,0x6D,0x7D,0x07,0x7F,0x6F;unsigned char position6 = 0xfe,0xfd,0xfb,0xf7,0xef,0xdf;unsigned int t9 = 0,956,865,759,716,638,568,506,470;unsigned char d9 = 0,105,116,132,140,157,176,198,209;#define Max_note 32unsigned char musicMax_note = 5,2,8,2,5,2,4,2,3,2,2,2,1,4,1,2,1,2,2,3,2,3,2,1,2,3,2,4,2,5,
10、8;unsigned char note_n;unsigned int int_n;int play_on;unsigned char time3,time_set3;unsigned char dis_buff6;unsigned char time_counter,key_stime_counter;unsigned char clock_state = 6,return_time;int point_on,set_on,time_1s_ok,key_stime_ok;void display(void)static unsigned char posit = 0;PORTD = 0xff
11、;PORTA = led_7dis_buffposit;if(set_on & (posit = clock_state) PORTA = 0x00;if(point_on & (posit = 2 | posit = 4) PORTA |= 0x80;PORTD = positionposit;if(+posit = 6) posit = 0;#pragma interrupt_handler timer0_comp_isr:iv_TIMER0_COMPvoid timer0_comp_isr(void)display();if (+key_stime_counter = 5)key_sti
12、me_counter = 0;key_stime_ok = 1;if(!(+time_counter % 25) set_on = !set_on;if(time_counter = 100)time_counter = 0;time_1s_ok = 1;#pragma interrupt_handler timer1_compa_isr:iv_TIMER1_COMPAvoid timer1_compa_isr(void)if(!play_on)note_n = 0;int_n = 1;play_on = 1;elseif(-int_n = 0)TCCR1B = 0x08;if (note_n
13、 Max_note)OCR1A = tmusicnote_n;int_n = dmusicnote_n;note_n+;int_n = int_n * musicnote_n;note_n+;TCCR1B = 0x09;elseplay_on = 0;void time_to_disbuffer(unsigned char * time) unsigned char i,j=0;for(i=0;i= 60) time0 = 0;if(!play_on) TCCR1B = 0x09; if(+time1 = 60)time1 = 0;if(+time2 = 24) time2 = 0;if(+return_time =20) & (clock_state != 6) clock_state = 6;if(clock_state = 6) time_to_disbuffer(time);if(key_stime_ok) key_stime_ok = 0;key_temp = read_key(); if(key_temp) return_time = 0;if(key_temp = key_k1)if(+clock_state = 7) clock_state = 0;if(clock_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年光伏发电项目电力安全施工合作协议
- 2025年夏季临时工劳务派遣服务合同
- 2025年酒店客房租赁及清洁服务合同
- 2025版脱温鸡冷链物流配送与购销合作合同
- 2025年北京幼儿园教育设施装饰装修建设合同
- 2025房地产项目增值服务与代理合作协议
- 2025版建筑垃圾处理与土石方工程综合服务合同
- 2025年定制化车辆租赁与市场推广服务合同
- 2025版山东建筑劳务分包合同
- 2025年食品配料员保密协议及离职后商业秘密保护责任书
- 安全文明施工和质量管理制度
- 新媒体运营口薪酬考核制度150215
- 舞蹈兴趣小组教案
- 2024年湖南益阳市安化县医疗卫生单位招聘考试真题
- 2025二手汽车场地租赁合同
- 召夸中学财务管理制度
- 车床操作基本知识
- 第2课《开学的准备》(课件)心理健康二年级上册北师大版
- 《建筑水电安装精讲班讲义》课件
- 食堂从业人员开学前集中培训讲稿
- 公司入股投资合同范例
评论
0/150
提交评论