LED漢字顯示屏的設(shè)計(jì)與制作論文.doc
《LED漢字顯示屏的設(shè)計(jì)與制作論文.doc》由會員分享,可在線閱讀,更多相關(guān)《LED漢字顯示屏的設(shè)計(jì)與制作論文.doc(47頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、桂林航天工業(yè)學(xué)院論文LED漢字顯示屏的設(shè)計(jì)與制作LED Chinese characters display design and production畢 業(yè) 設(shè) 計(jì)( 論 文 )評 語指導(dǎo)教師評語 簽字: 201 年 月 日評閱教師評語 簽字: 201 年 月 日III畢業(yè)設(shè)計(jì)(論文)答辯記錄成績及評語答辯提問記錄 記錄人: 201 年 月 日答辯委員會評語成 績:主任簽字: 201 年 月 日桂林航天工業(yè)學(xué)院電子工程系畢 業(yè) 設(shè) 計(jì) 任 務(wù) 書裝 訂 線專業(yè):應(yīng)用電子技術(shù)年級: 2009姓名徐娜學(xué)號200904320214指導(dǎo)教師(簽名)畢業(yè)設(shè)計(jì)題目LED漢字顯示屏的設(shè)計(jì)與制作任務(wù)下達(dá)日期
2、2012年1月10日設(shè)計(jì)提交期限2012年6月10日設(shè)計(jì)主要內(nèi)容設(shè)計(jì)一個(gè)實(shí)現(xiàn)漢字滾動顯示并能較容易改變顯示內(nèi)容的16*32點(diǎn)陣LED漢字顯示屏。主要技術(shù)參數(shù)指標(biāo)通過編程控制可改變顯示屏的內(nèi)容實(shí)現(xiàn)漢字的滾動顯示及改變其顯示時(shí)間至少能顯示八個(gè)漢字(顯示制作者的單位名字等成果提交形式論文、實(shí)物設(shè)計(jì)進(jìn)度安排1月10日2月10日收集資料2月10日3月10日方案設(shè)計(jì)論證3月10日4月10日硬件設(shè)計(jì)與制作4月10日5月10日編寫程序及調(diào)試5月10日6月10日書寫報(bào)告,提交設(shè)計(jì)成果 教研室意見 簽名: 201 年 月 日 系主任意見簽名: 201 年 月 日摘 要桂林航天工業(yè)學(xué)院電子工程系畢 業(yè) 設(shè) 計(jì) 開
3、題 報(bào) 告裝 訂 線姓名徐娜學(xué)號200904320214指導(dǎo)教師簡遠(yuǎn)鳴畢業(yè)設(shè)計(jì)題目LED漢字顯示屏的設(shè)計(jì)與制作同組朱俊臣、何松裕設(shè)計(jì)目的意義設(shè)計(jì)LED漢字顯示屏加深單片機(jī)知識的應(yīng)用,從而加強(qiáng)自己的動手能力,開拓自己的視野,且LED顯示屏具有組構(gòu)方式靈活、功耗低、等特點(diǎn)在車站、運(yùn)動場館、等公共場合的信息發(fā)布等得到廣泛的應(yīng)用。方案論證本次設(shè)計(jì)單片機(jī)采用STC89C52,行電路使用逐行掃描的方式,列電路使用串入并出的數(shù)據(jù)傳輸方式,顯示屏使用由4塊SBM1388型號的實(shí)驗(yàn)?zāi)K組成1632點(diǎn)陣模塊。使用到的芯片有傳入并出移位寄存器74HC595、行驅(qū)動芯片74HC138、三極管8550 。時(shí)間安排1月1
4、0日2月10日收集資料2月10日3月10日方案設(shè)計(jì)論證3月10日4月10日硬件設(shè)計(jì)與制作4月10日5月10日編寫程序及調(diào)試5月10日6月10日書寫報(bào)告,提交設(shè)計(jì)成果 指導(dǎo)教師意見 簽字: 年 月 日 審核小組意見 組長簽字: 年 月 日中文摘要LED 顯示屏是一種新型信息顯示媒體,集微電子技術(shù)、光電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理技術(shù)于一體的大型顯示系統(tǒng)。以其色彩鮮艷,動態(tài)范圍廣,亮度高,壽命長,工作性能穩(wěn)定特點(diǎn),廣泛應(yīng)用于廣告、證券、信息傳播、新聞發(fā)布等方面。 本文設(shè)計(jì)了基于單片機(jī)的LED漢字顯示屏,給出了系統(tǒng)框圖,硬件模塊設(shè)計(jì)圖、軟件流程圖和程序。硬件模塊設(shè)計(jì)方面,主控制系統(tǒng)采用單片機(jī)控制方式
5、,實(shí)現(xiàn)點(diǎn)陣 LED顯示屏的驅(qū)動及信息的保存與顯示。LED顯示點(diǎn)陣主要由LED、字模及其電路構(gòu)成。通過單片機(jī)的控制驅(qū)動電路,采用掃描方式進(jìn)行顯示。用C語言進(jìn)行軟件設(shè)計(jì),增加了程序的可讀性和可移植性。為了便于擴(kuò)展和更改,軟件的設(shè)計(jì)采用模塊化結(jié)構(gòu),使程序設(shè)計(jì)的邏輯關(guān)系更加簡潔明了。通過調(diào)試實(shí)現(xiàn)了漢字的滾動顯示功能,達(dá)到了預(yù)期效果。關(guān)鍵詞:STC89C52單片機(jī) LED 點(diǎn)陣 動態(tài)顯示ABSTRACTLED display is new information shows that the media set microelectronic technology, photonics technolo
6、gy, computer technology, information processing technology in the large-scale integrated display system. With its colorful, wide dynamic range, high-brightness, long life and performance characteristics of stability, widely used in advertising, securities, information dissemination, press releases,
7、and so on. This paper was designed based on SCM LED display Chinese characters. By Given system diagram, hardware module design, software, flow charts and procedures, hardware module design, the main control system using SCM control, and dot-matrix LED display driver and the preservation and display
8、 of information. LED display lattice mainly by the LED, word-model and its circuit. SCM control through the drive circuit, a scan showed that way. C language software designed to increase the readability of the procedure and portability. In order to facilitate the expansion and changes, the software
9、 design is modular structure, so that the logic of relations much concisely. Through the pilot realized the rolling display Chinese characters, achieved the expected results.KEY WORDS:STC89C52 Micro Controller Unit, LED , Field-array ,Dynamic displayv目 錄第一章 前言1第二章 系統(tǒng)整體設(shè)計(jì)方案22.1 實(shí)現(xiàn)的功能22.2 LED顯示特點(diǎn)22.3
10、設(shè)計(jì)方案論證32.3.1 顯示模式方案32.3.2 數(shù)據(jù)傳輸方案4第三章 系統(tǒng)硬件部分設(shè)計(jì)63.1 單片機(jī)系統(tǒng)及外圍電路63.1.1 單片機(jī)的選擇63.1.2 STC89C52芯片介紹63.1.3 單片機(jī)系統(tǒng)外圍電路93.2 列驅(qū)動電路103.3 行驅(qū)動電路123.3.1 行驅(qū)動芯片74HC138 介紹123.4 行驅(qū)動電路133.5 LED顯示屏電路15第四章 系統(tǒng)軟件部分設(shè)計(jì)184.1 系統(tǒng)主程序184.2 顯示驅(qū)動程序19第五章 調(diào)試及性能分析215.1 軟件調(diào)試215.2 硬件調(diào)試225.3 性能分析22第六章 總結(jié)與展望24參考文獻(xiàn)25致 謝26附錄一 電路圖27附錄二 系統(tǒng)程序清單
11、29- ii - 1 -桂林航天工業(yè)學(xué)院畢業(yè)論文第一章 前言LED電子顯示屏是利用發(fā)光二極管點(diǎn)陣模塊或像素單元組成的平面式顯示屏幕。它是集微電子技術(shù)、光電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理技術(shù)于一體的顯示系統(tǒng),是目前國際上極為先進(jìn)的顯示媒體。由于它具有發(fā)光效率高、使用壽命長、組態(tài)靈活、色彩豐富、工作性能穩(wěn)定以及對室內(nèi)室外環(huán)境適應(yīng)能力強(qiáng)等優(yōu)點(diǎn)而日漸成為顯示媒體中的佼佼者。LED點(diǎn)陣顯示在20世紀(jì)80年代以來以一種嶄新的形式被廣泛運(yùn)用在社會的各個(gè)方面,尤以點(diǎn)陣顯示廣告牌為甚。LED點(diǎn)陣顯示屏是八十年代后期在全球迅速發(fā)展起來的新型信息顯示媒體,顯示屏由幾萬到幾十萬個(gè)半導(dǎo)體發(fā)光二極管像素點(diǎn)均勻排列組成,利用
12、不同的材料可以制造不同色彩的LED像素點(diǎn),目前應(yīng)用最廣的是紅色、綠色、和黃色;而藍(lán)色和純綠色LED已經(jīng)達(dá)到了實(shí)用階段。LED顯示頻可以顯示變化的數(shù)字、文字、圖像;不僅可以用于室內(nèi)環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏無法比擬的優(yōu)點(diǎn)。LED點(diǎn)陣電子顯示屏制作簡單,安裝方便,被廣泛應(yīng)用于各種公共場合,如:銀行、飛機(jī)場、火車站、汽車站、各種室外廣場公告牌或廣告牌,究其原因是其使用壽命長,高亮度、寬視角、低功耗、大對比度、色彩鮮艷,可以顯示靜動態(tài)字符及圖畫。由于單片機(jī)技術(shù)的不斷發(fā)展以及高亮度LED發(fā)光管的出現(xiàn),使得大屏幕高亮度LED電子廣告屏成為可能。與傳統(tǒng)的霓虹燈廣告相比,LED電子
13、廣告屏在顯示效果以及可修改性上都有著無法比擬的優(yōu)勢,而且單片機(jī)的日益平民化以及LED技術(shù)的不斷創(chuàng)新,使得高亮度高清晰的LED點(diǎn)陣廣告牌與傳統(tǒng)霓虹燈廣告牌的成本日益接近。另外,SMT技術(shù)飛速發(fā)展,開關(guān)電源的大規(guī)模使用,使其無論在體積上還是在可靠性上都比傳統(tǒng)的霓虹燈廣告有明顯的優(yōu)勢,為其在特殊領(lǐng)域的應(yīng)用奠定了基礎(chǔ)。如今在我國,單片機(jī)已被廣泛地應(yīng)用在工業(yè)自動化控制、自動檢測、智能儀表、智能化家用電器、航空航天系統(tǒng)和和國防軍事、尖端武器等各個(gè)方面。我們可以開發(fā)利用單片機(jī)系統(tǒng)以獲得很高的經(jīng)濟(jì)效益。更重要的意義是單片機(jī)的應(yīng)用改變了控制系統(tǒng)傳統(tǒng)的設(shè)計(jì)思想和方法。以前采用硬件電路實(shí)現(xiàn)的大部分控制功能,正在用單
14、片機(jī)通過軟件方法來實(shí)現(xiàn)。這種以軟件結(jié)合硬件或取代硬件并能提高系統(tǒng)性能的控制技術(shù)稱為微控制技術(shù)。例如,本文所要論述的通過單片機(jī)來控制LED點(diǎn)陣顯示。- 37 -第二章 系統(tǒng)整體設(shè)計(jì)方案2.1 實(shí)現(xiàn)的功能設(shè)計(jì)一個(gè)室內(nèi)用1632點(diǎn)陣LED漢字顯示屏,要求在目測條件下LED顯示屏各點(diǎn)亮度均勻、充足,可顯示圖形和文字,顯示圖形或文字應(yīng)穩(wěn)定、清晰無串?dāng)_。圖形或文字顯示有靜止、移入移出等顯示方式。2.2 LED顯示特點(diǎn)LED發(fā)光燈可以分為單色發(fā)光燈、雙色發(fā)光燈、三色發(fā)光燈、面發(fā)光燈、閃爍發(fā)光燈、電壓型發(fā)光燈等多種類型。按照發(fā)光燈強(qiáng)度又可以分為普通亮度發(fā)光燈、高亮度發(fā)光燈、超高亮度發(fā)光燈等。這種單個(gè)的發(fā)光燈適
15、宜用做指示燈,如電源指示、電路狀態(tài)指示燈,進(jìn)而對能夠轉(zhuǎn)變成電信號的各種物理量進(jìn)行指示。也可以用多個(gè)LED發(fā)光燈組成固定的字符或圖形進(jìn)行顯示,如大型劇場會堂的出入口及洗手間的顯示。和很多應(yīng)用術(shù)語一樣,LED圖文顯示屏并沒有一個(gè)公認(rèn)的嚴(yán)格的定義,一般把顯示圖形和/或文字的LED顯示屏稱為圖文屏。這里所說的圖形,是指由單一亮度線條組成的任意圖形,以便于不同亮度(灰度)點(diǎn)陣組成的圖像相區(qū)別。圖文顯示屏的主要特征是只控制LED點(diǎn)陣中各發(fā)光器件的通斷(發(fā)光或熄滅),而不控制LED的發(fā)光強(qiáng)弱。LED圖文顯示屏的外觀可以做成條形,叫做條形圖文顯示屏(簡稱條屏),也可以按一定高度比例做成矩形的平面圖文顯示屏。其
16、實(shí)條屏只不過是其寬度遠(yuǎn)大于高度的平面顯示屏,在顯示與控制的原理上并無區(qū)別。從理論上說,不論顯示圖形還是文字,都是控制與組成這些圖形或文字的各個(gè)點(diǎn)所在位置相對應(yīng)的LED器件發(fā)光。通常事先把需要顯示的圖形文字轉(zhuǎn)換成點(diǎn)陣圖形,再按照顯示控制的要求以一定的格式形成顯示數(shù)據(jù)。對于只控制通斷的圖文顯示屏來說,每個(gè)LED發(fā)光器件占據(jù)數(shù)據(jù)中的1位(1bit),在需要該LED器件發(fā)光的數(shù)據(jù)中相應(yīng)的位填1,否則填0。當(dāng)然,根據(jù)控制電路的安排,相反的定義同樣是可行的。這樣依照所需顯示的圖形文字,按顯示屏的各行各列逐點(diǎn)填寫顯示數(shù)據(jù),就可以構(gòu)成一個(gè)顯示數(shù)據(jù)文件。顯示圖形的數(shù)據(jù)文件,其格式相對自由,只要能夠滿足顯示控制的
17、要求即可。文字的點(diǎn)陣格式比較規(guī)范,可以采用現(xiàn)行計(jì)算機(jī)通用的字庫字模。組成一個(gè)字的點(diǎn)陣,其大小也可以有1616、1632、2424、3232、4848等不同規(guī)格。漢字的點(diǎn)陣結(jié)構(gòu)相應(yīng)的顯示數(shù)據(jù)是用16進(jìn)制格式以字節(jié)為單位表示的。用點(diǎn)陣方式構(gòu)成圖形或文字,是非常靈活的,可以根據(jù)需要任意組合和變化,只要設(shè)計(jì)好合適的數(shù)據(jù)文件,就可以得到滿意的顯示效果。因而采用點(diǎn)陣式圖文顯示屏顯示經(jīng)常需要變化的信息,是非常有效的。 點(diǎn)陣顯示方式適應(yīng)信息變化的優(yōu)點(diǎn),是以點(diǎn)陣顯示器的價(jià)格和其復(fù)雜的控制電路為代價(jià)的。點(diǎn)陣顯示器在整個(gè)顯示單元的所有位置上都布置了LED器件,而像數(shù)碼管一類的顯示器件只在需要發(fā)光的七段位置上布置LE
18、D器件,其它位置是空白的。因此,點(diǎn)陣顯示器在相同面積情況下,價(jià)格要貴些。但是,數(shù)碼管可顯示的信息有限,只有09或單個(gè)的英文字符,由于組合形成的字符不多,所以其顯示數(shù)據(jù)和控制電路都比較簡單。點(diǎn)陣顯示器則不然,它要對點(diǎn)陣上全部LED進(jìn)行控制,并能生成所有可能顯示的圖形文字,其顯示數(shù)據(jù)和控制電路自然要復(fù)雜得多。因此,根據(jù)不同的場合,不同的顯示特點(diǎn)和格式可以分別采用數(shù)碼管器件或點(diǎn)陣顯示方式,有的情況可以采用兩者搭配的混合屏顯示方式。漢子顯示屏的顏色,有單色、雙色、和多色幾種。最常用的是單色圖文屏。單色屏多使用紅色、橘紅色或橙色LED點(diǎn)陣單元。雙色圖文屏和多色圖文屏,在LED點(diǎn)陣的每一個(gè)“點(diǎn)”上布置有兩
19、個(gè)或多個(gè)不同顏色的LED發(fā)光器件。換句話說,對應(yīng)于每種顏色都有自己的顯示矩陣。顯示的時(shí)候,各顏色的顯示點(diǎn)陣是分開控制的。事先設(shè)計(jì)好各種顏色的顯示數(shù)據(jù),顯示時(shí)分別送到各自的顯示點(diǎn)陣,即可實(shí)現(xiàn)預(yù)期效果。每一種顏色的控制方法和單色的完全相同,因此掌握了單色圖文顯示屏的原理,雙色屏和多色屏就不難理解了。2.3 設(shè)計(jì)方案論證2.3.1 顯示模式方案為了吸引觀眾增強(qiáng)顯示效果,可以有多種顯示模式,最簡單的顯示模式是靜態(tài)顯示。這里所說的“靜態(tài)顯示模式”不同于靜態(tài)驅(qū)動方式。與靜態(tài)顯示模式相對應(yīng),就有各種動態(tài)顯示模式,它們所顯示的圖文都是能夠動的。按照圖文運(yùn)動的特點(diǎn)又可以分為閃爍、平移、旋轉(zhuǎn)、縮放等多種顯示模式。
20、產(chǎn)生不同顯示模式的方法,并不意味著一定要重新編寫顯示數(shù)據(jù),可以通過一定的算法從原來的顯示數(shù)據(jù)直接生成。例如,按順序調(diào)整行號,可以使顯示圖文產(chǎn)生上下平移;而順序調(diào)整列顯示數(shù)據(jù)的位置,就可以達(dá)到左右平移的目的;同時(shí)調(diào)整行列順序,就能得到對角線平移的效果。其它模式的數(shù)據(jù)刷新,也可找到相應(yīng)的算法。不過當(dāng)算法太復(fù)雜,太浪費(fèi)時(shí)間的話,也可以考慮預(yù)先生成刷新數(shù)據(jù),存儲備用。刷新的時(shí)間控制,要考慮運(yùn)動圖形文字的顯示效果。刷新太慢,動感不顯著;刷新太快了,中間過程看不清。一般刷新周期可控制在幾十毫秒范圍之內(nèi)。 同時(shí)控制LED顯示屏的各個(gè)發(fā)光點(diǎn)亮滅的方法稱為靜態(tài)驅(qū)動顯示方式。1616的點(diǎn)陣共有256個(gè)發(fā)光二極管,
21、顯然單片機(jī)沒有這么多端口,如果我們采用鎖存器來擴(kuò)展端口,按8位的鎖存器來計(jì)算,1616的點(diǎn)陣需要256/8=32個(gè)鎖存器。這個(gè)數(shù)字很龐大,因?yàn)槲覀儍H僅是1616的點(diǎn)陣,在實(shí)際應(yīng)用中的顯示屏往往要大得多,這樣在鎖存器上花的成本將是一個(gè)很龐大的數(shù)字。而且靜態(tài)顯示功耗大,顯示一個(gè)1616的字的功耗為:1632105=12800mW=12.8W!普通電池根本無法驅(qū)動,要是組成大顯示屏那功耗將更驚人。同理1632的點(diǎn)陣的鎖存器的功耗將是1616的點(diǎn)陣的2倍,因此雖然靜態(tài)顯示效果好,但是在實(shí)際應(yīng)用中的顯示屏幾乎都不采用這種設(shè)計(jì),而采用另一種稱為動態(tài)掃描的顯示方法。動態(tài)掃描的意思簡單地說就是逐行輪流點(diǎn)亮,這
22、樣掃描驅(qū)動電路就可以實(shí)現(xiàn)多行(比如16行)的同名列共用一套列驅(qū)動器,每行有一個(gè)行驅(qū)動器,具體就1632的點(diǎn)陣來說,把所有同一行的發(fā)光管的陽極連在一起,把所有同一列的發(fā)光管的陰極連在一起(共陽的接法),由行譯碼器給出的行選通信號,從第一行開始,按順序依次對各行進(jìn)行掃描(把該行與電源的一端接通)。另一方面,根據(jù)各列鎖存的數(shù)據(jù),確定相應(yīng)的列驅(qū)動器是否將該列與電源的另一端接通。接通的列,就在該行該列燃亮相應(yīng)的LED;未接通的列所對應(yīng)的LED熄滅。當(dāng)一行的掃描持續(xù)時(shí)間結(jié)束后,該行燃亮的LED也就熄滅;下一行又以同樣的方法進(jìn)行顯示。全部各行都掃過一遍之后(一個(gè)掃描周期),又從第一行開始下一個(gè)周期的掃描。只
23、要一個(gè)掃描輪回的速度足夠快(每秒24次以上),由于人眼的視覺暫留現(xiàn)象,就不容易感覺出閃爍現(xiàn)象,就能看到顯示屏上穩(wěn)定的圖形了。而且動態(tài)掃描方式功耗低,硬件成本低,每個(gè)LED都不是連續(xù)工作,因而還有利于延長LED的使用壽命。2.3.2 數(shù)據(jù)傳輸方案采用掃描方式進(jìn)行顯示時(shí),顯示數(shù)據(jù)通常存儲在單片機(jī)的存儲器中,按8位一個(gè)字節(jié)的形式順序排放。顯示時(shí)要把一行中各列的數(shù)據(jù)都傳送到相應(yīng)的列驅(qū)動器上去,這就存在一個(gè)顯示數(shù)據(jù)傳輸方式的問題。從控制電路到列驅(qū)動器的數(shù)據(jù)傳輸可以采用并行方式或串行方式。顯然,采用并行方式時(shí),從控制電路到列驅(qū)動器的線路數(shù)量大,相應(yīng)的硬件數(shù)目多。當(dāng)列數(shù)很多時(shí),并行傳輸?shù)姆桨甘遣豢扇〉摹2捎?/p>
24、串行傳輸?shù)姆椒ǎ刂齐娐房梢灾挥靡桓盘柧€,將列數(shù)據(jù)一位一位傳往列驅(qū)動器,在硬件方面無疑是十分經(jīng)濟(jì)的。但是,串行傳輸過程較長,數(shù)據(jù)要經(jīng)過并行到串行和串行到并行兩次變換。首先,單片機(jī)從存儲器中讀出的8位并行數(shù)據(jù)要通過并串變換,按順序一位一位地輸出給列驅(qū)動器。與此同時(shí),列驅(qū)動器中每一列都把當(dāng)前數(shù)據(jù)傳向后一列,并從前一列接收新數(shù)據(jù),一直到全部列數(shù)據(jù)都傳輸完為止。只有當(dāng)一行的各列數(shù)據(jù)都已傳輸?shù)轿恢?,這一行的各列才能并行地進(jìn)行顯示。這樣,對于一行的顯示過程就可以分解列數(shù)據(jù)準(zhǔn)備(傳輸)和列數(shù)據(jù)顯示兩個(gè)部分。對于串行傳輸方式來說,列數(shù)據(jù)準(zhǔn)備時(shí)間可能相當(dāng)長,在行掃描周期確定的情況下,留給行顯示的時(shí)間就太少了
25、,以至影響到LED的亮度。解決串行傳輸中列數(shù)據(jù)準(zhǔn)備和列數(shù)據(jù)顯示的時(shí)間矛盾問題,可以采用重疊處理的方法。即在顯示本行各列數(shù)據(jù)的同時(shí),準(zhǔn)備下一行的列數(shù)據(jù)。為了達(dá)到重疊處理的目的,列數(shù)據(jù)的顯示就需要具有鎖存功能。經(jīng)過上述分析,可以歸納出列驅(qū)動器電路應(yīng)具備的主要功能。對于列數(shù)據(jù)準(zhǔn)備來說,它應(yīng)能實(shí)現(xiàn)串入并出的移位功能;對于列數(shù)據(jù)顯示來說,應(yīng)具有并行鎖存的功能。這樣,本行已準(zhǔn)備好的數(shù)據(jù)打入并行鎖存器進(jìn)行顯示時(shí),串并移位寄存器就可以準(zhǔn)備下一行的列數(shù)據(jù),而不會影響本行的顯示。圖2-1為顯示屏電路實(shí)現(xiàn)的結(jié)構(gòu)框圖。單片機(jī)列驅(qū)動器行驅(qū)動器LED顯示點(diǎn)陣電源圖2-1 顯示屏電路框圖第三章 系統(tǒng)硬件部分設(shè)計(jì)3.1 單片
26、機(jī)系統(tǒng)及外圍電路3.1.1 單片機(jī)的選擇由于設(shè)計(jì)要求系統(tǒng)能獨(dú)立運(yùn)行,并能控制中文LED漢字的移位顯示,主控板應(yīng)以單片機(jī)為核心的單片機(jī)系統(tǒng)。單片機(jī)采用89C52或其兼容系列的芯片進(jìn)行控制,它負(fù)責(zé)控制整個(gè)電路以及相應(yīng)的程序的運(yùn)行、以及給屏體電路部分發(fā)送命令。這里我們選擇了內(nèi)含4K字節(jié)Flash的STC89C52,因?yàn)槲覀冎恍枰@示特定的文字,無需龐大的字庫,因此4K Flash已經(jīng)可以滿足字庫儲存的需求,不需要擴(kuò)展外存儲器。3.1.2 STC89C52芯片介紹STC89C52是美國ATMEL公司生產(chǎn)的8位Flash ROM單片機(jī)。其最突出的優(yōu)點(diǎn)是片內(nèi)ROM為Flash ROM,可擦寫1000次以上
27、,應(yīng)用并不復(fù)雜的通用ROM寫入器就能方便的擦寫,讀取也很方便,價(jià)格低廉,具有在片程序ROM二級保密系統(tǒng)。因此可靈活應(yīng)用于各種控制領(lǐng)域。STC89C52包含以下一些功能部件:內(nèi)含一個(gè)8位CPU 和 ;一個(gè)片內(nèi)振蕩器和時(shí)鐘電路;有8KB Flash ROM 以及128B 內(nèi)RAM;它還可尋址64KB的外ROM和外RAM控制電路;兩個(gè)16位定時(shí)/計(jì)數(shù)器,21個(gè)特殊功能寄存器 ;4個(gè)8位并行I/O口;一個(gè)可編程全雙工串行口 ;5個(gè)中斷源,可設(shè)置成2個(gè)優(yōu)先級。STC89C52單片機(jī)一般采用雙列直插DIP封裝,共40個(gè)引腳,圖3-3為其引腳排列圖。40個(gè)引腳大致可分為4類:電源、時(shí)鐘、控制各I/O引腳。
28、一 電源Vcc芯片電源,接+5V;GND接地端。二 時(shí)鐘XTAL1、XTAL2晶體振蕩電路反相輸入端和輸出端。圖3-3 STC89C2引腳圖三 控制線控制線共有4根,其中3根是復(fù)用線。所謂復(fù)用線是指具有兩種功能,正常使用時(shí)是一種功能,在某種條件下是另一種功能。1ALE/地址鎖存允許/片內(nèi)EPROM編程脈沖。(1)ALE功能:用來鎖存P0口送出的低八位地址。STC89C52在并行擴(kuò)展外存儲器時(shí),P0口用于分時(shí)傳送低8位地址和數(shù)據(jù)信號,且均為二進(jìn)制數(shù)。當(dāng)ALE信號有效時(shí),P0口傳送的是低8位地址信號;ALE信號無效時(shí),P0口傳送的是低8位地址信號。在ALE信號的下降沿,鎖定P0口傳送的內(nèi)容,即低8
29、位地址信號。需要指出的是,當(dāng)CPU不執(zhí)行訪問外RAM指令,ALE以時(shí)鐘振蕩頻率1/6的固定頻率輸出,因此ALE信號也可作為外部芯片CLK時(shí)鐘或其他需要。但是,當(dāng)CPU執(zhí)行MOVX指令時(shí),ALE將跳過一個(gè)ALE脈沖。(2)功能:片內(nèi)EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。2 外ROM讀選通信號。89C52讀外ROM時(shí),每個(gè)機(jī)器周期內(nèi)兩次有效輸出。可作為外ROM芯片輸出允許的選通信號。在讀內(nèi)ROM或讀外RAM時(shí),無效。3RST/VPD復(fù)位/備用電源。(1)正常工作時(shí),RST端為復(fù)位信號輸入端,只要在該引腳上連續(xù)保持兩個(gè)機(jī)器周期以上高電平,STC89C52芯片即實(shí)現(xiàn)復(fù)位操作,復(fù)位
30、后一切從頭開始,CPU從0000H開始執(zhí)行指令。(2)VPD功能:在VCC掉電情況下,該引腳可接上備用電源,由VPD向片內(nèi)RAM供電,以保持片內(nèi)RAM中的數(shù)據(jù)不丟失。4/VPP內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。(1)功能:正常工作時(shí),為內(nèi)外ROM選擇端。STC89C52單片機(jī)ROM尋址范圍為64KB,其中4KB在片內(nèi),60KB在片外。當(dāng)保持高電平時(shí),先訪問內(nèi)ROM,但當(dāng)PC值超過4KB時(shí),將自動轉(zhuǎn)向執(zhí)行外ROM中的程序。當(dāng)保持低電平時(shí),則只訪問外ROM,不管芯片內(nèi)有否內(nèi)ROM。(2)VPP功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳用于施加編程電源。四 I/O引腳STC89
31、C52有P0、P1、P2、P3 4個(gè)8位并行I/O端口,共32個(gè)引腳。P0口是一組8位漏級開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能以吸收電流的方式驅(qū)動8個(gè)TTL邏輯門電路,對端口寫1時(shí),又可作高阻抗輸入端用。P1 口是帶內(nèi)部上拉電阻的雙向I/O口,向P1口寫入1時(shí)P1口被內(nèi)部上拉為高電平,可用作輸入口。Flash編程和程序校驗(yàn)期間,P1接收低8位地址。P2 口是帶內(nèi)部上拉電阻的雙向I/O口,向P2口寫入1時(shí)P2口被內(nèi)部上拉為高電平可用作輸入口,當(dāng)作為輸入腳時(shí)被外部拉低的P2口會因?yàn)閮?nèi)部上拉而輸出電流。Flash編程和程序校驗(yàn)時(shí),P2也接收高位地址和一些控制信號。P3
32、 口是帶內(nèi)部上拉電阻的雙向I/O口,向P3口寫入1時(shí)P3口被內(nèi)部上拉為高電平可用作輸入口,當(dāng)作為輸入腳時(shí)被外部拉低的P3口會因?yàn)閮?nèi)部上拉而輸出電流。P3口除了作為一般的I/O口線外,更重要的是它的第二功能,如表31所示:P3 口是帶內(nèi)部上拉電阻的雙向I/O口,向P3口寫入1時(shí)P3口被內(nèi)部上拉為高電平可用作輸入口,當(dāng)作為輸入腳時(shí)被外部拉低的P3口會因?yàn)閮?nèi)部上拉而輸出電流。表31 P3各端口第二功能端口引腳第二功能P3.0RXD串行口輸入端P3.1TXD串行口輸出端P3.2外部中斷0請求輸入端P3.3外部中斷1請求輸入端P3.4T0定時(shí)/計(jì)數(shù)器0外部信號輸入端P3.5T1定時(shí)/計(jì)數(shù)器1外部信號輸入
33、端P3.6外RAM寫選通信號輸出端P3.7外RAM讀選通信號輸出端3.1.3 單片機(jī)系統(tǒng)外圍電路單片機(jī)系統(tǒng)外圍電路形式如圖3-4所示。單片機(jī)振蕩器反相放大器的輸入端(XTAL1)和輸出端(XTAL2)之間接上12MHz或更高頻率的晶振,以獲得較高的刷新頻率,使顯示更穩(wěn)定。電容C4、C5是晶振的負(fù)載電容,主要起頻率微調(diào)和穩(wěn)定的作用。單片機(jī)的串行口工作在方式0下,作為同步移位寄存器使用,端口RXD(P3.0)作為數(shù)據(jù)移位的輸入/輸出端,而由TXD(P3.1)端輸出移位時(shí)鐘脈沖。移位數(shù)據(jù)的發(fā)送和接收均以8位為一幀,不設(shè)起始位和停止位,無論輸入/輸出,均低位在前高位在后。89C52的通用I/O口P1作
34、為顯示數(shù)據(jù)和二進(jìn)制行號的公用輸出口。兩種數(shù)據(jù)的輸出在時(shí)間上是錯(cuò)開的。P1口的低4位與行驅(qū)動器相連,送出二進(jìn)制的行選信號;P1.5P1.7口則用來發(fā)送控制信號。P0和P2口空著,在有必要的時(shí)候可以擴(kuò)展系統(tǒng)的ROM和RAM。圖3-4 單片機(jī)系統(tǒng)外圍電路圖3.2 列驅(qū)動電路74HC595 是一款漏極開路輸出的CMOS 移位寄存器,輸出端口為可控的三態(tài)輸出端,亦能串行輸出控制下一級級聯(lián)芯片。74HC595的時(shí)鐘頻率至少能達(dá)2525MHz,74HC595具有標(biāo)準(zhǔn)串行(SPI)接口,且Yxi838電子-技術(shù)資料-電子元件-電路圖-技術(shù)應(yīng)用網(wǎng)站-基本知識-原理-維修-作用-參數(shù)-電子元器件符號-各種圖紙CM
35、OS 串行輸出,可用于多個(gè)設(shè)備的級聯(lián),其低功耗:TA =25時(shí),Icc=4A(MAX)Yxi838電子-技術(shù)資料-電子元件-電路圖-技術(shù)應(yīng)用網(wǎng)站-基本知識-原理-維修-作用-參數(shù)-電子元器件符號-各種圖紙Yxi838電子-技術(shù)資料-電子元件-電路圖-技術(shù)應(yīng)用網(wǎng)站-基本知識-原理-維修-作用-參數(shù)-電子元器件符號-各種 列驅(qū)動電路由集成電路74HC595構(gòu)成,它具有一個(gè)8位串行輸入/輸出或者并行輸出的移位寄存器和一個(gè)8位輸出鎖存器的結(jié)構(gòu),而且移位寄存器和輸出鎖存器的控制是各自獨(dú)立的,可以實(shí)現(xiàn)在顯示本行各列數(shù)據(jù)的同時(shí),傳送下一行的列數(shù)據(jù),即達(dá)到重疊處理的目的。Yxi838電子-技術(shù)資料-電子元件-
36、電路圖-技術(shù)應(yīng)用網(wǎng)站-基本知識-原理-維修-作用-參數(shù)-電子元器件符號-各種圖紙74HC595的管腳及內(nèi)部結(jié)構(gòu)形式如圖3-5所示。圖3-5 74HC595的管腳及內(nèi)部結(jié)構(gòu)邏輯圖74HC595的輸入側(cè)有8個(gè)串行移位寄存器,每個(gè)移位寄存器的輸出都連接一個(gè)輸出鎖存器。引腳SER是串行數(shù)據(jù)的輸入端。引腳SRCLK輸入移位寄存器的移位時(shí)鐘脈沖,在其上升沿發(fā)生移位,并將SER的下一個(gè)數(shù)據(jù)打入最低位。RCLK是輸出鎖存器的打入信號,其上升沿將移位寄存器的輸出打入到輸出鎖存器。信號是移位寄存器的清零輸入端,當(dāng)其為低時(shí)移位寄存器的輸出全部為0,由于SRCLK和RCLKError! No bookmark nam
37、e given.兩個(gè)信號是互相獨(dú)立的,所以能夠做到輸入串行移位與輸出鎖存互不干擾。芯片的輸出端為QAQH,最高位QH可作為多片74HC595級連應(yīng)用時(shí),向上一級的級連輸出。但因QH受輸出鎖存器打入控制,所以還從輸出鎖存器前引出了QH,作為與移位寄存器完全同步的級連輸出。移位寄存和輸出鎖存的時(shí)序波形如圖3-6所示:圖3-6 移位寄存和輸出鎖存的時(shí)序波形圖由74HC595組成的列驅(qū)動器示于圖3-7中。該圖由兩片74HC595組成16列的驅(qū)動,由16個(gè)行驅(qū)動器驅(qū)動16行。第一片列驅(qū)動器的SER端連接單片機(jī)輸出的串行列顯示數(shù)據(jù),其QH端連接第二片的SER端,采用這樣的方法組成兩片的級連。兩片相應(yīng)的SR
38、CLK、RCLK端分別并聯(lián),作為統(tǒng)一的串行數(shù)據(jù)移位信號、串行數(shù)據(jù)清除信號和輸出鎖存器打入信號。這樣的結(jié)構(gòu),使得各片串行移位能把16列的顯示數(shù)據(jù)依次輸入到相應(yīng)的移位寄存器輸出端。移位過程結(jié)束之后,控制器輸出RCLK打入信號,16列顯示數(shù)據(jù)一起打入相應(yīng)的輸出鎖存器。然后選通相應(yīng)的行,該行的各列就按照顯示數(shù)據(jù)的要求進(jìn)行顯示。圖3-7 顯示驅(qū)動電路3.3 行驅(qū)動電路3.3.1 行驅(qū)動芯片74HC138 介紹74HC138 作用原理于高性能的存貯譯碼或要求傳輸延遲時(shí)間短的數(shù)據(jù)傳輸系統(tǒng),在 高性能存貯器系統(tǒng)中,用這種譯碼器可以提高譯碼系統(tǒng)的效率。將快速賦能電路用于高速存貯器時(shí),譯碼器的延遲時(shí)間和存貯器的賦
39、能時(shí)間通常小于存貯器的典型存取時(shí)間,這就是說由肖特基鉗位的系統(tǒng)譯碼器所引起的有效系統(tǒng)延遲可以忽略不計(jì)。 HC138 按照三位二進(jìn)制輸入碼和賦能輸入條件,從8 個(gè)輸出端中譯出一個(gè)低電平輸出。兩個(gè)低電平有效的賦能輸入端和一個(gè)高電平有效的賦能輸入端減少了擴(kuò)展所需要的外接門或倒相器,擴(kuò)展成24 線譯碼器不需外接門;擴(kuò)展成32 線譯碼器,只需要接一個(gè)外接倒相器。在解調(diào)器應(yīng)用中,賦能輸入端可用作數(shù)據(jù)輸入端。74HC138真值表如表32所示表32 74HC138譯碼器的真值表3.4 行驅(qū)動電路行驅(qū)動電路相對簡單。行選通信號來源于單片機(jī)按照時(shí)序要求所給出的二進(jìn)制信號,每次更新行號(開始掃描新的一行)時(shí),由單片
40、機(jī)輸出4位二進(jìn)制行號,行號經(jīng)4/16線譯碼器譯碼后,生成16條行選通信號線,再經(jīng)過驅(qū)動器驅(qū)動對應(yīng)的行線。采用譯碼器的方案,還可以保證同一時(shí)刻只選通一條行線,從而達(dá)到顯示的穩(wěn)定性。行驅(qū)動電路原理如圖3-9所示:圖 3-9 行驅(qū)動電路行選通信號從74HC138的端輸出,某一端輸出低電平即為有效,而其它端輸出均為高電平的信號無效。如端輸出低電平,此信號傳至相應(yīng)的PNP型三極管Q1,此時(shí),三極管的基極為低電平,因此,發(fā)射結(jié)正向偏置,集電結(jié)反向偏置,三極管導(dǎo)通,其集電極再將高電平加于LED陣列的對應(yīng)的行上,即將此行選通;而同時(shí)74HC138的其它端輸出高電平而致使該行對應(yīng)的三極管截止,從而所對應(yīng)LED行
41、線不被選通。行選通按順序從,全部各行都選通一遍之后又重新開始,這就是行驅(qū)動電路的逐行掃描過程。行信號A、B、C、D的順序變化范圍從0000、0001、0010、至l111,來一個(gè)選通信號,行信號順序就變化一次,其頻率由掃描電路決定。由于行驅(qū)動電路一條行線上要帶動16列的LED進(jìn)行顯示,按每一LED器件20mA電流計(jì)算,16個(gè)LED同時(shí)發(fā)光時(shí),就需要1620=320mA的驅(qū)動電流,選用三極管8550作為驅(qū)動管可以在邏輯功能和驅(qū)動能力上符合LED的驅(qū)動要求。3.5 LED顯示屏電路LED顯示屏是將發(fā)光二極管按行按列布置的,驅(qū)動時(shí)也就按行按列驅(qū)動。在掃描驅(qū)動方式下可以按行掃描按列控制,當(dāng)然也可以按列
42、掃描按行控制。LED顯示屏現(xiàn)多采用多塊88點(diǎn)陣顯示單元拼接而成。本文就是使用4塊SBM1388型號的實(shí)驗(yàn)?zāi)K組成1632點(diǎn)陣,以滿足漢字顯示的要求。88 LED點(diǎn)陣是最基本的點(diǎn)陣顯示模塊,理解了88 LED點(diǎn)陣的工作原理就可以基本掌握LED點(diǎn)陣顯示技術(shù)。88點(diǎn)陣LED結(jié)構(gòu)如圖3-10所示,其等效電路如圖3-11所示:圖3-10 88點(diǎn)陣LED結(jié)構(gòu)圖圖3-11 88點(diǎn)陣LED等效電路圖從圖中(本圖的LED陣列采用共陽的接法)可以看出,88點(diǎn)陣共需要64個(gè)發(fā)光二極管組成,且每個(gè)發(fā)光二極管是放置在行線和列線的交叉點(diǎn)上。要實(shí)現(xiàn)顯示圖形或字體,只需考慮其顯示方式,通過編程控制各顯示點(diǎn)對應(yīng)LED陽極和陰極
43、端的電平,就可以有效的控制各顯示點(diǎn)的亮滅。當(dāng)采用按行掃描按列控制的驅(qū)動方式時(shí),LED顯示屏8行的同名列共用一套列驅(qū)動器。行驅(qū)動器一行的行線連接到電源的一端,列驅(qū)動器一列的列線連接到電源的另一端。應(yīng)用時(shí)還應(yīng)在各條行線或列線上接上限流電阻。掃描中控制電路將行線的1到 8輪流接通高電位,使連接到各該行的全部LED器件接通正電源,但具體那一個(gè)LED導(dǎo)通,還要看它的負(fù)電源是否接通,這就是列控制的任務(wù)了。當(dāng)對應(yīng)的某一列置0電平,則相應(yīng)的二極管就亮;反之則不亮。例如:如果想使屏幕左上角LED點(diǎn)亮,左下角LED熄滅的話,在掃描到第一行時(shí),第一列的電位就應(yīng)該為低,而掃描到第八行時(shí)第一列的電位就應(yīng)該為高。這樣行線
44、上只管一行一行的輪流導(dǎo)通,列線上進(jìn)行通斷控制,實(shí)現(xiàn)了行掃描列控制的驅(qū)動方式。3.6 時(shí)鐘脈沖電路89C52的最高時(shí)鐘脈沖頻率已經(jīng)達(dá)到24 MHz,它內(nèi)部已經(jīng)具備了振蕩電路,只要在89C52的兩個(gè)引腳(即19、18腳)連接到簡單的石英振蕩晶體的2個(gè)管腳即可,同時(shí)晶體的2個(gè)管腳也要用30 pF的電容耦合到地,如圖3-11所示。圖3-11時(shí)鐘脈沖電路3.7 復(fù)位電路89C52的復(fù)位引腳(RESET)是第9腳,當(dāng)此引腳連接高電平超過2個(gè)機(jī)器周期時(shí),即可產(chǎn)生復(fù)位的動作。以24 MHz的時(shí)鐘脈沖為例,每個(gè)時(shí)鐘脈沖為05s,兩個(gè)機(jī)器周期為1 s,因此,在第9腳上連接1個(gè)2s的高電平脈沖,即可產(chǎn)生復(fù)位動作。最
45、簡單的就是只有1個(gè)電阻跟1個(gè)電容就可構(gòu)成可靠復(fù)位的電路,電阻一般選擇10 k,電容一般選擇10F,如圖3-12所示。圖3-12復(fù)位電路3.8 小結(jié)以上就是1632點(diǎn)陣LED電子顯示屏系統(tǒng)硬件部分的各功能模塊分述,經(jīng)過合理的設(shè)計(jì)論證后和就可以整體結(jié)合在一起,再根據(jù)設(shè)計(jì)配備好各元器件實(shí)物,通過組裝后等在單片機(jī)的程序存儲器里放入編制好的程序即可成為一個(gè)完整的應(yīng)用系統(tǒng)。系統(tǒng)綜合電路原理圖見附錄一。第四章 系統(tǒng)軟件部分設(shè)計(jì)在單片機(jī)系統(tǒng)中,硬件是系統(tǒng)的基礎(chǔ),軟件則是在硬件的基礎(chǔ)上對其合理的調(diào)配和使用,從而完成應(yīng)用系統(tǒng)所要完成的任務(wù)。軟件的設(shè)計(jì)是設(shè)計(jì)控制系統(tǒng)的應(yīng)用程序。其任務(wù)是在總體設(shè)計(jì)和硬件設(shè)計(jì)的基礎(chǔ)上,
46、確定程序結(jié)構(gòu),分配內(nèi)RAM資源,劃分功能模塊,然后進(jìn)行主程序和各模塊程序的設(shè)計(jì),最后連接起來成為一個(gè)完整的應(yīng)用程序。在進(jìn)行系統(tǒng)總體設(shè)計(jì)時(shí),曾經(jīng)規(guī)劃過軟件結(jié)構(gòu),但由于硬件系統(tǒng)尚未仔細(xì)確定,軟件結(jié)構(gòu)框圖十分粗糙,當(dāng)硬件設(shè)計(jì)接口擴(kuò)展及各功能模塊與CPU連接關(guān)系確定后,就能夠具體明確對軟件設(shè)計(jì)的要求。本設(shè)計(jì)的LED顯示屏軟件的主要功能是向屏體提供顯示數(shù)據(jù),并產(chǎn)生各種控制信號,使屏幕按設(shè)計(jì)的要求顯示。根據(jù)軟件分層次設(shè)計(jì)的原理,可把顯示屏的軟件系統(tǒng)分成兩大層:第一層是底層的顯示驅(qū)動程序,第二層是上層的系統(tǒng)應(yīng)用程序。顯示驅(qū)動程序負(fù)責(zé)向屏體送顯示數(shù)據(jù),并負(fù)責(zé)產(chǎn)生行掃描信號和其它控制信號,配合完成LED顯示屏的
47、掃描顯示工作。顯示驅(qū)動程序由定時(shí)器T0中斷程序?qū)崿F(xiàn)。系統(tǒng)應(yīng)用程序完成系統(tǒng)環(huán)境設(shè)置(初始化)、顯示效果處理等工作,由主程序來實(shí)現(xiàn)。從有利于實(shí)現(xiàn)語言的直觀,易于記憶和檢查,可讀性較好和使語言程序占用較少的單片機(jī)存儲空間,實(shí)時(shí)處理系統(tǒng)可以快速的執(zhí)行指令的角度考慮,本設(shè)計(jì)中顯示屏程序采用C語言編寫。 4.1 系統(tǒng)主程序系統(tǒng)主程序的總體結(jié)構(gòu)如圖4-1所示。系統(tǒng)的主程序開始以后,首先是對系統(tǒng)環(huán)境初始化,包括設(shè)置串口、定時(shí)器、中斷和端口;然后LED顯示屏進(jìn)入開機(jī)狀態(tài),轉(zhuǎn)入正常的顯示。首先是向左滾動顯示“桂林航?!?個(gè)漢字;接著向右滾動顯示這4個(gè)漢字;再分別向上滾動和向下滾動。由于單片機(jī)沒有停機(jī)指令,所以可以
48、設(shè)置系統(tǒng)程序不斷地循環(huán)執(zhí)行上述顯示效果。系統(tǒng)程序結(jié)構(gòu)屬中斷方式,絕大多數(shù)功能在中斷服務(wù)子程序中完成。根據(jù)總體結(jié)構(gòu),可將程序劃分為幾個(gè)功能化模塊:串行口中斷服務(wù)程序、多字滾動顯示子程序、單字顯示子程序、掃描程序。各個(gè)模塊可進(jìn)行獨(dú)立設(shè)計(jì)、調(diào)試和查錯(cuò),最終再連接成一個(gè)整體。這樣可方便程序調(diào)用,程序整體層次清晰,結(jié)構(gòu)一目了然,方便閱讀。進(jìn)入中斷定時(shí)器賦初值讀取行號并增1送新行顯示數(shù)據(jù)消 隱切換顯示數(shù)據(jù)送新行號、打開顯示退出中斷圖4-2 顯示驅(qū)動程序流程圖開 始系統(tǒng)初始化“上滾屏”顯示效果循環(huán)掃描顯示圖4-1 系統(tǒng)主程序的總體結(jié)構(gòu)4.2 顯示驅(qū)動程序圖4-2為顯示驅(qū)動程序(顯示屏掃描函數(shù))流程圖。根據(jù)流
49、程圖可以編寫出相應(yīng)的顯示程序。顯示驅(qū)動程序在進(jìn)入中斷后首先要對定時(shí)器T0重新賦初值,以保證顯示屏刷新率的穩(wěn)定,1/16掃描顯示屏的刷新率(幀頻)計(jì)算公式如下:刷新率(幀頻)=(1/16)T0溢出率 =(1/16)(f/(12*(65536- t)其中f為晶振頻率,t為定時(shí)器T0初值(工作在16位定時(shí)器模式)。T0初值=2 (定時(shí)時(shí)間/機(jī)周時(shí)間)圖4-3 定時(shí)/計(jì)數(shù)器T0工作方式1邏輯電路結(jié)構(gòu)圖其中N與工作方式有關(guān),本設(shè)計(jì)定時(shí)/計(jì)數(shù)器工作于方式1,如圖4-3所示,方式1構(gòu)成一個(gè)16位定時(shí)計(jì)數(shù)器,即N=16。方式1最大計(jì)數(shù)值為216=65536 ,若fosc=12MHz,則定時(shí)時(shí)間范圍為16553
50、6s。機(jī)周時(shí)間與主振頻率有關(guān),機(jī)器周期是時(shí)鐘周期的12倍,因此,機(jī)周時(shí)間=12/ fosc。當(dāng)fosc=12MHz時(shí),1機(jī)周=1s。顯示屏軟件的主要功能是向顯示屏提供顯示數(shù)據(jù),并產(chǎn)生各種控制信號,使屏幕按設(shè)計(jì)的要求顯示。根據(jù)軟件分層次設(shè)計(jì)的原理,可把顯示屏的軟件系統(tǒng)分成兩大層:第一層是底層的顯示驅(qū)動程序,第二層是上層的系統(tǒng)應(yīng)用程序。顯示驅(qū)動程序負(fù)責(zé)向點(diǎn)陣屏傳送特定組合的顯示數(shù)據(jù),并負(fù)責(zé)產(chǎn)生行掃描信號和其他控制信號,配合完成LED顯示屏的掃描顯示工作。顯示驅(qū)動程序由顯示子程序?qū)崿F(xiàn);系統(tǒng)環(huán)境設(shè)置(初始化)由系統(tǒng)初始化程序完成;顯示效果處理等工作,則由主程序通過調(diào)用子程序來實(shí)現(xiàn)。然后顯示驅(qū)動程序查詢
51、當(dāng)前燃亮的行號,從顯示緩存區(qū)內(nèi)讀取下一行的顯示數(shù)據(jù),并通過串口發(fā)送給移位寄存器。為消除在切換行顯示數(shù)據(jù)的時(shí)候產(chǎn)生拖尾現(xiàn)象,驅(qū)動程序先要關(guān)閉顯示屏,即消隱,等顯示數(shù)據(jù)打入輸出鎖存器并鎖存,然后再輸出新的行號,重新打開顯示。顯示程序給出了各控制信號和顯示數(shù)據(jù),其作用及相互配合關(guān)系均已在硬件部分作過介紹,相應(yīng)的程序部分在清單的注釋區(qū)內(nèi)分別進(jìn)行了說明,在此不再一一詳述。系統(tǒng)程序清單見附錄二。第五章 調(diào)試及性能分析一個(gè)單片機(jī)系統(tǒng)經(jīng)過總體設(shè)計(jì),完成了硬件和軟件設(shè)計(jì)開發(fā)。元器件安裝后,在系統(tǒng)的程序存儲器中寫入編制好的應(yīng)用程序,系統(tǒng)即可運(yùn)行。但編制好的程序或焊接好的線路不能按預(yù)計(jì)的那樣正常工作是常見的事,多少
52、會出現(xiàn)一些硬件、軟件上的錯(cuò)誤。這就需要通過調(diào)試來發(fā)現(xiàn)錯(cuò)誤并加以改正。調(diào)試可分為硬件調(diào)試和軟件調(diào)試。在允許的條件下,根據(jù)本設(shè)計(jì)系統(tǒng)的需求性首先采用在PC機(jī)上用模擬開發(fā)軟件進(jìn)行檢測和調(diào)試,然后進(jìn)行硬件的組裝與調(diào)試。5.1 軟件調(diào)試軟件調(diào)試根據(jù)開發(fā)的設(shè)備情況可以有3種方法:交叉匯編、借助進(jìn)行匯編語言調(diào)試、手工匯編、脫機(jī)調(diào)試等。本次軟件調(diào)試采用脫機(jī)調(diào)試的方法,即完全用仿真器軟件在PC機(jī)上對目標(biāo)電路原理圖和程序進(jìn)行檢測和調(diào)試。調(diào)試過程中單片機(jī)相應(yīng)輸入端由通用鍵盤和鼠標(biāo)設(shè)定,運(yùn)行狀態(tài)、各寄存器狀態(tài)、端口狀態(tài)等都可以在CRT指定的窗口區(qū)域顯示出來,以確定程序運(yùn)行有無錯(cuò)誤。調(diào)試可按下列步驟進(jìn)行:一 目標(biāo)程序糾
53、錯(cuò)該階段工作通常在目標(biāo)程序編輯時(shí)就完成。一般來說,仿真器軟件能給用戶輸入的程序指令糾錯(cuò),包括書寫格式、標(biāo)號未定義或多重定義、轉(zhuǎn)移地址溢出等錯(cuò)誤。二 子程序功能調(diào)試程序設(shè)計(jì)通常采用模塊程序設(shè)計(jì),調(diào)試時(shí)可對一個(gè)個(gè)子程序分別進(jìn)行調(diào)試,設(shè)置好入口條件,然后采用單步運(yùn)行或斷點(diǎn)運(yùn)行方式,檢查系統(tǒng)CPU現(xiàn)場、RAM和I/O口狀態(tài),看程序執(zhí)行結(jié)果是否符合設(shè)計(jì)要求。三 整體程序綜合調(diào)試即把各子程序整體連起來進(jìn)入到綜合電路調(diào)試,看是否能實(shí)現(xiàn)預(yù)計(jì)的功能顯示。在這階段若發(fā)生故障,可以考慮各子程序在運(yùn)行時(shí)是否破壞現(xiàn)場,數(shù)據(jù)緩沖單元是否發(fā)生沖突,標(biāo)志位的建立和清除在設(shè)計(jì)上是否失誤,堆棧是否溢出,輸入輸出狀態(tài)是否正常等。用
54、軟件模擬器調(diào)試不需任何在線仿真器,也不需要用戶樣機(jī),直接就可以在PC機(jī)上開發(fā)和調(diào)試。調(diào)試和修改完畢后,對于實(shí)時(shí)性要求不高的應(yīng)用系統(tǒng)可以直接使用編程器將軟件固化在目標(biāo)系統(tǒng)ROM中,然后獨(dú)立投入運(yùn)行。5.2 硬件調(diào)試單片機(jī)應(yīng)用系統(tǒng)的硬件調(diào)試和軟件調(diào)試是分不開的,許多硬件故障在軟件調(diào)試時(shí)才能發(fā)現(xiàn),但通常要先排除系統(tǒng)中明顯的硬件故障。調(diào)試工作可以分為四步:一 目測檢查根據(jù)硬件邏輯設(shè)計(jì)圖,仔細(xì)檢查樣機(jī)線路是否連接正確,并核對元器件的型號、規(guī)格和安裝是否符合要求,必要時(shí)可用萬用表檢測線路通斷情況。二 通電檢查 在確保電源良好前提下,接通電源。最好在電源與其余電路之間串接一個(gè)電流表。若接通后電流很大,必須立
55、即切斷電源。電源大得超出正常范圍,說明電路中有短路或故障。通電檢查的主要目的是看系統(tǒng)是否存在短路或由元器件損壞、裝配錯(cuò)誤引起的電流異常。三 檢查相應(yīng)芯片的邏輯關(guān)系加電后檢查各芯片插座上相關(guān)引腳的電位,仔細(xì)測量相應(yīng)的輸入輸出電平是否正常。單片機(jī)系統(tǒng)大都是數(shù)字邏輯電路,使用電平檢查法可首先查出邏輯設(shè)計(jì)是否正確,選用器件和連接關(guān)系是否符合要求等。5.3 性能分析系統(tǒng)通過調(diào)試組裝后一般即可正常工作。LED顯示屏的刷新頻率及顯示顯示效果是主要的性能指標(biāo)。顯示屏刷新率由定時(shí)器T0的溢出率和單片機(jī)的晶振頻率決定,表5-1給出了顯示屏采用的頻率及其對應(yīng)的定時(shí)器T0初值表51 顯示屏刷新率(幀率)與T0初值關(guān)系
56、表刷新率/Hz255062.57585100120T0初值OxEC78OxF63COxF830OxF97EOxFA42OxFB1EOxFBEE理論上來說,24Hz以上的刷新率就能看到連續(xù)穩(wěn)定的顯示,刷新率越高,顯示越穩(wěn)定,同時(shí)刷新率越高,顯示驅(qū)動程序占用的CPU時(shí)間也越多。實(shí)驗(yàn)證明,在目測條件下刷新率40Hz以下的畫面看起來閃爍較嚴(yán)重,刷新率50Hz以上的已基本覺察不出畫面閃爍,刷新率達(dá)到85Hz以上時(shí)再增加畫面閃爍沒有明顯改善。顯示效果處理的內(nèi)容和方法非常廣泛,根據(jù)需求可做變動,在這里不做具體討論。根據(jù)實(shí)踐證明,這個(gè)方案設(shè)計(jì)的1632點(diǎn)陣LED圖文顯示屏,結(jié)構(gòu)合理,成本較低,且較容易擴(kuò)展成更
57、大的顯示屏;顯示屏各點(diǎn)亮度均勻、充足;顯示圖形或文字穩(wěn)定、清晰無串?dāng)_;可用靜止、移入移出等多種顯示方式顯示圖形或文字。第六章 總結(jié)與展望本文通過分析 LED 顯示屏的技術(shù)發(fā)展現(xiàn)狀,根據(jù)實(shí)際應(yīng)用需求,完整的設(shè)計(jì)了 LED 顯示屏控制系統(tǒng)。并且,針對系統(tǒng)中的關(guān)鍵問題進(jìn)行詳細(xì)的分析和實(shí)現(xiàn),同時(shí)在理論上對其做了系統(tǒng)的論述和說明?;痉项A(yù)期設(shè)想,并在實(shí)際中得到應(yīng)用。隨著集微電子技術(shù),光電子技術(shù),計(jì)算機(jī)技術(shù),信息技術(shù)于一體的LED 顯示屏在各行各業(yè)的廣泛應(yīng)用,對其研究逐漸成為一個(gè)重要的課題。參考文獻(xiàn)秦文豪.點(diǎn)陣漢字顯示原理及其在點(diǎn)陣LCD&LED中的應(yīng)用2 諸昌鈴.LED顯示屏系統(tǒng)原理及工程技術(shù)M.成都
58、電子科技大學(xué)出版社,2000.12.3張毅剛,單片機(jī)原理及應(yīng)用,北京:高等教育出版社,2006.58624李光飛,單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo),北京:北京航空航天出版社,20045諸昌鈐, LED顯示屏系統(tǒng)原理及工程技術(shù),成都:電子科技大學(xué)出版社,20006李精華,單片機(jī)原理及應(yīng)用,北京:高等教育出版社,20107楊素行,模擬電子技術(shù)基礎(chǔ)簡明教程,北京:高等教育出版社,20048梅開鄉(xiāng),數(shù)字邏輯電路,北京:電子工業(yè)出版社,20059 周水清.LED大屏幕信息發(fā)布技術(shù)與應(yīng)用研究.武漢理工大學(xué)碩士學(xué)位論文,2002.致 謝致 謝本論文是在簡遠(yuǎn)鳴老師的悉心指導(dǎo)下完成的,從課題的選擇到論文的最終完成的每一個(gè)
59、環(huán)節(jié),自始自終得到導(dǎo)師的精心指導(dǎo)和幫助。指導(dǎo)老師淵博的學(xué)識、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、求實(shí)創(chuàng)新的工作作風(fēng)使我受益非淺。這半年來,我不僅從導(dǎo)師那里學(xué)到許多專業(yè)知識,更重要的是學(xué)會了進(jìn)行科研的學(xué)術(shù)方法,所有這些都是以后人生生活的重大財(cái)富,在此特向?qū)煴硎局孕牡母兄x和崇高的敬意。在畢業(yè)設(shè)計(jì)的研究過程中,何松裕、朱俊臣同學(xué)在我的論文設(shè)計(jì)上給予的大力幫助,還得到了實(shí)驗(yàn)室各位老師和同學(xué)的關(guān)心、幫助和支持,在此對他們表示衷心的感謝。最后,感謝我的家人,感謝我的父親、母親,他們的關(guān)心和鼓勵(lì)給了我信心和幫助。由衷的向所有關(guān)心和幫助我的老師、同學(xué)、朋友表示感謝!附錄一 電路圖圖1 電路原理圖圖 2 PCB圖附錄二 系統(tǒng)程序
60、清單/*頭文件*/#include #include #define uint unsigned int#define uchar unsigned char#define NOP() _nop_()#define ABCD_port P1 /*端口定義*/sbit A=P31;sbit EN_port = P13;sbit DA_in_port = P12;sbit CLK_port = P11;sbit Latch_port = P10; uchar code ziku_table=0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,/*顯示8行空白*/0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案