• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于51单片机的智能光控报警

2024/12/20
1147
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

有需要资料的可了解一下.docx

共1个文件

自控模式下,若自然光照能够满足人们生活需要时,不论有人与否,灯光都不开启;若环境自然光线弱,红外传感器发挥作用,此时如果探测到人体信号,系统控制灯光开启,检测不到人体信号经过一段时间后自行关闭。

手动控制模式下,可通过按键控制灯光的打开与关闭,避免了在一些特殊情况下灯光的错误控制,如在教室放映电影时,需要在较暗的环境下观看使体验更佳,此时手动控制模式就显得尤为重要了。

除了两种控灯效果外,系统还拥有设置离家的警报作用,在我们开启设下普报的按钮后亮起绿色光芒的led灯不断闪烁设下防线,经过8s的时间延时绿色led常亮指示完成警报设置。这时若有人在感应范围内被传感器探测到,便会触发蜂鸣器响起喵哺哺的警报声,同时布防警报指示灯亮起警示。

t k3=P1^2;
sbit led1=P3^1;//LED
sbit led2=P3^4;
sbit led3=P3^5;
sbit beep=P3^6;//蜂鸣器
sbit lamp=P2^7;//灯
sbit ir_in=P3^2;//人体红外
sbit light=P3^3;//光线检测

uchar time=0,mode=1;//系统变量
uchar miao=0;//关闭延时

void main()	//主函数
{
	TMOD|=0X01;
	TH0=0X3C;
	TL0=0XB0;	
	ET0=1;//打开定时器0中断允许
	EA=1;//打开总中断
	TR0=1;//打开定时器
	while(1)
	{
		//点亮led
		switch(mode)
		{
			case 0:
				led1=0;
				led2=1;
				led3=1;
				break;
			case 1:
				led1=1;
				led2=1;
				led3=1;
		}
		//按键检测
		if(!k1 &&(mode!=0))
			mode=0;
		if(!k2)
			mode=1;
		if(!k3 &&(mode!=2))
		{

资料借鉴于此纷传

  • 有需要资料的可了解一下.docx
    下载

相关推荐