51單片機(jī)動(dòng)態(tài)LED顯示電路編程實(shí)例:上一節(jié)我們講述了單只LED與單片機(jī)的接口電路及編程實(shí)例,目的在于讓初學(xué)者了解LED在單片機(jī)中的應(yīng)用原理,單只LED顯示在實(shí)際應(yīng)用中并無多大用途,一般都是多位的LED顯示。現(xiàn)在我們作進(jìn)一步學(xué)習(xí),我們要講解的是8位LED的顯示原理及實(shí)際的編程方法。這里我們沒有采用多I/O口的8051系列單片機(jī),而是采用了完全兼容C51指令系統(tǒng)的質(zhì)優(yōu)價(jià)廉的AT89C2051單片機(jī),它的軟件編程與C51完全一致。 在多數(shù)的應(yīng)用場合中,我們并不希望使用多I/O端口的單片機(jī),原則上是使用盡量少引腳的器件。在沒有富余端口的情況下,怎樣通過擴(kuò)展電路達(dá)到預(yù)期的目的呢?我們希望通過此例使設(shè)計(jì)人員在實(shí)際應(yīng)用中了解一點(diǎn)電路擴(kuò)展的原理,對(duì)實(shí)際的應(yīng)用有所幫助。 此電路中,74LS273用于驅(qū)動(dòng)LED的8位段碼,8位LED相應(yīng)的"a"—"g"段連在一起,它們的公共端分別連至由74LS138(點(diǎn)擊芯片型號(hào)可瀏覽其詳細(xì)的技術(shù)手冊(cè))譯碼選通后經(jīng)74LS04反相驅(qū)動(dòng)的輸出端。這樣當(dāng)選通某一位LED時(shí),相應(yīng)的地址線(74LS04輸出端)輸出的是高電平,所以我們的LED選用共陽LED數(shù)碼管。 動(dòng)態(tài)掃描的頻率有一定的要求,頻率太低,LED將出現(xiàn)閃爍現(xiàn)象。如頻率太高,由于每個(gè)LED點(diǎn)亮的時(shí)間太短,LED的亮度太低,肉眼無法看清,所以一般均取幾個(gè)ms左右為宜,這就要求在編寫程序時(shí),選通某一位LED使其點(diǎn)亮并保持一定的時(shí)間,程序上常采用的是調(diào)用延時(shí)子程序。在C51指令中,延時(shí)子程序是相當(dāng)簡單的,并且延時(shí)時(shí)間也很容易更改,可參見程序清單中的DELAY延時(shí)子程序。 為簡單起見,我們只是編寫了8位LED同步顯示"00000000"—"11111111"直到"99999999"數(shù)字,并且反復(fù)循環(huán)。程序很簡單,流程圖略去。
標(biāo)簽:
LED
51單片機(jī)
動(dòng)態(tài)
顯示電路
上傳時(shí)間:
2013-11-18
上傳用戶:皇族傳媒