<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 設(shè)計應用 > LED點陣電子顯示屏系統(tǒng)的設(shè)計

          LED點陣電子顯示屏系統(tǒng)的設(shè)計

          作者: 時間:2008-12-30 來源:21IC 收藏

          點陣電子屏制作簡單,安裝方便,被廣泛應用于各種公共場合,如汽車報站器、廣告屏以及公告牌等。本文介紹的是一種可用在值班室外等場合的公告牌的點陣電子屏設(shè)計。公告內(nèi)容隨時可以更新,能夠?qū)崟r溫度和日期時間,并具有自動亮度調(diào)節(jié)功能??紤]到所需元器件的易購性,本設(shè)計使用了8×8的點陣發(fā)光管模塊,組成16×64發(fā)光點陣,顯示待定的中文、字符以及數(shù)字。

          本文引用地址:http://www.ex-cimer.com/article/90565.htm

          方案論證
          1 點陣顯示屏部分
          方案一:串行方式顯示。這種方式可同時顯示4個16×l6點陣漢字或8個16×8點陣的漢字、字符或數(shù)字。點陣顯示屏每個單元由16個8×8點陣顯示模塊、行信號選擇譯碼器74HC138、驅(qū)動器74HC245、數(shù)據(jù)移位寄存器74HC595和行驅(qū)動器組成,如圖1所示。單元顯示屏可以接收控制器(主控制電路板)或上一級顯示單元模塊傳輸下來的數(shù)據(jù)信息和命令信息,并可將這些數(shù)據(jù)信息和命令信息不經(jīng)任何變化地再傳送到下一級顯示模塊單元中,因此顯示屏可擴展至更多的顯示單元,用于顯示更多的內(nèi)容。

          圖1 串行方式顯示邏輯結(jié)構(gòu)框圖


            此方案為點陣顯示屏系統(tǒng)中比較常用的,所用器件也比較常用,容易買到。但是它存在一個致命的缺點,就是刷新速度不夠快。如果要驅(qū)動64列點陣顯示,通用51單片機會比較吃力,出現(xiàn)比較嚴重的閃爍停滯現(xiàn)象。此外,要實現(xiàn)文字的左右移動和調(diào)整移動速度等功能,都會給軟件設(shè)計帶來較多困難。


            方案二:并行方式顯示??梢酝ㄟ^鎖存器芯片來擴展IO口,達到控制LED點陣的64個列線的目的。方案中運用16片鎖存器74HC573來組成8組雙緩沖寄存器,驅(qū)動LED點陣的8組列線,用4/16譯碼器74HC595對LED點陣的16行進行掃描。在送每一行的數(shù)據(jù)到LED點陣前,先把數(shù)據(jù)分別送到第一級的8個74HC573,然后再給第二級的8個74HC573送鎖脈沖,數(shù)據(jù)一起輸出到LED點陣列中,這樣就避免了各行數(shù)據(jù)顯示不同步問題。由于并行數(shù)據(jù)傳輸速度比串行快,所以字符閃爍的問題得到較好地解決,文字左右移動也比較容易控制。綜上所述,本設(shè)計最終選擇了這個方案。

            2 顯示屏控制部分

            方案一:單機工作模式。采用一個單片機控制實現(xiàn)所有功能,其中包括LED點陣顯示屏的刷新顯示、模式設(shè)定、時間讀取、溫度檢測,以及與上位機的通信等。只用一個單片機控制點陣顯示屏可以使電路大大減化,軟件設(shè)計方面也容易實現(xiàn)。但是,將所有功能集成在一起,一片AT89S52單片機處理能力是不夠的。此時,單片機的CPU內(nèi)部資源已顯不足,會導致系統(tǒng)功能欠佳,達不到較好的性能。


            方案二:主從工作模式。采用主從單片機工作方式來控制整個系統(tǒng)。其中一個單片機用于控制LED點陣顯示,另外一個單片機用于擴展鍵盤、串口與上位機通信、溫度測量、時間讀取等工作。相對單機工作方式,主從工作模式的處理能力大大提高,并且分工明確,執(zhí)行速度得到很大的提高。雖然硬件電路以及軟件設(shè)計方面要求相對高了一些,更涉及到主從單片機通信問題。但是,為了更好地實現(xiàn)各項性能指標,本設(shè)計采用了這種方案。

            硬件電路設(shè)計

            本系統(tǒng)硬件電路設(shè)計的整體框圖如圖2所示。

          圖2 LED點陣顯示屏系統(tǒng)框圖


          1 系統(tǒng)主控器電路
          系統(tǒng)主控器電路如圖3所示,即為一單片機最小系統(tǒng),外加擴展槽與一些功能電路,通過鍵盤掃描來確定工作模式以及完成相關(guān)操作。還包括了時間芯片電路和溫度檢測電路,以及與上位機RS-232接口電路。

          圖3 主控器電路


          本設(shè)計采用的DS1302是具有涓細電流充電能力的電路,主要特點是采用串行數(shù)據(jù)傳輸,可為掉電保護電源提供可編程的充電功能,并且可以關(guān)閉充電功能。DS18B20是一線式數(shù)字溫度傳感器;溫度測量范圍為-55℃~+125℃;測溫分辨率可達0.0625℃;其工作電源既可在遠端引入,也可采用寄生電源方式產(chǎn)生;多個DS18B20可以并聯(lián)到3根或2根線上,CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。以上特點使其非常適用于遠距離多點溫度檢測系統(tǒng)。


          2 點陣驅(qū)動與控制電路
          該電路主要將單片機發(fā)送來的輸出點陣數(shù)據(jù),通過鎖存器芯片擴展的I0口,來控制LED點陣的64個列線端。本設(shè)計中用的是16片鎖存器74HC573來組成8組雙緩沖寄存器,驅(qū)動LED點陣的8組列線,用4/16譯碼器74HC595對LED點陣的16行進行掃描。在送每一行的數(shù)據(jù)到LED點陣前,先把數(shù)據(jù)分別送到第一級的8個74HC573,然后再給第二級的8個74HC573送一個鎖脈沖,將數(shù)據(jù)一起送到LED點陣的各列。

          軟件設(shè)計
          本設(shè)計的軟件流程如圖4所示。

          圖4 LED點陣顯示屏軟件流程

          電路仿真與測試
          1 點陣顯示屏的仿真與程序調(diào)試
          Proteus7.2是一款比較常用的單片機仿真軟件,許多仿真實例與實際電路非常相似。為了盡可能確保實際電路能達到預期的效果,減少無用功,對許多電路模塊的方案進行了仿真。對點陣顯示的處理與相應程序設(shè)計,配合使用Proteus與Keil uvision2進行仿真,旨在改善提高整機系統(tǒng)的硬件與軟件方案,提高系統(tǒng)運行效率與穩(wěn)定性。


          在點陣顯示方式的方案選擇上,通過不斷修改程序與串行電路接法后發(fā)現(xiàn)串行方式很難實現(xiàn)字幕的右移功能,調(diào)整字幕移動的速度也不方便。經(jīng)過分析,決定試用并行方式顯示,結(jié)果發(fā)現(xiàn)這種方式電路不算復雜,并且給程序設(shè)計帶來很多便利,特別是便于實現(xiàn)字幕的左右移動與移動速度的設(shè)定。本系統(tǒng)仿真電路如圖5所示。

          圖5 Proteus仿真電路圖


          2 整機測試
          把編譯器生成的代碼HEX文件下載到單片機Flash中,連接好各個模塊,將LED點陣顯示屏的功能逐一測試實現(xiàn)。


          結(jié)束語
          本設(shè)計所要求的顯示漢字、字母和數(shù)字均已實現(xiàn),并能控制文字的左右移動及速度。同時,溫度與日期時間可以實時顯示,并且與上位機聯(lián)機通信成功。整機系統(tǒng)的硬件制作簡便,難點是軟件設(shè)計。本系統(tǒng)采用并行方式顯示,并且采用主從單片機來控制整個系統(tǒng),這樣能夠大大減化軟件的編寫難度,容易實現(xiàn)各項功能指標。

          51單片機相關(guān)文章:51單片機教程


          led顯示器相關(guān)文章:led顯示器原理


          雙控開關(guān)相關(guān)文章:雙控開關(guān)原理


          關(guān)鍵詞: LED 顯示

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();