|
#include <reg52.h>
#include <intrins.h>
#include <string.h>
#include <stdio.h>
#define uchar unsigned char
#define uint unsigned int
#define MAXCHAR 90
uchar aa[MAXCHAR];
sbit fire=P0^0; //火焰
sbit shake=P0^1; //震动
sbit dianshiji=P0^2; //电视机
sbit dianfanguo=P0^3; //电冰箱
sbit reshuiqi=P0^4; //热水器
sbit xiyiji=P0^5; //洗衣机
sbit men=P0^6; //门
sbit buffer=P0^7; //蜂鸣器
void main()
{
fire=1; //火焰 检测IO口
shake=1; //震动 检测IO口
dihiji=1; //电视机
dianfuo=1; / eshuiqi=1; //热水器
xiyiji=1; //洗衣机
men=1; //门
flag=0;
buffer=0;
P10=1;
P11=1;
P12=1;
P13=1;
while(1)
{
if(P10==0)
{
//发送中文短信李四
send_english_3();
delay(1000);
}
if(P11==0)
{
//发送中文短信赵五
send_english_4();
}
if(strstr(aa,"+CMTI")!=NULL) //缓存中有+CMTI字符
{
clearBuff();
Print_Str(CMGF1);
delay(10);
Print_Str(CMGF1);
delay(10);
Print_Str(CMGF1);
delay(10);
while(Hand()==0);
clearBuff();
Print_Str(CMGR); //读取1号位置的短信
delay(10);
Print_Str(CMGR); //读取1号位置的短信
delay(10);
Print_Str(CMGR); //读取1号位置的短信
delay(10);
if(strstr(aa,"hn")!=NULL) //户内模式
{
send_english();
flag=1;
}
if(strstr(aa,"out")!=NULL) //户外模式
{
send_english();
flag=2;
}
if(flag==2) //户外模式
{
if(strstr(aa,"men")!=NULL)
{
flag1++;
if(flag1==1)
men=0;
if(flag1==2)
{
flag1=0;
men=1;
}
send_english();
}
if(strstr(aa,"dfg")!=NULL)
{
flag2++;
if(flag2==1)
dianfanguo=0;
if(flag2==2)
{
flag2=0;
dianfanguo=1;
}
send_english();
}
if(strstr(aa,"rsq")!=NULL)
{
flag3++;
if(flag3==1)
reshuiqi=0;
if(flag3==2)
{
flag3=0;
reshuiqi=1;
}
send_english();
}
if(strstr(aa,"tv")!=NULL)
{
flag4++;
if(flag4==1)
dianshiji=0;
if(flag4==2)
{
flag4=0;
dianshiji=1;
}
send_english();
}
if(strstr(aa,"xyj")!=NULL)
{
flag5++;
if(flag5==1)
xiyiji=0;
if(flag5==2)
{
flag5=0;
xiyiji=1;
}
send_english();
}
if(fire==1)
{
fire=0;
send_english_1();
for(i=5;i>0;i--) //蜂鸣器响5次报警
{
buffer=0;
delay(100);
buffer=1;
delay(100);
}
}
//户外模式
if(shake==0)
{
shake=1;
send_english_2();
for(i=3;i>0;i--) //蜂鸣器响3次报警
{
buffer=0;
delay(100);
buffer=1;
delay(100);
}
}
}
}
if(flag==1) //户内模式
{
if(shake==0)
{
shake=1;
for(i=3;i>0;i--) //蜂鸣器响3次报警
{
buffer=0;
delay(100);
buffer=1;
delay(100);
}
}
if(fire==1)
{
fire=0;
for(i=5;i>0;i--) //蜂鸣器响5次报警
{
buffer=0;
delay(100);
buffer=1;
delay(100);
}
}
}
哪位大侠帮小弟看一下,为啥火焰传感器和震动传感器无法检测到 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|