资料下载地址:单片机+人体红外感应的防盗系统设计(仿真+源码+PCB文件+报告)
1、功能介绍
(1)该设计包括硬件和软件设计两个部分。 (2)本红外线防盗报警系统由热释电红外传感器、报警器、单片机控制电路、LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。 (3)系统可实现功能。探测器工作时,当有人闯入时,热释电红外传感器将探测到动作,设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,经放大电路、比较电路送至门限开关,打开门限阀门送出TTL 电平至STC89C52单片机,经单片机处理运算后驱动执行报警电路使警号发声。 (4)红外线具有隐蔽性,在露天防护的地方设计一束红外线可以方便地检测到是否有人出入。此类装置设计的要点:其一是能有效判断是否有人员进入;其二是尽可能大地增加防护范围。当然,系统工作的稳定性和可靠性也是追求的重要指标。至于报警可采蜂鸣器报警。
2、原理图
3、实物图
4、仿真图
5、程序
void main()//主函数
{
huang=0;//初始黄灯亮
lv=0;//初始绿灯亮
hong=0;//初始红灯亮
timer1init();//初始化定时器
while(1)
{
if(!baojing)//如果直接报警键被按下
{
delay(5);//延时消抖
if(!baojing)//判断报警键是不是被按下
{
hong=1;//红灯亮
lv=0; //绿灯灭
flag=7;//标志位等于7
butter=0;//蜂鸣器响
EA=0;//关中断
}
while(!baojing);//判断按键是不是弹开
delay(5);//如果弹开延时消抖
while(!baojing);//弹开后跳出程序
}
if((!bufang)&&(flag<4))//在初始状态和按下取消键后可以进去这个函数
{
delay(5);//延时消抖
if(!bufang)//如果布防被按下
{
EA=1; //开定时器
flag=2;//另=2
}
while(!bufang);//布防键是不是弹开
delay(5);//延时
while(!bufang);//布防键弹开
}
if(!quxiao)//如果取消键按下
{
delay(5);//延时消抖
if(!quxiao)//取消键是不是按下
{
flag=3;//FLAG等于3
butter=1;//蜂鸣器不响
tt=0;//
num=0;//定时初始0
EA=0;//关中断
lv=0;//绿灯灭
hong=0;//红灯灭
}
while(!quxiao);//取消按键抬开
delay(5);//延时消抖
while(!quxiao);//如果弹开跳出
}
if(flag==4)//如果布防时间到
{
tt=0;//清计数为0
EA=0;//关中断
num=0;//记的秒数清零
lv=1;//关绿灯
flag=5;//flag等于5
}
if(hongwai)//如果感应到人黄灯亮
huang=1;
else huang=0;//感应不到人黄灯灭
if(flag==5)//如果flag等于5
{
if(hongwai)//如果感应到人
{
butter=0;//蜂鸣器响
EA=1;//开中断
}
}
}
}
void time0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
tt++;
if(tt==10)
{tt=0; num++;}
if((flag==5)&&(num%2==0))//布防15秒后会让flag=5 ,num为偶数灯亮
hong=1;
if((flag==5)&&(num%2==1))//布防15秒后会让flag=5 ,num为奇数灯灭
hong=0;
if((flag==2)&&(num%2==0))//按键布防键后flag等于2,num为偶数灯亮
lv=1;
if((flag==2)&&(num%2==1)) // 按键布防键后flag等于2,num为奇数灯灭
lv=0;
if((flag==2)&&(num==30))//布防时间,num=30即15秒,可以更改此实现布防延迟时间
flag=4;
}