智能灯光晚上有人+晚上有声音防盗报警
(1)利用单片机作为中央处理器;
(2)实现了室内无人或者关照充足时灯光自动光灯,有人到来且光照不足时自动开启灯光或者光线不足有声音时自动开启灯光。
(3)延时关灯;
(4)所设计的智能灯光控制系统具有防盗报警功能,布防后如果检测到人具有声光报警功能。
(5)所设计的开关系统应做到节能、智能、耐用、可靠性高以及维护方便。
(6)在硬件设计时,结构要尽量简单实用、易于实现,使系统电路尽量简单。(7)根据硬件电路图,在开发板上完成器件的焊接。
(8)根据设计的硬件电路,编写控制STC89C52芯片的单片机程序。
(9)通过编程、编译、调试,把程序下载到单片机上运行,并实现本设计的功能。
部分源程序如下: #include "std_for_wym.h"
sbit Ji_D_Qi = P1^0; //继电器接口 sbit Rsd = P1^1; //红外热释电接口 sbit Led = P1^2; //红外热释电信号指示接口 sbit Light = P1^3; //光敏电阻接口 sbit shengyin= P1^4;
#define TIMEMIN 6 //检测到一次吸合2分钟 sbit bufang=P2^0; //布防按键 sbit beep = P2^1; //蜂鸣器定义 sbit green = P2^5; //绿色发光二极管定义 sbit yellow = P2^4; //黄色发光二极管定义 sbit hw = P2^6; //红外热释传感器定义 bit flag_300ms = 0;
uchar flag_alarm ; //报警标志位 uchar flag_bufang ; //布防标志位 uchar flag_bufang_en ; //布防标志位使能 uint flag_value,flag_value2; //用做定时器的变量 uchar flag_deng_en ; //灯标志位使能 /*************定时器0初始化程序***************/ void time_init() { EA = 1; //开总中断 TMOD = 0X01; //定时器0工作方式1 ET0 = 1; //开定时器0中断 TR0 = 1; //允许定时器0定时 }
/******************红外报警处理**********************/ void hongwai_dis() { if(flag_alarm == 1) //报警 { beep = ~beep; //蜂鸣器报警 } if(flag_bufang_en == 1) //准备开始布防 { green = ~green; //绿灯闪
} if(flag_bufang == 1) //确认布防 { green = 0; //如果延时布防成功 绿灯长亮 if(hw == 1) //红外有输出 { flag_alarm = 1; } }
}
|