51微控制器STC89C52控制LED閃爍(將延時程式寫成子函式有形參)
阿新 • • 發佈:2021-02-06
/*-----------------------包含標頭檔案區域-------------------------*/
#include<reg52.h> //微控制器標頭檔案
/*-----------------------埠/引腳定義區域----------------------*/
sbit LED=P2^0; //位定義P2.0引腳名為LED
/*-----------------------函式宣告區域---------------------------*/
void delay(unsigned int xms);//延時函式宣告
/*-----------------------主函式區域-----------------------------*/
void main()
{
while(1) //重複執行while迴圈體的程式
{
LED=0; //點亮LED
delay(800); //延時800ms
LED=1; //熄滅LED
delay(200); //延時200ms
}
}
/*----------------------------------------------------------------
函式名稱:delay
函式功能:延時
函式形參:xms為延時時間,延時範圍0~65535
返 回 值:無
----------------------------------------------------------------*/
void delay(unsigned int xms)
{
unsigned int i,j; //定義無符號整形變數i(範圍為0~65535)
for(i=xms;i>0;i--) //執行迴圈體xms次
for(j=115;j>0;j--); //延時1ms(給i賦1ms的延時值,執行i--指令115次為1ms)
}