㈠ 單片機LED數碼管電路中管腳和所控制的發光二極體的一一對應關系,如圖
單片機LED數碼管電路中,管腳和所控制的發光二極體的一一對應關系主要取決於數碼管的類型以及字模的定義。
1. 共陰極數碼管: 對應關系:在共陰極數碼管中,所有欄位的陰極連在一起作為公共端,而每個欄位的陽極分別引出。當公共端接地,而某個欄位的陽極接高電平時,該欄位的發光二極體就會點亮。 管腳控制:每個欄位對應一個管腳,通過控制這些管腳的高低電平,可以控制相應欄位的點亮與熄滅。
2. 共陽極數碼管: 對應關系:與共陰極相反,共陽極數碼管中所有欄位的陽極連在一起作為公共端,而每個欄位的陰極分別引出。當公共端接高電平,而某個欄位的陰極接低電平時,該欄位的發光二極體就會點亮。 管腳控制:同樣,每個欄位對應一個管腳,但控制邏輯與共陰極相反。通過控制這些管腳的高低電平,同樣可以控制相應欄位的點亮與熄滅。
3. 字模的定義: 概念:字模是指要顯示的字元的數字化描述。例如,要顯示數字0,就需要根據數碼管的封裝和欄位定義,確定哪些欄位需要點亮。 應用:在程序中預先定義好各個字元的字模,顯示時直接引用即可。更換了不同定義的元器件,只需更換相應的字模即可。
總結:單片機LED數碼管電路中,管腳和所控制的發光二極體的一一對應關系取決於數碼管的類型以及字模的定義。通過控制管腳的高低電平,可以實現數碼管的字元顯示。
㈡ 電路中,單片機可以直接接發光二極體嗎
可以直接接發光二極體,每個IO口最大的灌電流可達20毫安,驅動電流也有10多毫安,因此點亮發光二極體沒有問題,只是電路中需要加一個限流電阻,將電流控制在10毫安以內為宜。
㈢ 發光二極體的陰極或陽極引腳都可以和單片機引腳相連
當然都可以,接陽極時,單片機的I/O口是輸出驅動電流,高電平時亮;接陰極時,單片機的I/O口是灌入驅動電流,低電平時亮。根據需要選擇。但對於51單片機,一般I/O口屬於集電極輸出,所以灌電流可以比較大,比如可達35mA左右,而輸出(拉電流)電流比較小,一般小於10mA,所以通常使用陰極接單片機方式,可獲得較大電流和較高亮度。
㈣ 為什麼單片機上第一個發光二極體是0xfe還有其他的燈呢分別是什麼
和發光二極體的接法有關,二極體陰極端連單片機,輸出低電平0就會點亮,0xfe對應的引腳信號為11111110,其中的0就是輸出給第一個發光二極體陰極端的低電平信號。其他的燈對應的輸出低電平編碼信號同樣點亮。
例如:假設單片機的P0口接了八個LED,其中JPP0接的是高電平5V,而L0.0到L0.7接的分別是P0.7到P0.0這樣的話如果P0.7到P0.0上電平是高電平,那麼這個led的壓降就是0,led不亮,如果P0.7到P0.0上電平是低電平,那麼led上就會產生壓降,led就會亮。
#include<reg51.h> /*包含單片機寄存器的頭文件*/
void main(void){while(1){P0=0xfe; /*第一個燈亮*/ P0=0xff; /*第一個燈滅*/}}
P0=0xfe,相當於P0=11111110,這時候P0.0=0,燈L0.7亮,然後P0=0xff,相當於P0=11111111,這時候P0.0=1,燈L0.7滅,然後由於這兩句是放在while(1)中的由於其中1是while{}中的語句執行的條件,由於1始終為真,所以這兩句循環執行。燈L0.7就在不斷閃爍,亮滅。
(4)單片機與發光二極體擴展閱讀:
相關發光二極體引腳點亮編碼:
原理:給二極體陽極和陰極加上正向電壓時,二極體導通。 當給陽極和陰極加上反向電壓時,二極體截止。 因此,二極體的導通和截止,則相當於開關的接通與斷開。
0XFE=1111 1110 表示一個燈亮。0xfd = 1111 1101 第二個燈亮。0xfb = 1111 1011 第三個燈亮。0xf7 = 1111 0111 第四個燈亮。0xef = 1110 1111 第五個燈亮。0xdf = 1101 1111 第六個燈亮。0xbf = 1011 1111 第七個燈亮。0x7f = 0111 1111 第八個燈亮。