天天看點

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

數位管是嵌入式開發中比較常用的一個子產品,本篇文章根據查閱的資料以及學習筆記整理成文,盡可能詳盡的講解常用數位管原理和使用方法。有不足和疏忽的地方,請不吝指正。

一、工作原理 數位管是一種半導體發光器件,其基本單元是發光二極管。能顯示4位數字的叫四位數位管,當然也有多位和隻有一位的數位管,他們的電氣原理相同。數位管按段數分為七段數位管和八段數位管,八段數位管比七段數位管多一個發光二極管單元(多一個小數點顯示);按發光二極管單元連接配接方式分為共陽極數位管和共陰極數位管。共陽數位管是指将所有發光二極管的陽極接到一起形成公共陽極(COM)的數位管。共陽數位管在應用時應将公共極COM接到+5V,當某一字段發光二極管的陰極為低電平時,相應字段就點亮。當某一字段的陰極為高電平時,相應字段就不亮。共陰數位管是指将所有發光二極管的陰極接到一起形成公共陰極(COM)的數位管。共陰數位管在應用時應将公共極COM接到地線GND上,當某一字段發光二極管的陽極為高電平時,相應字段就點亮。當某一字段的陽極為低電平時,相應字段就不亮。

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

二、電氣特性 機關數位管有十個管腳,其中有8根是用來點亮a,b,c,d,e,f,dp 共8個發光二極管(原理中有介紹),3,8兩個管腳為公共COM腳,它們相連通且作用相同,可接任意一根。為了更清楚介紹,貼圖如下

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?
51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

共陰數位管腳位對應圖 三、驅動方式 1、靜态驅動也稱直流驅動。靜态驅動是指每個數位管的每一個段碼都由一個單片機的I/O端口進行驅動,或者使用如BCD碼二-十進制譯碼器譯碼進行驅動。靜态驅動的優點是程式設計簡單,顯示亮度高,缺點是占用I/O端口多,如驅動5個數位管靜态顯示則需要5×8=40根I/O端口來驅動,要知道一個89S51單片機可用的I/O端口才32個呢:),實際應用時必須增加譯碼驅動器進行驅動,增加了硬體電路的複雜性。 2、數位管動态顯示接口是單片機中應用最為廣泛的一種顯示方式之一,動态驅動是将所有數位管的8個顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個數位管的公共極COM增加位選通控制電路,位選通由各自獨立的I/O線控制,當單片機輸出字形碼時,所有數位管都接收到相同的字形碼,但究竟是那個數位管會顯示出字形,取決于單片機對位選通COM端電路的控制,是以我們隻要将需要顯示的數位管的選通控制打開,該位就顯示出字形,沒有選通的數位管就不會亮。通過分時輪流控制各個數位管的的COM端,就使各個數位管輪流受控顯示,這就是動态驅動。在輪流顯示過程中,每位數位管的點亮時間為1~2ms,由于人的視覺暫留現象及發光二極管的餘輝效應,盡管實際上各位數位管并非同時點亮,但隻要掃描的速度足夠快,給人的印象就是一組穩定的顯示資料,不會有閃爍感,動态顯示的效果和靜态顯示是一樣的,能夠節省大量的I/O端口,而且功耗更低。 四、開發執行個體 下面講解一下四位數位管的動态驅動顯示,首先看一下接線引腳圖如下。

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

接下來用51單片機設計目标:通過編寫c語言程式經編譯連接配接後下載下傳到單片機中,使四位數位管依次顯示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;//數位管段選編碼數組,分别為顯示:1,2,3,4的編碼uchar code BianMa[] ={0x7,0xb,0xd,0xe};//延時1ms函數(用于數位管動态重新整理)void Delay1ms(int time);void main(){while(1){	p20 =0; //共陰極數位管低位選有效,表示已選中第一位數位管	P0 =BianMa[0];//通過I/O口P0向數位管送段選編碼	Delay1ms(500);//第一位數位管顯示0.5秒,然後換到第二位,依次下去,由于視覺停留和數位管餘輝,是以感覺四位都在顯示	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;}//延時函數體void Delay1ms(int time{	int i,j;	for(i =time;i>0;i--)		for(j =110;j>0;j--)}
           

五、關于亮度和鎖存器 一般來說靜态驅動的亮度要高于動态驅動的亮度,但不影響使用。實際使用中為了達到更好的效果,會配合鎖存器如74HC573一起使用,可以記憶先前狀态資料直到有新資料覆寫。對做51單片機應用開發來說,相對LCD液晶,液晶子產品程式設計更友善,樣式更多樣,但是其缺點亮度不夠。這也恰恰是數位管的優勢,如果做簡單的計數顯示,數位管是最好選擇。 六、使用中注意事項 數位管的基本組成是發光二極管,是以其可以通過的電流隻有幾mA,接5V直流電源做測試的時候一定要串上一個幾十K大小的電阻。否則,很容易燒掉,此外用萬用表的測電阻檔就可将其點亮,足以說明其電流之小。

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

1.RISC-V 處理器嵌入式開發網課上線!

2.剛剛!官方釋出:中美達成第一階段貿易協定,美分階段取消關稅!

3.一幅趣味漫畫,讓你秒懂Linux核心!

4.NXP推出了新一款8位MCU,看看适合你的應用不?

5.手機CPU與電腦CPU性能究竟相差多少?

6.FPGA老大把研發5年的軟體平台開源了!

51單片機按鍵控制數位管0~9_對于常用的數位管,你有多熟悉?

免責聲明:本文系網絡轉載,版權歸原作者所有。如涉及作品版權問題,請與我們聯系,我們将根據您提供的版權證明材料确認版權并支付稿酬或者删除内容。

繼續閱讀