<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 51單片機學(xué)習之4-數碼管

51單片機學(xué)習之4-數碼管

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏
第11集

一、數碼管工作原理

本文引用地址:http://dyxdggzs.com/article/201611/323853.htm



數碼管顯示亮度高,響應速度快,可以在一些比較差的環(huán)境中使用。有1位、2位、4位、8位連體等。。。也有專(zhuān)用于顯示時(shí)間的數碼管。

如圖,一位數碼管由8個(gè)二極管構成,7個(gè)構成“日”字型,1個(gè)是小圓點(diǎn)。分共陰和共陽(yáng)。共陰:所有二極管的負極連接在一起,接到電源負極。共陽(yáng):所有二極管的正極連接在一起,接到電源正極。(圖(a)引腳畫(huà)錯了。)

驅動(dòng)的原理都很簡(jiǎn)單,如共陽(yáng)型數碼管的驅動(dòng)。圖(b)右邊的電路圖可以看出,所有的二極管正極都接在電源正極,a、b、c、d、e、f、g、dp都接在單片機的IO口上,在《51單片機復習筆記1》:http://www.51hei.com/mcu/2111.html中介紹過(guò)驅動(dòng)二極管的原理,所以這里只需要在相應的二極管負極給低電平即可讓相應的二極管發(fā)光。

這里補充一下,為什么給高電平二極管就不亮,給低電平就亮呢。因為單片機是TTL電平,也就是說(shuō)高電平即輸出5V,低電平就不輸出電壓0V,二極管的正極接在電源的正極那就是5V,那么二極管的負極如果也給高電平的話(huà),那么就相當于在二極管的負極也接到了5V,二極管兩端都是5V沒(méi)有電勢差,就相當于沒(méi)有通電一樣,自然不會(huì )發(fā)光。給低電平即0V,那么二極管就有一個(gè)5V的電勢差且是正向偏置,二極管自然就發(fā)光了,共陰型恰好相反。

看下圖(設共陽(yáng)型),假如我們要讓數碼管顯示‘1’,那么只需要給b、c段的二極管低電平,其他為高電平即可讓數碼管顯示‘1’。假如我們要讓數碼管顯示‘2’,那么只給a、b、g、e、d低電平即可讓數碼管顯示‘2’。要顯示什么,只給相應的發(fā)光二極管低電平即可。



那么在實(shí)際編程中應該怎么寫(xiě)程序呢。

我們將a、b、c、d、e、f、g、dp八個(gè)引腳接到單片機的P1口,P1^0←a、P1^1←b.....P1^7←dp。畫(huà)紅框的是低四位。那么如果要顯示2。

P1^0=a=0、P1^1=b=0、P1^6=g=0、P1^4=e=0、P1^3=d=0

剩余的為1那么就是:10100100=0xA4

程序代碼中將0xA4賦值給P1即可,如P1=0xA4;看圖。








由于數碼管需要占用單片機的IO口很多,所以一般會(huì )搭配74HC573芯片來(lái)擴展IO口?!?1單片機復習筆記1》有介紹該芯片的使用方法。驅動(dòng)原理一樣。

數碼管顯示方式有兩種:

靜態(tài)顯示:其實(shí)和上面一樣,如P1=0xA4;那么P1一直維持0xA4那么數碼管的每一段二極管的狀態(tài)都會(huì )保持字形不變。變動(dòng)P1的電平狀態(tài)才會(huì )改變新字形。優(yōu)點(diǎn)是占用CPU時(shí)間少。缺點(diǎn)是占用IO口多硬件設計復雜,特別是控制多位數碼管時(shí)尤為占用IO口,成本較高。


動(dòng)態(tài)顯示:動(dòng)態(tài)其實(shí)就是利用發(fā)光二極管的余暉和人眼視覺(jué)暫留作用??刂贫辔粩荡a管時(shí),將所有數碼管的段選并聯(lián)在一起,由位選線(xiàn)控制是哪位數碼管接受段選編碼。如下圖一樣。

例如:

P0組是并聯(lián)所有數碼管的段選。P2^6、P2^7選擇哪位數碼管。我要顯示520,那么首先選中第一位數碼管,然后送數字5的段編碼控制段選的P0口。

然后再選中第二位數碼管,再送數字2的段選編碼給P0,這時(shí)候第一位數碼管雖然斷電,但是二極管并沒(méi)有瞬間熄滅,所以還有余暉保持字形。
繼續再選中第三位數碼管送數字0的段選編碼給P0,這時(shí)候第一、第二位數碼管雖然都斷電,但由于切換速度太快,余暉仍沒(méi)有完全熄滅就造成三位數碼管同時(shí)顯示不同的數字字型的假象。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 51單片機數碼

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>