新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 市場分析 > 將7段顯示連接到8051

        將7段顯示連接到8051

        作者: 時間:2023-04-14 來源:電子產(chǎn)品世界 收藏

        七段顯示器是用來顯示數(shù)字信息的。七段顯示器可以顯示從0到9的數(shù)字,甚至我們可以顯示一些字符,如A, b, C, H, E, e, F等。這些都是非常流行的,并且有很多的應(yīng)用。因此,在這個項目中,我將向你展示一個是如何通過連接來工作的。

        本文引用地址:http://www.104case.com/article/202304/445604.htm

        在開始這個概念之前,先了解一下如何將LED與連接。

        這篇文章描述了如何將七段顯示器連接到AT89C51。這個系統(tǒng)以預(yù)定的延遲連續(xù)顯示從0到9的數(shù)字。在這個過程中,我將設(shè)計兩個電路:一個是單數(shù)7段顯示的電路,另一個是由4位7段顯示的電路。 

        電路原理

        七段顯示器內(nèi)部由8個LED組成。在這些LED中,7個LED用于指示數(shù)字0至9,一個LED用于指示小數(shù)點。一般來說,七段顯示有兩種類型,一種是共陰極,另一種是共陽極。

        在共陰極情況下,所有LED的陰極被綁在一起,并被標記為com.而陽極則被單獨留下。在共陽極情況下,七段顯示器的所有陽極被綁在一起,陰極則被自由放置。下圖顯示了七段式顯示器的內(nèi)部連接。

        Internal connections of seven segment

        七段式顯示器的內(nèi)部連接

        在第一個電路中,我將把共陰極單數(shù)七段顯示器連接到,而在第二個電路中,我將把共陽極型四位七段顯示器連接到8051

        電路圖

        電路1:將連接到8051(單數(shù) - CC)。

        在第一個電路中,我將一個單數(shù)7段顯示器與8051連接起來。7段顯示器是共陰極類型的。

        Interfacing 7 Segment Display to 8051 Single Digit Circuit

        7段顯示器與8051單數(shù)電路的連接

        電路2:7段顯示器與8051的接口(4位數(shù) - CA)。

        在第二個電路中,我將一個4位的7段顯示器連接到8051,顯示類型為共陽極。

        Interfacing 7 Segment Display to 8051 4-Digit Circuit

        7段顯示器與8051 4位數(shù)電路的連接

        電路元件

        AT89C51單片機

        AT89C51編程板

        編程電纜

        12V直流電池或適配器

        共陰極7段顯示器

        共陽極4位7段顯示器

        電阻器 - 10KΩ X 2, 330Ω, 1KΩ X 8, 470Ω X 4

        1KΩ X 8 電阻器包 

        33pF 陶瓷電容 X 2 

        11.0592 MHz晶體

        10μF 電解電容

        2N2222 NPN 晶體管 X 4

        按鈕

        連接線

        電路設(shè)計

        電路1

        在這里,共陰極七段被用來顯示數(shù)字。在這個電路中,7段的a至h腳與微控制器的2號端口相連,com腳通過330歐姆的電阻與地相連。這個電阻是用來降低電壓的。由于我們使用的是共陰極七段,我們需要發(fā)送LOGIC 1到各段,使其發(fā)光。

        圖中顯示了共陰極七段的結(jié)構(gòu)。這里用點來表示小數(shù)點。這里所有LED的陰極都連接到Gnd引腳。該LED的工作電壓為2-3V,但從控制器中我們將得到5V的電壓,因此為了降低剩余的電壓,我們必須通過電阻將a至g引腳連接到控制器。

        Common cathode 7 segment Display

        共陰極7段顯示器

        電路2

        由于第二個電路中使用的4位7段顯示器是共陽極類型的,我們需要通過公共終端來驅(qū)動LED段。我使用了4個NPN晶體管來驅(qū)動這4個共陽極,晶體管由8051控制。

        對于a至h段,它們被連接到8051的PORT0引腳。

        數(shù)字驅(qū)動模式

        為了在7段上顯示數(shù)字,我們需要在各段上顯示不同的邏輯組合。例如,如果你想在7段上顯示數(shù)字3,那么你需要在a、b、c、d和g段上發(fā)光。下面的表格顯示了我們需要從PORT2發(fā)送的十六進制十進制數(shù)值,以顯示0到9的數(shù)字。

        1681440913467909.png

        注意:這些值只適用于共陰極顯示器。如果你想驅(qū)動共陽極顯示器,那么你必須取每一位的補碼,并替換代碼中的十六進制值(我已經(jīng)在第二個電路的代碼中做了)。

        算法

        對于電路1

        首先,在一個數(shù)組中初始化所有段位的十六進制值。

        unsigned char arr[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67};

        現(xiàn)在進行for循環(huán),將數(shù)組值分配給PORT2,并有一定的時間延遲。

        for (i=0;i<10;i++)


                                {


                                            P2=arr[i];


                                            delay_ms(500);


                                }

        對于電路2

        首先在一個數(shù)組中初始化所有段位的十六進制值。

        unsigned char ch[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}

        2. 根據(jù)數(shù)值,切換數(shù)字。


        void display (unsigned long int n)


              {


                  led=ch[n/1000];


                  sw1=1;


                  sdelay(30);


                  sw1=0;


                  led=ch[(n/100)%10];


                  sw2=1;


                  sdelay(30);


                  sw2=0;


                  led=ch[(n/10)%10];


                  sw3=1;



                  sdelay(30);


                  sw3=0;


                  led=ch[n%10];


                  sw4=1;


                  sdelay(30);


                  sw4=0;


             }

        如何操作?

        首先將程序刻錄到單片機上

        按照電路圖的要求進行連接

         確保7段的a至g引腳分別連接到第一個電路的P2.0至P2.6和第二個電路的PORT0引腳。

        打開電源,你可以觀察到在第一個電路中,數(shù)字0到9將連續(xù)顯示,并有一定的延遲,在第二個電路中,數(shù)字0到9999將顯示在4位7段顯示器上。

        切換電源。

        應(yīng)用

        七段顯示器被廣泛用于數(shù)字鐘中,以顯示時間。

        在電子儀表中用于顯示數(shù)字信息。

        用在儀表盤中

        用于數(shù)字讀出顯示器。

        局限性

        為了顯示大的信息,復(fù)雜性增加。

        不可能在七段上顯示符號。



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 西丰县| 长海县| 仁怀市| 肥城市| 潞西市| 雅安市| 西充县| 青浦区| 宜宾市| 岑巩县| 读书| 桐乡市| 潜江市| 子长县| 客服| 克什克腾旗| 五华县| 昌乐县| 广丰县| 商水县| 宿松县| 克什克腾旗| 宽甸| 宜州市| 九江市| 交口县| 山丹县| 华容县| 新丰县| 壶关县| 江安县| 青浦区| 广水市| 广河县| 土默特右旗| 湘乡市| 眉山市| 奉节县| 新龙县| 玛多县| 宁南县|