LED有兩種連接方式,一種是共陽極連接,一種是共陰極連接。
共陽極連接是指多個LED的陽極連接在一起,接到電源正極,而各自的陰極接到單片機的輸出引腳。這樣,當單片機輸出低電平時,相應的LED就會點亮;當輸出高電平時,相應的LED就會熄滅。
共陰極連接是指多個LED的陰極連接在一起,接到電源負極,而各自的陽極接到單片機的輸出引腳。這樣,當單片機輸出高電平時,相應的LED就會點亮;當輸出低電平時,相應的LED就會熄滅。
我們可以根據(jù)上述的原理來實現(xiàn)一個LED閃爍,讓你的LED真正會“眨眼睛”
準備知識:
在實現(xiàn)LED閃爍之前,我們需要學習一下一些基本的知識。
1、typedef(重定義)的功能使用
C語言允許用戶使用 typedef 關鍵字來定義自己習慣的數(shù)據(jù)類型名稱,來替代系統(tǒng)默認的基本類型名稱、數(shù)組類型名稱、指針類型名稱與用戶自定義的結(jié)構(gòu)型名稱、共用型名稱、枚舉型名稱等。一旦用戶在程序中定義了自己的數(shù)據(jù)類型名稱,就可以在該程序中用自己的數(shù)據(jù)類型名稱來定義變量的類型、數(shù)組的類型、指針變量的類型與函數(shù)的類型等。
例如:
typedef unsigned char u8;
typedefunsigned int ul6;
重新定義一些常用的關鍵詞,可以增強程序的可移植性,因為在不同的編譯軟件上面,C語言的數(shù)據(jù)類型的關鍵詞的位寬是不一樣的。
2、While循環(huán)函數(shù)
while循環(huán)函數(shù)語句的意義:當函數(shù)值內(nèi)的循環(huán)條件為真時,則執(zhí)行循環(huán)體內(nèi)的函數(shù)值;當且僅當循環(huán)條件為假時,才會退出循環(huán),程序往下執(zhí)行。
3、delay延時函數(shù)
簡答的以while循環(huán)來做一個延時函數(shù)說明,根據(jù)設定的延時時間i,然后每次循環(huán)一個while程序進行減一計算,直到i為0時才退出延時計算。
void delay(u16 i)
{
while(i--);
}
編寫程序:
有了上述的知識儲備之后,我們在編寫一個LED閃爍的程序,首先要明白,一個LED閃爍,就是要通過接通一段時間,斷開一段時間,這樣反反復復的原理,讓我們的視覺上產(chǎn)生出閃爍現(xiàn)象,有了這個想法之后,我們就可以使用程序?qū)⑾敕ň攥F(xiàn)化。
#include //頭文件
typedef unsigned char u8;
typedef unsigned int u16; //重定義類型
sbit led=P2^0; //定義P2.0引腳為LED
void delay(u16 i) //延時函數(shù)
{
while(i--);
}
void main() //主函數(shù)
{
while(1) //循環(huán)函數(shù),while循環(huán)函數(shù)條件為1,就永遠循環(huán)下去
{
led=1; //LED接通
delay(5000); //延時5000,這個時間不準確,如果非要準確的花需要自己使用小工具來實現(xiàn)最好
led=0; //LED斷開
delay(5000);
}
}

仿真演示:
利用proteus軟件進行仿真具現(xiàn)出來。
可以看到,當我們啟動仿真的時候,那么對應的LED燈就會亮一段時間,然后熄滅一段時間,這樣就能實現(xiàn)了“眨眼睛”了。
-
led
+關注
關注
243文章
24383瀏覽量
685787 -
單片機
+關注
關注
6072文章
45283瀏覽量
661803 -
C語言
+關注
關注
183文章
7638瀏覽量
144328 -
函數(shù)
+關注
關注
3文章
4404瀏覽量
66631 -
LED閃爍
+關注
關注
0文章
29瀏覽量
10168
發(fā)布評論請先 登錄
單片機實現(xiàn)LED燈閃爍的過程
89C52單片機實現(xiàn)LED閃爍的方法
使用STC15系列單片機實現(xiàn)LED閃爍的資料和程序免費下載
使用51單片機的定時器實現(xiàn)LED閃爍的程序免費下載
使用80C51單片機實現(xiàn)LED閃爍的程序和電路圖免費下載
LED閃爍的程序和電路圖及仿真資料免費下載
使用單片機實現(xiàn)閃爍LED的程序和仿真資料免費下載
使用單片機實現(xiàn)LED燈閃爍的程序和仿真工程文件免費下載
單片機零基礎入門(3):實現(xiàn)LED燈閃爍
STM32和C51單片機實現(xiàn)程序設計與仿真測試(LED閃爍)
單片機led燈閃爍實驗總結(jié)_Linux下單片機開發(fā)2(C51):LED閃爍

基于單片機實現(xiàn)LED閃爍
評論