MCU需检测一个引脚电平,正常为低低电平,如果为高表示产生告警,显示告警,并记录告警的时间存入EEPROM。
程序:
if(power_pin==Nomol) //引脚正常
{
if(lcd_disp_stat_back==2 && alm_value==0)
{
lcd_disp_stat_back=0; //返回正常状态
flag_power_off_alm=0; //告警撤消,下次告警可继续产生记录
}
}
else if(Power_check==POWER_OFF) //引脚告警
{
if(lcd_disp_stat_back==0) //如果为待机状态,则转为告警状态
{
lcd_disp_stat_back=2; //显示告警状态
if( flag_power_off_alm==0) //如果当前告警记录未产生,则产生记录并储存
{
flag_power_off_alm=1; //防止重复产生记录信息
。。。。。。。。 //产生记录,并储存
}
}
}
现在的问题是:如果引脚变高,本来只产生一个告警记录就够了,但现在有告警时总会产生2个相同的告警记录,什么原因?
MCU;STC11F60
|