|
單片機源程序如下:- /**************************************************************************************
- * LED燈閃爍實驗 *
- 實現(xiàn)現(xiàn)象:下載程序后D1指示燈點會間隔500MS閃爍一次
- 注意事項:無
- ***************************************************************************************/
- // 思路是讓LED點亮一段時間,然后讓LED熄滅一段時間,點亮的程序是讓led=0;熄滅就是讓led=1;
- // 再加上一個延時函數(shù)delay()即可實現(xiàn)LED燈閃爍
- #include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
- typedef unsigned int u16; //類型重定義
- void LedOn (void); //LedOn()函數(shù)聲明 開燈
- void LedOff (void); // 關(guān)燈
- void Delay(u16 i); //可以向函數(shù)內(nèi)傳遞一個無符號整型的參數(shù) (0-65535)
- sbit led=P2^0; //將單片機的P2.0端口定義為led
- /*******************************************************************************
- * 函 數(shù) 名 : main
- * 函數(shù)功能 : 主函數(shù)
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void main(void) //程序從main函數(shù)開始執(zhí)行
- {
- while(1) //1表示條件表達(dá)式值為真,程序一直循環(huán)
- {
- LedOn(); //函數(shù)調(diào)用
- Delay(50000);
- LedOff();
- Delay(50000);
- }
- }
- /*******************************************************************************
- * 函 數(shù) 名 : LedOn
- * 函數(shù)功能 : 點亮一顆LED燈
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void LedOn(void)
- {
- led=0; led=0; //P2.0端口設(shè)置為低電平
- }
- /*******************************************************************************
- * 函 數(shù) 名 : LedOff
- * 函數(shù)功能 : 讓LED燈熄滅
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void LedOff(void)
- {
- led=1; led=1; //P2.0端口設(shè)置為高電平
- }
- /*******************************************************************************
- * 函 數(shù) 名 : Delay
- * 函數(shù)功能 : 延時一段時間,i=1時大約延時10us,程序使用12MHZ晶振調(diào)試的延時時間
- * 輸 入 : 0-65535
- * 輸 出 : 無
- *******************************************************************************/
- void Delay(u16 i)
- {
- while(i--);
- }
復(fù)制代碼
|
評分
-
查看全部評分
|