0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于51單片機(jī)的數(shù)碼管設(shè)計(jì)

天才小貍花 ? 來源:Sigle_chip ? 作者:Sigle_chip ? 2022-09-03 10:01 ? 次閱讀

導(dǎo)語

數(shù)碼管/LED點(diǎn)陣是嵌入式系統(tǒng)中常見的顯示方案,我們通過數(shù)碼管可以將代碼運(yùn)行的結(jié)果可視化出來,是一種常見的顯示器件,相對(duì)于屏幕,數(shù)碼管成本低,被廣泛的運(yùn)用在各類小型家電,工業(yè)控制中。學(xué)會(huì)使用數(shù)碼管,對(duì)于理解C語言控制GPIO有著很大的幫助。

數(shù)碼管

數(shù)碼管本質(zhì)上是多個(gè)發(fā)光的LED等封裝在一起,通過不同的LED燈點(diǎn)亮,使得數(shù)字或者符號(hào)顯示出來,常見的由八段數(shù)碼管,包括小數(shù)點(diǎn)在內(nèi)共有8個(gè)LED燈封裝在一起,其顯示符號(hào)范圍較廣,配合封裝顯示可有更廣泛的顯示,被廣泛使用。

其他更復(fù)雜的如米字?jǐn)?shù)碼管可以顯示數(shù)字和26個(gè)英文字母,但其控制更加復(fù)雜,不常使用。

由于采用LED燈作為顯示光源,由此數(shù)碼管也存在共陰極和共陽極,其共陰極和共陽極控制有所區(qū)別。

通過選擇這些數(shù)碼管的開啟,其dp,gfedcba的端口順序排列可以產(chǎn)生一個(gè)8位2進(jìn)制數(shù)來表示亮滅信息,并在C51中用HEX放在uchar數(shù)組中進(jìn)行使用。

//共陰極:位選為低電平(即0)選中數(shù)碼管,各段選為高電平(即1接+5V時(shí))選中各數(shù)碼段(0~f)

//共陰數(shù)碼管段選表,無小數(shù)點(diǎn):
unsigned char code distab[16] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

//共陰數(shù)碼管段選表,有小數(shù)點(diǎn):
unsigned char code distab[16] = {0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd, 0x87,0xff,0xef,0xf7,0xfc,0xb9,0xde,0xf9,0xf1};

//共陰數(shù)碼管位選表-8個(gè)
unsigned char code distab[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};//位選

/*******************************************************************************************************************/

//共陽極:位選為高電平(即1)選中數(shù)碼管,各段選為低電平(即0接地時(shí))選中各數(shù)碼段(0~f)
元器件是電路良好運(yùn)行的基本保證,找元器件現(xiàn)貨上唯樣商城,原廠授權(quán)正品保障,品類齊全。
//共陽數(shù)碼管段選碼表,無小數(shù)點(diǎn):
unsigned char code distab[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

//共陽數(shù)碼管段選碼表,有小數(shù)點(diǎn):
unsigned char code distab[16]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78, 0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0e};


