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

                                        對于常用的數碼管,你有多熟悉?

                                        發布時間:2020-02-03 責任編輯:lina

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

                                        對于常用的數碼管,你有多熟悉?
                                        共陰數碼管腳位對應圖
                                         
                                        三、驅動方式
                                         
                                        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單片機設計目標:通過編寫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大小的電阻。否則,很容易燒掉,此外用萬用表的測電阻檔就可將其點亮,足以說明其電流之小。
                                         
                                         
                                         
                                        推薦閱讀:
                                        空氣流量傳感器故障影響大,如何檢測?
                                        淺析電感式壓力傳感器特性及應用
                                        PCB板上為什么要“貼黃金”?看看你的板子上有“金手指”嗎?
                                        淺析EMI磁珠6大基本特性
                                        詳解智能手環的布局布線注意事項
                                        要采購傳感器么,點這里了解一下價格!
                                        特別推薦
                                        技術文章更多>>
                                        技術白皮書下載更多>>
                                        熱門搜索
                                        ?

                                        關閉

                                        ?

                                        關閉

                                        国产精品亚洲АV无码播放|久久青青|老熟妇仑乱视频一区二区|国产精品经典三级一区|亚洲 校园 春色 另类 激情