问题解决了,自己粗心了,漏写了最后判断dat1和dat2小于报警值的几行代码
void FireJudge(uchar dat1, int dat2)
{
/*烟雾报警判断*/
if(dat1>gMqAlarm)
{
send_data_74hc595(0xfc);
datout();
}
/*温度报警判断*/
if(dat2>gTempAlarm)
{
send_data_74hc595(0xfa);
datout();
}
if((dat1<=gMqAlarm)&&(dat2<=gTempAlarm))
{
send_data_74hc595(0xff);
datout();
}
} |