DHT11程序TLC2543程序LCD1602程序DS1302程序报警程序Word文档下载推荐.docx
《DHT11程序TLC2543程序LCD1602程序DS1302程序报警程序Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《DHT11程序TLC2543程序LCD1602程序DS1302程序报警程序Word文档下载推荐.docx(50页珍藏版)》请在冰豆网上搜索。
//键二,设置时间
ucharsw2_2=0;
//键二,设置温湿度报警值
ucharsw3_2=0;
//建二,设置酒精浓度报警值
ucharsw4_2=0;
//建二,设置烟雾浓度报警值
ucharnum1=0;
//功能切换
ucharspeed=0;
//数据说新速度
uintt0=0;
delayms(uintz)
{
uintm,n;
for(m=z;
m>
0;
m--)
for(n=124;
n>
n--)
;
}
voidbeer()
Beer=0;
delayms(30);
Beer=1;
t0=0;
//自动切换清零
/*****************************功能键11111111111111******************************************************/
voidKKey_switch()//功能键一
if(!
Key_swi)
{
beer();
if(!
Key_swi&
&
(sw1_2==0)&
(sw2_2==0)&
(sw3_2==0)&
(sw4_2==0))//=1时,表示正在设置状态,不能却换到其他的状态
{
flag_display=0;
//自动切换标志位
num1++;
if(num1>
=4)num1=0;
while(!
Key_swi);
switch(num1)
{
case0:
{
init_xian(0x80,str5_1);
init_xian(0xc0,str5_2);
break;
//
}
case1:
init_xian(0x80,str6_1);
init_xian(0xc0,str6_2);
case2:
init_xian(0x80,str7_1);
init_xian(0xc0,str7_2);
case3:
init_xian(0x80,str8_1);
init_xian(0xc0,str8_2);
}
}
}
/*****************************功能键2222222222222*****************************************************************/
voidKKey_set()//功能键二
if(Key_set==0)//设置
if(Key_set==0&
flag_display==0)
{
sw1_2++;
if(sw1_2>
=7)sw1_2=0;
switch(sw1_2)///////////////////////////温湿度设置
{
case0:
//确定光标消失
{
display_flag=0;
wr_com(0x0c);
Init_DS1302();
break;
//
}
case1:
//光标移动到
display_flag=1;
wr_com(0x88);
wr_com(0x0d);
case2:
wr_com(0x8b);
case3:
wr_com(0x8e);
case4:
wr_com(0xc7);
case5:
wr_com(0xca);
case6:
wr_com(0xcd);
}
sw2_2++;
if(sw2_2>
2)sw2_2=0;
switch(sw2_2)//温湿度设置
wr_com(0xc5);
wr_com(0xcE);
//
//酒精浓度设置
sw3_2++;
if(sw3_2>
=5)sw3_2=0;
switch(sw3_2)
wr_com(0xc8);
wr_com(0xc6);
sw4_2++;
if(sw4_2>
=5)sw4_2=0;
switch(sw4_2)
wr_com(0xc9);
}
break;
while(Key_set==0);
voidKKey_add()
if(Key_add==0)
if(Key_add==0)
switch(sw1_2)////设置年月日及其时间
year++;
if(year>
99)year=0;
lcd_display_ds1302();
month++;
if(month>
12)month=1;
day++;
if(day>
31)day=1;
hour++;
if(hour>
23)hour=0;
minute++;
if(minute>
59)minute=0;
second++;
if(second>
59)second=0;
switch(sw2_2)//设置温湿度报警值
//设置温度
T_num++;
if(T_num>
=99)T_num=99;
display_T_num();
//设置湿度
H_num++;
if(H_num>
=99)H_num=99;
display_H_num();
switch(sw3_2)//酒精浓度
Alc_num+=1;
if(Alc_num>
=4999)Alc_num=4999;
display_Alc_num();
Alc_num+=10;
Alc_num+=100;
Alc_num+=1000;
switch(sw4_2)//烟雾浓度
Smog_num+=1;
if(Smog_num>
=4999)Smog_num=4999;
display_Smog_num();
Smog_num+=10;
Smog_num+=100;
Smog_num+=1000;
while(Key_add==0);
voidKKey_min()
if(Key_min==0)
switch(num1)
switch(sw1_2)///////////////////////////设置年月日及其时间
//温度报警值增加
year--;
if(year<
=0)year=99;
month--;
if(month<
=0)month=12;
//湿度报警值增加
day--;
if(day<
=0)day=31;
hour--;
if(hour<
0)hour=23;
minute--;
if(minute<
0)minute=59;
second--;
if(second<
0)second=59;
switch(sw2_2)///////////////////////////
//温度报警值减小
T_num--;
if(T_num<
=0)T_num=0;
H_num--;
if(H_num<
=0)H_num=0;
switch(sw3_2)///////////////////////////
Alc_num-=1;
if(Alc_num<
=1000)Alc_num=1000;