是这样的,我的pic端口通过uln2004控制继电器。端口定义如下
#define Lengfeng_G LATBbits.LATB3 //HEAT004
#define Lengfeng_K LATBbits.LATB4 //HgEAT075
#define Gufeng LATBbits.LATB5 //HEAT102
子程序如下:
if(Current_Temp<Set_Temp)
{
Gufeng=1;
SW_flag=1;
WW_flag=0;
}
if(Current_Temp>=Set_Temp)
{
Gufeng=0;
WW_flag=1;
SW_flag=0;
if(Current_Temp>=(Set_Temp+20))
{
GC=0;
KC++;
if(KC<=3)
{Lengfeng_K=1;
__delay_ms(2000);
Lengfeng_K=0;
}
}
}
if(Current_Hum>=Set_Hum)
{ GC=0;
KC++;
if(KC<=3)
{ Lengfeng_K=1;
__delay_ms(2000);
Lengfeng_K=0;
}
}
if(Current_Hum<Set_Hum)
{ KC=0;
GC++;
if(GC<=3)
{ Lengfeng_G=1;
__delay_ms(2000);
Lengfeng_G=0;
}
}
}
问题是Gufeng=1时,他对于的继电器吸和,但是等到Lengfeng_K=0; 或者Lengfeng_G=0; 时gufeng随着他们俩一起为零。只有Lengfeng_K和Lengfeng_G不
动作,gufeng才能正确执行。我在主函数里单独运行她们俩。没有这种情况。研究好几天没有进展。肯定大侠们帮我。有偿也可!!!我的QQ 13416715 |