?? 繼電器實驗程序.c
字號:
/*繼電器+蜂鳴器實驗程序*/
//====聲明區==================================================
#include <reg51.h> //定義頭文件(8051)
sbit buzzer=P1^0; //聲明蜂鳴器的位置為P1^0
sbit relay=P1^1; //聲明蜂鳴器的位置為P1^1
void delay(int); //聲明延時函數
void pulse_BZ(int,int,int); //聲明蜂鳴器發聲函數
void pulse_RL(int,int,int); //聲明繼電器控制函數
//====主程序===================================================
main() //主程序開始
{
while(1) //無盡循環,程序一直運行
{
pulse_RL(10,2000,2000);//繼電器控制開關10次各延時1s
pulse_BZ(100,1,1); //蜂鳴器第一次發聲,時間0.1S
delay(200); //延時0.1s
pulse_BZ(100,1,1); //蜂鳴器第二次發聲,時間0.1S
delay(200); //延時0.1s
} //循環結束
} //主程序結束
//===子程序====================================================
/*延時函數開始,延遲x個0.5ms*/
void delay(int x) //延時函數開始
{
int i,j; //聲明整數變量i,j
for(i=0;i<x;i++) //計數X次,延遲x個0.5ms
for(j=1;j<=60;j++); //計數60次,延遲0.5ms
} //延時函數結束
/*蜂鳴器發聲函數,count計數次數,TH高電平時間,HL低電平時間*/
void pulse_BZ(int count,int TH,int TL)//蜂鳴器發聲函數開始
{
int i; //聲明整數變量i
for(i=0;i<count;i++) //循環執行count次
{
buzzer=1; //輸出高電平
delay(TH); //延時時間
buzzer=0; //輸出低電平
delay(TL); //延時時間
} //循環結束
} //蜂鳴器發聲函數結束
/*繼電器控制函數,count計數次數,TH高電平時間,HL低電平時間*/
void pulse_RL(int count,int TH,int TL)//繼電器控制函數開始
{
int i; //聲明整數變量i
for(i=0;i<count;i++) //循環執行count次
{
buzzer=1; //輸出高電平
delay(TH); //延時時間
buzzer=0; //輸出低電平
delay(TL); //延時時間
} //循環結束
} //繼電器控制函數結束
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -