你的位置:首頁 > 光電顯示 > 正文

對(duì)于常用的數(shù)碼管,你有多熟悉?

發(fā)布時(shí)間:2020-02-03 責(zé)任編輯:lina

【導(dǎo)讀】數(shù)碼管是嵌入式開發(fā)中比較常用的一個(gè)模塊,本篇文章根據(jù)查閱的資料以及學(xué)習(xí)筆記整理成文,盡可能詳盡的講解常用數(shù)碼管原理和使用方法。有不足和疏忽的地方,請(qǐng)不吝指正。
  
對(duì)于常用的數(shù)碼管,你有多熟悉?
 
數(shù)碼管是嵌入式開發(fā)中比較常用的一個(gè)模塊,本篇文章根據(jù)查閱的資料以及學(xué)習(xí)筆記整理成文,盡可能詳盡的講解常用數(shù)碼管原理和使用方法。有不足和疏忽的地方,請(qǐng)不吝指正。
 
一、工作原理
 
數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。能顯示4位數(shù)字的叫四位數(shù)碼管,當(dāng)然也有多位和只有一位的數(shù)碼管,他們的電氣原理相同。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陽極為低電平時(shí),相應(yīng)字段就不亮。
 
對(duì)于常用的數(shù)碼管,你有多熟悉?
 
二、電氣特性
 
單位數(shù)碼管有十個(gè)管腳,其中有8根是用來點(diǎn)亮a,b,c,d,e,f,dp 共8個(gè)發(fā)光二極管(原理中有介紹),3,8兩個(gè)管腳為公共COM腳,它們相連通且作用相同,可接任意一根。為了更清楚介紹,貼圖如下
 
對(duì)于常用的數(shù)碼管,你有多熟悉?

對(duì)于常用的數(shù)碼管,你有多熟悉?
共陰數(shù)碼管腳位對(duì)應(yīng)圖
 
三、驅(qū)動(dòng)方式
 
1、靜態(tài)驅(qū)動(dòng)也稱直流驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)單片機(jī)的I/O端口進(jìn)行驅(qū)動(dòng),或者使用如BCD碼二-十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的優(yōu)點(diǎn)是編程簡單,顯示亮度高,缺點(diǎn)是占用I/O端口多,如驅(qū)動(dòng)5個(gè)數(shù)碼管靜態(tài)顯示則需要5×8=40根I/O端口來驅(qū)動(dòng),要知道一個(gè)89S51單片機(jī)可用的I/O端口才32個(gè)呢:),實(shí)際應(yīng)用時(shí)必須增加譯碼驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。
 
2、數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。通過分時(shí)輪流控制各個(gè)數(shù)碼管的的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低。
 
四、開發(fā)實(shí)例
 
下面講解一下四位數(shù)碼管的動(dòng)態(tài)驅(qū)動(dòng)顯示,首先看一下接線引腳圖如下。
 
對(duì)于常用的數(shù)碼管,你有多熟悉?
 
接下來用51單片機(jī)設(shè)計(jì)目標(biāo):通過編寫c語言程序經(jīng)編譯連接后下載到單片機(jī)中,使四位數(shù)碼管依次顯示1,2,3,4
 
#define uchar usigned char
#define uint  usigned int
 
//位選控制端口
sbit p20=P2^0;
sbit p21=P2^1;
sbit p22=P2^2;
sbit p23=P2^3;
 
//數(shù)碼管段選編碼數(shù)組,分別為顯示:1,2,3,4的編碼
uchar code BianMa[] ={0x7,0xb,0xd,0xe};
 
//延時(shí)1ms函數(shù)(用于數(shù)碼管動(dòng)態(tài)刷新)
void Delay1ms(int time);
 
void main()
{
while(1)
{
  p20 =0; //共陰極數(shù)碼管低位選有效,表示已選中第一位數(shù)碼管
  P0 =BianMa[0];//通過I/O口P0向數(shù)碼管送段選編碼
  Delay1ms(500);//第一位數(shù)碼管顯示0.5秒,然后換到第二位,依次下去,由于視覺停留和數(shù)碼管余輝,所以感覺四位都在顯示
  p20 =1;
  
  p21 =0;  //第二位亮
  P0 =BianMa[1];
  Delay1ms(500);
  p21 =1;
  
  p22 =0;  //第三位亮
  P0 =BianMa[2];
  Delay1ms(500);
  p22 =1;
  
  p23 =0;  //第四位亮
  P0 =BianMa[3];
  Delay1ms(500);
  p23 =1;
}
 
//延時(shí)函數(shù)體
void Delay1ms(int time
{
  int i,j;
  for(i =time;i>0;i--)
    for(j =110;j>0;j--)
}
 
五、關(guān)于亮度和鎖存器
 
一般來說靜態(tài)驅(qū)動(dòng)的亮度要高于動(dòng)態(tài)驅(qū)動(dòng)的亮度,但不影響使用。實(shí)際使用中為了達(dá)到更好的效果,會(huì)配合鎖存器如74HC573一起使用,可以記憶先前狀態(tài)數(shù)據(jù)直到有新數(shù)據(jù)覆蓋。對(duì)做51單片機(jī)應(yīng)用開發(fā)來說,相對(duì)LCD液晶,液晶模塊編程更方便,樣式更多樣,但是其缺點(diǎn)亮度不夠。這也恰恰是數(shù)碼管的優(yōu)勢(shì),如果做簡單的計(jì)數(shù)顯示,數(shù)碼管是最好選擇。
 
六、使用中注意事項(xiàng)
 
數(shù)碼管的基本組成是發(fā)光二極管,因此其可以通過的電流只有幾mA,接5V直流電源做測試的時(shí)候一定要串上一個(gè)幾十K大小的電阻。否則,很容易燒掉,此外用萬用表的測電阻檔就可將其點(diǎn)亮,足以說明其電流之小。
 
 
 
推薦閱讀:
空氣流量傳感器故障影響大,如何檢測?
淺析電感式壓力傳感器特性及應(yīng)用
PCB板上為什么要“貼黃金”?看看你的板子上有“金手指”嗎?
淺析EMI磁珠6大基本特性
詳解智能手環(huán)的布局布線注意事項(xiàng)
要采購傳感器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