• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

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

    將7段顯示連接到8051

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

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

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

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

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

    電路原理

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

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

    Internal connections of seven segment

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

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

    電路圖

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

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

    Interfacing 7 Segment Display to 8051 Single Digit Circuit

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

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

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

    Interfacing 7 Segment Display to 8051 4-Digit Circuit

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

    電路元件

    AT89C51單片機(jī)

    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è)計(jì)

    電路1

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

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

    Common cathode 7 segment Display

    共陰極7段顯示器

    電路2

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

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

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

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

    1681440913467909.png

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

    算法

    對于電路1

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

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

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

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


                            {


                                        P2=arr[i];


                                        delay_ms(500);


                            }

    對于電路2

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

    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;


         }

    如何操作?

    首先將程序刻錄到單片機(jī)上

    按照電路圖的要求進(jìn)行連接

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

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

    切換電源。

    應(yīng)用

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

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

    用在儀表盤中

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

    局限性

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

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



    評論


    相關(guān)推薦

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

    關(guān)閉
    主站蜘蛛池模板: 故城县| 南康市| 陵水| 万载县| 平泉县| 翁牛特旗| 广州市| 历史| 壶关县| 象山县| 潜山县| 原阳县| 东乌| 西城区| 安龙县| 米林县| 惠东县| 健康| 孟连| 本溪市| 崇州市| 临潭县| 紫金县| 隆回县| 天镇县| 嘉祥县| 桓台县| 龙州县| 安仁县| 景谷| 临汾市| 正宁县| 阿克| 梓潼县| 广饶县| 玛纳斯县| 兴山县| 滦平县| 天长市| 灌阳县| 佛坪县|