AT89系列單片機(jī)是美國ATMEL公司近年來推出的一種新型高性能低價位、低電壓低功耗的8位CMOS微型計算機(jī)。它的顯著優(yōu)點是:①內(nèi)含F(xiàn)1ash存儲器,這在系統(tǒng)的開發(fā)過程中,可隨意進(jìn)行程序修改,既便錯誤編程之后仍可以重新編程,故不存在廢品且大大縮短了程序的開發(fā)周期,同時在系統(tǒng)工作過程中能有效地保存數(shù)據(jù)信息。②采用靜態(tài)時鐘方式,節(jié)省電能,這對于降低便攜式產(chǎn)品的功耗十分有利。③由于它是以8031核構(gòu)成的,所以它與MCS一51系列單片機(jī)是兼容的。這對于熟悉MCS一51系列的廣大用戶來說,用AT89系列單片機(jī)取代51系列進(jìn)行系統(tǒng)設(shè)計是輕而易舉的。
而AT89C2051又是AT89系列中一種更為廉價的單片機(jī),作為一種小型測控系統(tǒng)或便攜式智能儀器儀表的核心器件,其性能價格比憂于MCS一51系列。所不同的是它的引腳只有20根,比標(biāo)準(zhǔn)型的40根少得多,也即并行I/O端口較少。如何利用這較少的幾根口線,連接成穩(wěn)定可靠的LED顯示電路,就是以AT89C2051單片機(jī)為核心的應(yīng)用電路所要解決的瓶頸問題。本文采用了74LS164這個串人并出的移位寄存器,很好地解決了2051與LED的顯示接口電路。
1.硬件電路
2051余下的并行I/O口線不足8根,數(shù)據(jù)的并行輸出已不可能,但可以考慮串行輸出方法,圖1給出串行口擴(kuò)展的4位LED顯示接口電路。
圖1 串行口擴(kuò)展的4位LED顯示電路
該電路只使用2051的3個端口,配接4片串入并出移位寄存器74LS164與1片三端可調(diào)穩(wěn)壓器LM317T。其中74LS164的引腳Q0~Q7為8位并行輸出端;引腳A、B為串性輸入端;引腳CLK為時鐘脈沖輸入端,在CLK脈沖的上升沿作用下實現(xiàn)移位,在CLK=0、清除端MR=1時,74LS164保持原來數(shù)據(jù)狀態(tài);MR=0時,74LS164輸出清零。
其工作過程如下:2051的串行口設(shè)定在方式0移位寄存器狀態(tài)下,串行數(shù)據(jù)由P3.0發(fā)送,移位時鐘由P3.1送出。在移位時鐘的作用下,串行口發(fā)送緩沖器的數(shù)據(jù)一位一位地移入74LS164中。4片74LS164串級擴(kuò)展為4個8位并行輸出口,分別連接到4個LED顯示器的段選端作靜態(tài)顯示。需要指出的是,由于74LS164無并行輸出控制端,因而在串行輸入過程中,其輸出端的狀態(tài)會不斷變化,造成不應(yīng)顯示的字段仍有較暗的亮度,影響了顯示的效果。
以往的做法是在74LS164的輸出端加接4片鎖存器或三態(tài)門。使移位寄存器串行輸入數(shù)據(jù)時其輸出端的變化不反映到LED上,待串行輸入結(jié)束后再打開鎖存器或三態(tài)門,將穩(wěn)定的顯示數(shù)據(jù)送給LED。
本文電路的獨(dú)特之處在于僅采用了1片三端可調(diào)穩(wěn)壓器LM317T,317T的3、2腳分別是電壓輸入、輸出端,317T的1腳是電壓調(diào)整端,腳2輸出電壓隨腳1電壓而變化。腳1與接地電阻之間并一個NPN三極管。它的基極受P1.7口線控制。串行輸入時P1.7口線為高電平,三極管飽和導(dǎo)通使317T的腳1約為0.3V,腳2輸出電壓隨之下降到1.5V不足以使共陽極LED發(fā)光,故此時串行輸入的影響不會反映到LED上;串行輸入結(jié)束后,使P1.7口線為低電平。三極管截止,腳2輸出電壓因腳1電壓增高便上升到2.0V使LED正常發(fā)光。因此。1片三端可調(diào)穩(wěn)壓器LM317T起到了4片鎖存器的作用使LED顯示不會閃爍本電路的另一優(yōu)點是通過可調(diào)電位器P1可在線調(diào)整腳2的輸出電壓,使LED的顯示亮度均勻可調(diào),而且省掉了大量的LED限流電阻。
2.軟件編程
上述分析表明,移位寄存器74LS164僅有串入并出作用沒有譯碼功能。因此。在編寫顯示驅(qū)動程序之前,首先需要計算列寫出與本電路對應(yīng)的LED段選碼,然后由2051的P3.0口送入164的串行輸入端,再并行輸出到LED的段選端。
需要指出的是,本電路采用TOS-8106BHK型號的共陽極LED顯示器,根據(jù)PCB印制線路板的連線方便,其LED的8個段選端與164的并行輸出口即8根段選線的連接沒有遵照通常的規(guī)律,而是如圖1所示的段排列為7、6、4、2、1、9、10、5,相應(yīng)的段選碼也要重新計算。如顯示字符0的段選碼為11H。顯示字符1的段選碼為D7H等。
另外,這種穩(wěn)定的靜態(tài)顯示方式也省去了CPU的動態(tài)掃描過程,此為本電路的又一特點。
電路中設(shè)計了4位LED顯示器,其功能為:左首位為百位數(shù)或標(biāo)志位,左二位為十位數(shù),左三位為個位數(shù),左四位為小數(shù)點后的十分位數(shù)。據(jù)此,給出如圖2所示的顯示子程序框圖。
圖2 顯示子程序框圖
顯示子程序清單如下:
結(jié)束語
目前該串行口擴(kuò)展的LED顯示接口電路已成功地應(yīng)用到以AT89C2051單片機(jī)為核心的智能儀表中,如單片機(jī)濕度測量儀、單片機(jī)溫度測量儀等。現(xiàn)場運(yùn)行表明,LED顯示清晰穩(wěn)定不閃爍,特別是在現(xiàn)場環(huán)境如光照強(qiáng)弱不同的情況下,可以在線調(diào)整LED發(fā)光的亮度,獲得視覺與功耗的最佳效果。
責(zé)任編輯人:CC
-
led
+關(guān)注
關(guān)注
242文章
23252瀏覽量
660580 -
74LS164
+關(guān)注
關(guān)注
1文章
35瀏覽量
19723 -
LED顯示電路
+關(guān)注
關(guān)注
0文章
9瀏覽量
12049
發(fā)布評論請先 登錄
相關(guān)推薦
評論