一.數(shù)碼管基礎知識
LED數(shù)碼管是由多個發(fā)光二極管封裝在一起組成“8”字型的器件,引線已在內部連接完成,只需引出它們的各個筆劃,公共電極。LED數(shù)碼管常用的段數(shù)一般為7段,有的另加一個小數(shù)點 。LED數(shù)碼管根據(jù)LED的接法不同,分為共陽和共陰兩類 。1.共陽極數(shù)碼管指八段數(shù)碼管的八段發(fā)光二極管的陽極(正極)都連在一起,而陰極對應的各段可分別控制,如圖a所示。
2.共陰極數(shù)碼管指八段數(shù)碼管的八段發(fā)光二極管的陰極(負極)都連在一起,而陽極對應的各段分別控制,如圖b所示。
二.靜態(tài)數(shù)碼管(以共陽極為例)
1.原理分析LED 發(fā)光二極管的正極共同接在VCC上,這里以單片機P1口為例,當P1口對應引腳為0(即低電平)時數(shù)碼管的該段發(fā)光二極管亮。
2.共陽極數(shù)碼管段選編碼
顯示0到F的編碼:0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e
3.例程單個數(shù)碼管顯示0到F:
#include
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
三.動態(tài)數(shù)碼管(以共陰極為例)
1.原理分析動態(tài)顯示是多個數(shù)碼管,交替顯示,利用人的視覺暫停作用使人看到多個數(shù)碼管同時顯示的效果。就像我們看的電影是有一幀一幀的畫面顯示的,當速度夠快的時候我們看到它就是動態(tài)的。當我們顯示數(shù)碼管的速度夠快的時候,也就可以看到它們是同時顯示了。
2.數(shù)碼管動態(tài)掃描的一般步驟(1).給對應的IO口賦位選編碼選擇讓哪一位亮。 (2).給選中的數(shù)碼管賦段選編碼,使其顯示對應的數(shù)字或字母。 (3).適當延時使其顯示穩(wěn)定(特別注意延時不宜過長) (4).消隱,即消除上一次IO輸出段碼對本次段碼的影響。
3.共陰極數(shù)碼管編碼(1).位選編碼 位選即讓第幾個數(shù)碼管顯示,以8個數(shù)碼管為例 讓第1到8個顯示的編碼:0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f
(2).段選編碼 段選即讓數(shù)碼管顯示什么,共陰極數(shù)碼管給1(即高電平)時該段亮 顯示0到F:0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x7f *位選和段選的編碼還與電路設計有關,具體情況請根據(jù)電路圖接線具體分析
4 .例程讓八位數(shù)碼管顯示穩(wěn)定的0到7:
#include
{ unsigned int i,j; for(i=z;i>0;i--) for(j=110;j>0;j--);
}void main(void)
{ unsigned char i; for(i=0;i<8;i++)
{
P0=wei[i]; //位選,選擇讓哪一位亮
P1=duan[i]; //段選,讓數(shù)碼管顯示什么
delay_ms(2); //延時使顯示充分
P1=0x00; //消隱
}
}
-
led
+關注
關注
240文章
22905瀏覽量
650103 -
51單片機
+關注
關注
272文章
5689瀏覽量
122159 -
數(shù)碼管
+關注
關注
31文章
1869瀏覽量
90518
原文標題:51單片機數(shù)碼管詳解
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論