本帖最后由 mfkjqkoooo 于 2013-7-6 22:36 編輯
/********************************************************************
實(shí)現(xiàn)功能:順序控制程序
使用芯片:STC89C52RC
晶振:11.0592MHZ
編譯環(huán)境:Keil
*********************************************************************/
/********************************************************************
四入四出繼電器工控程序說明:
繼電器K1閉合約>30秒后,繼電器K1斷開>10分鐘,K3吸合,然后延時(shí)約>30秒,
繼電器K3斷開>30秒,如此循環(huán)!
*********************************************************************/
#include<reg52.h> //庫(kù)文件
#define uchar unsigned char//宏定義無符號(hào)字符型
#define uint unsigned int //宏定義無符號(hào)整型
/********************************************************************
初始定義
*********************************************************************/
/*定義四位輸入為單片機(jī)P1口*/
sbit IN0=P1^0;
sbit IN1=P1^1;
sbit IN2=P1^2;
sbit IN3=P1^3;
/*定義四位輸出為單片機(jī)P2口*/
sbit K1=P2^0;
sbit K2=P2^1;
sbit K3=P2^2;
sbit K4=P2^3;
/********************************************************************
延時(shí)函數(shù)
*********************************************************************/
void delay(uchar t) //當(dāng)t等于20時(shí),大概延時(shí)0.2秒;當(dāng)t等于10時(shí),大概延時(shí)0.1秒;
{
uchar m,n,s;
for(m=t;m>0;m--)
//for(m=t;m>0;m--)
for(n=500;n>0;n--) //n=500"+"delay(500); //調(diào)用延時(shí)函數(shù) 為>30秒鐘
for(s=248;s>0;s--);
}
/********************************************************************
主函數(shù)
*********************************************************************/
void main()
{
while(1)
{
K1=0; //繼電器K1閉合
//K2=0; //繼電器K2閉合
delay(500); //調(diào)用延時(shí)函數(shù) //n=500"+"delay(500); //調(diào)用延時(shí)函數(shù) 為>30秒鐘
K1=1; //繼電器K1斷開
//K2=1; //繼電器K2斷開
delay(500); //調(diào)用延時(shí)函數(shù) //延時(shí)累計(jì)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù) 33*10=330秒=6分30秒
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù) 33*10*2=660秒=13分
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù)
delay(500); //調(diào)用延時(shí)函數(shù) 累計(jì)15分鐘
K3=0; //繼電器K3閉合
//K4=0; //繼電器K4閉合
delay(500); //調(diào)用延時(shí)函數(shù)
K3=1; //繼電器K3斷開
//K4=1; //繼電器K4斷開
delay(500); //調(diào)用延時(shí)函數(shù)
}
}
/********************************************************************
結(jié)束
*********************************************************************/
|