标题:
红外报警器单片机程序与电路图
[打印本页]
作者:
aojiaodekunge
时间:
2017-9-23 23:19
标题:
红外报警器单片机程序与电路图
电路原理图如下:
图片1.png
(7.73 KB, 下载次数: 75)
下载附件
总电路图
2017-9-23 23:17 上传
红外报警器源程序如下:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar Mode=1,t;
sbit s1=P1^2;
sbit s2=P1^3;
sbit s3=P1^4;
bit alarm=1,kai=1;
//LED
sbit LR=P0^0;
sbit LY=P0^1;
sbit LG=P0^2;
//蜂鸣器
sbit Feng=P2^7;
//人体热释电传感器
sbit HR=P2^4;
void delay(uint x) //毫秒级延时函数
{
uint i,j;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
void di()
{
Feng=0;
delay(100);
Feng=1;
}
void main()
{
LR=1;
LG=1;
LY=1;
while(1)
{
if(s1==0) //紧急手动报警
{
delay(5);
if(s1==0) //紧急手动报警
{
delay(5);
while(!s1);
di();
//开启指示灯 报警红灯
kai=0;
LR=0;
LY=1;
LG=1;
alarm=0;
delay(200);
}
}
if(s3==0) //取消报警
{
delay(5);
if(s3==0)
{
delay(5);
while(!s3);
di();
//关闭模式
// Mode=1;
LR=1;
alarm=1;
delay(200);
}
}
if(s2==0) //布防
{
delay(5);
if(s2==0)
{
delay(5);
while(!s2);
di();
//开启指示灯 布防绿灯
LR=1;
LY=0;
LG=1;
Mode=0;
kai=1;
}
}
if(alarm==0)
{
//报警
di();
delay(100);
di();
delay(100);
}
//判断红外状态
if(HR==0&&Mode==0)
{
LR=0; //报警红灯
alarm=0;
}
else
{
if(kai)
{
alarm=1;
LR=1;
}
}
if(HR==0)
{
LG=0;
delay(200);
}
else
{
LG=1;
}
}
}
复制代码
作者:
et2t33
时间:
2018-7-12 19:19
关键的传感器呢
作者:
YBZYBZ
时间:
2018-7-29 21:33
如果楼主发个全套资料就好了。
作者:
姜姜姜姜姜
时间:
2018-10-19 22:15
研究研究
作者:
aa1996
时间:
2018-10-20 01:07
没有红外部分呀
作者:
热爱科技生活
时间:
2020-4-17 15:01
缺少东西
作者:
王女士
时间:
2022-12-25 22:03
aa1996 发表于 2018-10-20 01:07
没有红外部分呀
这是仿真所以用按键代替检测人
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1