{ green = 0; //如果延时布防成功 绿灯长亮 if(hw == 1) //红外有输出 { flag_alarm = 1; } } }
/******************对应不同按键处理**********************/ void key_with() { if(key_can == 1) //按键紧急报警 { flag_alarm = 1; //报警标志位 ; } if(key_can == 2) //布防按键 { flag_bufang_en = 1; } if(key_can == 3) //取消报警 把变量清零 { flag_alarm = 0; flag_bufang = 0; flag_bufang_en = 0; flag_value = 0; P2 = 0xff; } }
/******************主程序**********************/ void main() { time_init(); while(1) { key(); yellow = ~hw; //红外热释电指示灯 有输出就亮黄灯 if(key_can < 10)
32
{ key_with(); //按键设置函数 } if(flag_300ms == 1) { flag_300ms = 0; hongwai_dis(); //红外报警函数 } } }
/*************定时器0中断服务程序***************/ void time0_int() interrupt 1 { static uint value; TH0 = 0x3c; TL0 = 0xb0; // 50ms value ++; if(value % 6 == 0) { flag_300ms = 1; } if(flag_bufang_en == 1) { flag_value ++; if(flag_value >= 600) //30秒 { flag_bufang = 1; flag_bufang_en = 0; flag_value = 0; } } }
33
附录四:器件清单
红外热电释防盗报警器 名称 单片机 型号 STC89C52 数量 1 单片机座 DIP_40 蜂鸣器 有源 三极管 S8550 红色发光二极管
Ф5mm
绿色发光二极管
Ф5mm 黄色发光二极管 Ф5mm 晶振 12M 瓷片电容 20P 电解电容 10uF 红色发光二极管 Ф3mm 自锁开关 红色的按键 红色的按键 单排排针 5P 电阻 1k 电阻 10k 红外热电释传感器 人体感应万能板 7cm*9cm 杜邦线 焊接导线
1 1 1 1
1
1 1 2 1 1 1 1 3 1 5 2 1 1 3 若干
34
35
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于单片机应用系统的报警电路仿真设计(8)在线全文阅读。
相关推荐: