|
小弟用at89c2051的两个端口检测电接点压力表,当到压力下限的时候给继电器通电,当到压力上限的时候给继电器断电,程序非常的简单,但是使用几天的时间就会出现压力低于下限,单片机未能打开继电器,重新上电恢复正常,又能用一两天,,,,能是哪儿的问题呢?
程序如下:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit kai=P1^7;
sbit guan=P1^6;
sbit power=P1^5;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
while(1)
{
if(kai==0)
{
delay(10);
if(kai==0)
{
power=1;
}
}
if(guan==0)
{
delay(10);
if(guan==0)
{
power=0;
}
}
}
}
|
|