//共陽數(shù)碼管位選表-8個(gè)
unsigned char code distab[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//位選

1位八段數(shù)碼管一般會(huì)引出9個(gè)引腳,其中7個(gè)引腳顯示數(shù)字(或某些字母),1個(gè)顯示小數(shù)點(diǎn),1個(gè)作為片選端。

n位一般引出n + 8引腳,n個(gè)片選引腳,8個(gè)顯示引腳為共享引腳。

元器件是電路良好運(yùn)行的基本保證,找元器件現(xiàn)貨上唯樣商城,原廠授權(quán)正品保障,品類齊全。

靜態(tài)顯示

何為片選信號(hào)?以共陰極為例,其公共引腳為低電平時(shí),其他8個(gè)控制引腳的電平才有效果。若為高電平,則IO操作對(duì)當(dāng)前位置無效。

當(dāng)片選信號(hào)全部打開時(shí),8個(gè)顯示IO的操作將顯示在兩位數(shù)碼管上,這就是數(shù)碼管的靜態(tài)顯示,

元器件是電路良好運(yùn)行的基本保證,找元器件現(xiàn)貨上唯樣商城,原廠授權(quán)正品保障,品類齊全。

動(dòng)態(tài)顯示

利用人眼的視覺暫留,快速的切換數(shù)碼管的片選信號(hào),同時(shí)切換位選信號(hào)(8個(gè)顯示IO的電平操作),便可以達(dá)到在人眼看來可以顯示多位數(shù)字0-99。通過增加更多的數(shù)碼管,便可以顯示更多的系統(tǒng)狀態(tài)。

元器件是電路良好運(yùn)行的基本保證,找元器件現(xiàn)貨上唯樣商城,原廠授權(quán)正品保障,品類齊全。

缺陷與對(duì)策

我們可以直接將數(shù)碼管直接接在單片機(jī)的IO上去驅(qū)動(dòng),但在多數(shù)的時(shí)候,我們不會(huì)去這樣做。多位數(shù)碼管將在系統(tǒng)中占用大量的IO,在一些IO豐富的單片機(jī)上這算不了什么,但在對(duì)于引腳較少的單片機(jī)中,我們可以通過增加外圍電路來解決這個(gè)問題。

鎖存器

對(duì)于常見于單片機(jī)學(xué)習(xí)板上多以鎖存器為主,如74HC573芯片,包含八路3態(tài)輸出的非反轉(zhuǎn)透明鎖存器。鎖存器同它的名字一樣,他可以將一些信號(hào)鎖上并”保存“起來。

當(dāng)鎖存使能端LE為高時(shí),這些器件的鎖存對(duì)于數(shù)據(jù)是透明的。單片機(jī)的輸入會(huì)直接通過芯片傳向數(shù)碼管。即D端口和O端口相連。

當(dāng)鎖存使能變低時(shí),單片機(jī)的輸入對(duì)于74HC573芯片的輸出不在有影響,當(dāng)輸入的數(shù)據(jù)消失時(shí),在芯片的輸出端,數(shù)據(jù)仍然保持;即芯片輸出取決于使能變低前輸入的數(shù)據(jù),舊數(shù)據(jù)可以保持,繼續(xù)控制數(shù)碼管。

這樣我們就可以使用8個(gè)IO與對(duì)應(yīng)的2個(gè)芯片使能IO,控制8位數(shù)碼管,其具體代碼實(shí)現(xiàn)可去理解例程,本文不做解釋。

元器件是電路良好運(yùn)行的基本保證,找元器件現(xiàn)貨上唯樣商城,原廠授權(quán)正品保障,品類齊全。

數(shù)碼管顯示驅(qū)動(dòng)芯片

CH450是一款數(shù)碼管顯示驅(qū)動(dòng)芯片,可以用于驅(qū)動(dòng) 6位數(shù)碼管或 48點(diǎn) LED矩陣,可通過I2C接口與單片機(jī)進(jìn)行通信

其數(shù)碼管被廣泛運(yùn)用,理解GPIO與鎖存器便可以熟練使用數(shù)碼管器件。

元器件是電路良好運(yùn)行的基本保證,找元器件現(xiàn)貨上唯樣商城,原廠授權(quán)正品保障,品類齊全。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    273

    文章

    5697

    瀏覽量

    123014
  • 數(shù)碼管
    +關(guān)注

    關(guān)注

    32

    文章

    1874

    瀏覽量

    90878
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于51單片機(jī)數(shù)碼管萬年歷

    基于51單片機(jī)數(shù)碼管萬年歷基于51單片機(jī)數(shù)碼管萬年歷基于
    發(fā)表于 11-18 17:16 ?124次下載

    51單片機(jī)數(shù)碼管顯示學(xué)號(hào)

    51單片機(jī)數(shù)碼管顯示學(xué)號(hào),學(xué)學(xué)數(shù)碼管吧。初學(xué)者多看看。
    發(fā)表于 04-05 16:15 ?54次下載

    基于51單片機(jī)數(shù)碼管電子鐘

    方案介紹51單片機(jī)數(shù)碼管電子鐘可以通過按鍵設(shè)置時(shí)間以及12小時(shí)制或24小時(shí)制;數(shù)碼管顯示時(shí)間。
    發(fā)表于 12-15 17:11 ?51次下載

    基于51單片機(jī)數(shù)碼管動(dòng)態(tài)掃描顯示12345678資料源程序

    基于51單片機(jī)數(shù)碼管動(dòng)態(tài)掃描顯示12345678設(shè)計(jì)資料源程序
    發(fā)表于 04-26 15:21 ?10次下載

    基于51單片機(jī)數(shù)碼管電子鐘設(shè)計(jì)資料源程序文件

    基于51單片機(jī)數(shù)碼管電子鐘設(shè)計(jì)資料源程序文件
    發(fā)表于 04-26 15:17 ?9次下載

    基于51單片機(jī)數(shù)碼管遙控解碼設(shè)計(jì)資料源程序

    基于51單片機(jī)數(shù)碼管遙控解碼設(shè)計(jì)資料源程序
    發(fā)表于 04-26 15:13 ?0次下載

    基于AT89C51單片機(jī)數(shù)碼管顯示的溫控電機(jī)Proteus仿真

    基于AT89C51單片機(jī)數(shù)碼管顯示的溫控電機(jī)Proteus仿真及程序
    發(fā)表于 05-04 15:01 ?13次下載

    基于51單片機(jī)數(shù)碼管顯示電子時(shí)鐘例程源代碼

    基于51單片機(jī)數(shù)碼管顯示電子時(shí)鐘例程源代碼
    發(fā)表于 05-12 16:33 ?46次下載

    基于89C51單片機(jī)數(shù)碼管閃爍源程序

    基于89C51單片機(jī)數(shù)碼管閃爍源程序
    發(fā)表于 05-15 10:29 ?3次下載

    基于89C51單片機(jī)數(shù)碼管顯示動(dòng)態(tài)數(shù)據(jù)源程序

    基于89C51單片機(jī)數(shù)碼管顯示動(dòng)態(tài)數(shù)據(jù)源程序
    發(fā)表于 05-15 10:28 ?2次下載

    基于89C51單片機(jī)數(shù)碼管消隱源程序

    基于89C51單片機(jī)數(shù)碼管消隱源程序
    發(fā)表于 05-15 10:27 ?1次下載

    基于89C51單片機(jī)數(shù)碼管循環(huán)右移1源程序

    基于89C51單片機(jī)數(shù)碼管循環(huán)右移1源程序
    發(fā)表于 05-15 11:21 ?1次下載

    基于89C51單片機(jī)數(shù)碼管循環(huán)右移2源程序

    基于89C51單片機(jī)數(shù)碼管循環(huán)右移2源程序
    發(fā)表于 05-15 11:20 ?1次下載

    基于89C51單片機(jī)數(shù)碼管右移1源程序

    基于89C51單片機(jī)數(shù)碼管右移1源程序
    發(fā)表于 05-15 11:15 ?0次下載

    基于51單片機(jī)數(shù)碼管顯示撥碼開關(guān)編碼仿真代碼

    基于51單片機(jī)數(shù)碼管顯示撥碼開關(guān)編碼仿真設(shè)計(jì)資料
    發(fā)表于 05-22 16:02 ?5次下載