#include <reg52.h> //μ÷óÃμ¥Ƭ»úí·Îļt
#define uchar unsigned char //ÎT·ûoÅ×Ö·ûDí o궨òå ±äá¿·¶Î§0~255
#define uint unsigned int //ÎT·ûoÅÕûDí o궨òå ±äá¿·¶Î§0~65535
sbit GM=P1^0; //1aÃô
sbit shengyin=P1^4; //éùòô
sbit relay=P3^4; //¼ìμçÆ÷¿ØÖÆμÆ
/******************
μçλÆ÷íùóòμ÷ 1aÃô′«¸DÆ÷μÄáéÃô¶èÔö¼ó
**********************/
void delay_1ms(uint x)//Ñóê±oˉêy
{
uint i,j;
for(i=0;i<x;i++)
for(j=0;j<120;j++);
}
void work()//1¤×÷oˉêy
{
static uint value,miao;
if(GM==0)//1aÃô£¨ííéÏ£©
{
delay_1ms(1);//Ñóê±1ms
if(GM==0)//è·¶¨êÇííéÏ
{
if(shengyin==0)//óDéùòô
{
relay=0;//¼ìμçÆ÷ÎüoÏ
miao = 0;
value = 0;
}
}
}
if(relay == 0) //¼ìμçÆ÷ÎüoÏ ¼Æê±10Ãë
{
value ++;
if(value >= 1000)
{
value = 0;
miao ++;
if(miao >= 10) //10ÃëμÄê±¼ä
{
miao = 0;
relay = 1; //1رռìμçÆ÷
}
}
}
}
void main()//Ö÷oˉêy
{
while(1)//Ñ-»·
{
work();//μ÷óÃ1¤×÷oˉêy
delay_1ms(1); //1ms
}
}
|