?? 漸明漸暗彩燈.c
字號:
/*************************************************************
* 程序名 * 漸明漸暗彩燈
* 編寫人 * 杜 洋
* 日 期 * 2007-8-25
* 日 志 * 2007-8-25 開始編寫
/*************************************************************/
/*************************************************************
* 頭文件定義 *
/*************************************************************/
#include <AT89X52.h>
/*************************************************************
* IO定義 *
/*************************************************************/
sbit LED = P1 ^ 0; //定義P1.0為LED控制口,低電平使能
/*************************************************************
* 毫秒級延時函數 *
/*************************************************************/
void delay (unsigned int d){ //延時功能函數,由d決定延時長度
unsigned char i;
while( --d != 0){
for(i = 0; i < 2; i++);
}
}
/*************************************************************
* 主函數 *
實驗板上連接到P1.0上的LED逐漸點亮再逐漸熄滅
/*************************************************************/
void main (void){
unsigned char a, b;//a控制延時長度 b控制循環周期
while (1){
LED = 1;
a = 0x00;
for (b=250; b>0; b--){
a++;
delay (a); //延時長度隨a而改變
LED = 0;
a = ~a; //a值取反,決定燈滅時的占空比
delay (a);
LED = 1;
a = ~a; //a值取反 使a回到原值繼續循環
}
LED = 0; //亮起LED
a = 0x00;
for (b=250; b>0; b--){
a++;
delay (a);
LED = 1;
a = ~a;
delay (a);
LED = 0;
a = ~a;
}
LED = 1;
}
}
/*************************************************************
* DoYoung.net 電子技術 -- 創造獨立資源 * www.doyoung.net *
/*************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -