基于AT89S52的LED漢字顯示屏的設(shè)計(jì)說(shuō)明_第1頁(yè)
基于AT89S52的LED漢字顯示屏的設(shè)計(jì)說(shuō)明_第2頁(yè)
基于AT89S52的LED漢字顯示屏的設(shè)計(jì)說(shuō)明_第3頁(yè)
基于AT89S52的LED漢字顯示屏的設(shè)計(jì)說(shuō)明_第4頁(yè)
基于AT89S52的LED漢字顯示屏的設(shè)計(jì)說(shuō)明_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、城市職業(yè)學(xué)院 畢業(yè)設(shè)計(jì)(論文)( 2012屆)設(shè)計(jì)(論文)題目基于AT89S52的LED漢字顯示屏的設(shè)計(jì)分工項(xiàng)目硬件設(shè)計(jì) 辦 學(xué) 點(diǎn) (系) XX(電子工程系) 專 業(yè) 電子信息工程技術(shù) 班級(jí) XXXXXXX 學(xué)號(hào) XXXXXXXXXX 學(xué)生 XXXX 起訖日期 年 月 日 年 月 日 地點(diǎn) 淮 安 指導(dǎo)教師XXX 職稱 XXX XXX年X月X日摘要LED(LightEmittingDiode)行業(yè)已經(jīng)成為一個(gè)快速發(fā)展的新興產(chǎn)業(yè),市場(chǎng)空間巨大,前景廣闊。本文介紹了基于AT89S52單片機(jī)的LED顯示屏設(shè)計(jì)。其中著重介紹了LED點(diǎn)陣顯示的硬件設(shè)計(jì)思路、硬件電路各個(gè)部分的功能與原理、相應(yīng)軟件的程序

2、設(shè)計(jì),以與詳細(xì)的使用說(shuō)明和工作流程。本文分為六部分,其中主要容是系統(tǒng)總體分析,系統(tǒng)硬件設(shè)計(jì)系統(tǒng)軟件設(shè)計(jì)等三部分。系統(tǒng)總體分析是基礎(chǔ),系統(tǒng)硬件設(shè)計(jì)是本文的關(guān)鍵,該部分首先簡(jiǎn)單描述系統(tǒng)硬件工作原理,且附以系統(tǒng)硬件設(shè)計(jì)圖論述了本次畢業(yè)設(shè)計(jì)所應(yīng)用的各硬件接口模塊的功能與工作過(guò)程。本文撰寫(xiě)的主導(dǎo)思想是軟、硬件相結(jié)合,以硬件為基礎(chǔ),來(lái)進(jìn)行各功能模塊的設(shè)計(jì)。本設(shè)計(jì)具有操作簡(jiǎn)單、擴(kuò)展功能較多、實(shí)用性強(qiáng)等特點(diǎn)。關(guān)鍵詞:AT89S52單片機(jī) LED 點(diǎn)陣顯示 硬件設(shè)計(jì)目 錄第一章 前言5 1.1 LED顯示屏的發(fā)展背景與國(guó)外研究現(xiàn)狀5 1.2 設(shè)計(jì)目標(biāo)與思路51.2.1設(shè)計(jì)的目標(biāo)51.2.2設(shè)計(jì)思路5第二章 系統(tǒng)

3、總體分析7 2.1 LED顯示屏的技術(shù)現(xiàn)狀與發(fā)展趨勢(shì)72.1.1 LED顯示屏相關(guān)定義72.1.2 LED顯示屏的分類72.1.3相關(guān)技術(shù)7 2.2 LED點(diǎn)陣驅(qū)動(dòng)原理9 2.3 LED16*16點(diǎn)陣顯示10 2.4系統(tǒng)硬件的總體結(jié)構(gòu)與布局112.4.1 控制電路設(shè)計(jì)112.4.2 顯示驅(qū)動(dòng)電路12 2.5本章小結(jié)14第三章 硬件設(shè)計(jì)與實(shí)現(xiàn)15 3.1單片機(jī)系統(tǒng)的設(shè)計(jì)153.1.1 AT89S52主要功能列舉如下153.1.2 AT89S52各引腳功能介紹16 3.2 驅(qū)動(dòng)電路18 3.2.1 74LS138芯片簡(jiǎn)介183.2.2驅(qū)動(dòng)電路的構(gòu)成19 3.3 本章小結(jié)20第四章 漢字點(diǎn)陣顯示原理

4、與字庫(kù)代碼獲取方法214.1漢字點(diǎn)陣顯示原理21 4.2字庫(kù)代碼的獲取方法21 4.3本章小結(jié)23第五章 程序的設(shè)計(jì)與調(diào)試24 5.1程序流程圖24 5.2程序的設(shè)計(jì)24 5.3程序的輸入以與HEX文件的生成275.3.1 keil的簡(jiǎn)介275.3.2 keil的使用說(shuō)明28 5.4本章小結(jié)29第六章 總結(jié)與展望30 6.1 總結(jié)30 6.2展望30參考文獻(xiàn)第一章 前言1.1 LED顯示屏的發(fā)展背景與國(guó)外研究現(xiàn)狀在大型商場(chǎng)、車站、碼頭、地鐵站以與各類辦事窗口等越來(lái)越多的場(chǎng)所所需要用LED點(diǎn)陣顯示圖形和漢字。LED行業(yè)已成為一個(gè)快速發(fā)展的新興產(chǎn)業(yè),市場(chǎng)空間巨大,前景廣闊。隨著信息產(chǎn)業(yè)的高速發(fā)展,

5、LED顯示作為信息傳播的一種重要手段,已廣泛應(yīng)用于室外需要進(jìn)行服務(wù)容和服務(wù)宗旨宣傳的公眾場(chǎng)所,例如戶外公共場(chǎng)所廣告宣傳、機(jī)場(chǎng)車站魯克引導(dǎo)信息、公交車輛報(bào)站系統(tǒng)、證券與銀行信息顯示、餐館報(bào)價(jià)信息顯示、高速公路可變情報(bào)板、體育場(chǎng)館比賽轉(zhuǎn)播、樓宇燈飾、交通信號(hào)燈、景觀照明等。顯然,LED顯示已成為城市亮化、現(xiàn)代化和信息化社會(huì)的一個(gè)重要標(biāo)志。 LED點(diǎn)陣設(shè)計(jì)主要應(yīng)用于顯示屏,它是利用發(fā)光二極管點(diǎn)陣模塊或像素單元組成的平面顯示屏幕。由于它具有發(fā)光效率高、使用壽命長(zhǎng)、組態(tài)靈活、色彩豐富以與對(duì)室室外環(huán)境適應(yīng)能力強(qiáng)等有點(diǎn),自20世紀(jì)80年代后期開(kāi)始,隨著LED制造技術(shù)的不斷完善,在國(guó)外得到了廣泛的應(yīng)用。在我國(guó)

6、改革開(kāi)放之后,特別是進(jìn)入90年代國(guó)民經(jīng)濟(jì)高速增長(zhǎng),對(duì)公眾場(chǎng)合發(fā)布信息的需求日益強(qiáng)烈,LED顯示屏的出現(xiàn)正好適應(yīng)了這一市場(chǎng)形勢(shì),因而在LED顯示屏的設(shè)計(jì)制造技術(shù)與應(yīng)用水平上都得到了迅速的提高。LED顯示屏經(jīng)歷了從單色、雙色圖文顯示屏,到圖像顯示屏的發(fā)展過(guò)程。1.2設(shè)計(jì)目標(biāo)與思路1.2.1設(shè)計(jì)目標(biāo)畢業(yè)設(shè)計(jì)是學(xué)生完成本專業(yè)教學(xué)計(jì)劃達(dá)到培養(yǎng)目標(biāo)的重要的教學(xué)環(huán)節(jié),是教學(xué)計(jì)劃中綜合性最強(qiáng)的實(shí)踐性教學(xué)環(huán)節(jié),它對(duì)于培養(yǎng)學(xué)生正確的思想和工作作風(fēng),提高學(xué)生中綜合運(yùn)用專業(yè)知識(shí)分析和解決實(shí)際問(wèn)題的能力,達(dá)到工程技術(shù)人員所必須具備的基本素質(zhì)等方面具有重要的意義。本設(shè)計(jì)的理論基礎(chǔ)是單片機(jī)技術(shù)基礎(chǔ),微機(jī)原理,模擬和數(shù)字電路

7、。比如AT89C51 芯片的一些工作原理是在MCS51的基礎(chǔ)上通過(guò)改進(jìn)完成的。8255芯片的工作方式是在微機(jī)原理介紹的。三極管和74LS154的工作原理也分別在模擬和數(shù)字電路離介紹過(guò)。通過(guò)本設(shè)計(jì)不僅要把以前學(xué)過(guò)的知識(shí)重新溫習(xí),而且在查閱課外資料時(shí)還有好多芯片都是以學(xué)過(guò)的芯片為基礎(chǔ),并且在其基礎(chǔ)上改進(jìn)和完善的。通過(guò)這次畢業(yè)設(shè)計(jì)是我在學(xué)校學(xué)習(xí)的理論知識(shí)和實(shí)際應(yīng)用有機(jī)的結(jié)合起來(lái),同時(shí)也能培養(yǎng)我獨(dú)立思考、勇于創(chuàng)新的科學(xué)態(tài)度和鉆研精神,為我將要踏上工作崗位做一次提前的鍛煉。1.2.2設(shè)計(jì)思路利用單片機(jī)控制技術(shù)控制LED的顯示,再結(jié)合單片機(jī)的程序作線路布置,即硬件設(shè)計(jì)。行列電路設(shè)計(jì),分析電路圖確定整個(gè)系統(tǒng)

8、大概的規(guī)模。進(jìn)行系統(tǒng)分析,通過(guò)系統(tǒng)分析,確定該系統(tǒng)該具有哪些功能,有哪些模塊,各個(gè)模塊之間是怎樣聯(lián)系的,以與怎樣組合的。確定所需的元器件,然后通過(guò)電路圖進(jìn)行連接。集合程序調(diào)試,調(diào)試整個(gè)的系統(tǒng)模塊的功能,看各個(gè)功能是否能正常運(yùn)行,并找出程序中的錯(cuò)誤,改正這些錯(cuò)誤。最終能在LED電路板上顯示所要的圖形或漢字。第二章 系統(tǒng)總體分析本節(jié)是該設(shè)計(jì)的方案與比較部分,對(duì)設(shè)計(jì)中所采用的芯片從多方面綜合的進(jìn)行比較,最后經(jīng)過(guò)仔細(xì)的研究后決定所選的器件。2.1 LED顯示屏的技術(shù)現(xiàn)狀與發(fā)展趨勢(shì) LED顯示屏的技術(shù)圍包括半導(dǎo)體光電器件技術(shù)、電子電路技術(shù)、集成電路技術(shù)、信息圖像處理技術(shù)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)以與電子產(chǎn)品制造和

9、電子產(chǎn)品安裝工程相關(guān)技術(shù)。2.1.1 LED顯示屏相關(guān)定義(1)LED(light emitting diode):發(fā)光二極管(2)LED顯示屏(LED panel):由LED器件組成的顯示屏幕(3)顯示單元(display unit):由電路與安裝結(jié)構(gòu)確定的并具有顯示功能的組成LED顯示屏的最小單元(4)全彩色LED顯示屏(all-colorLEDpanel)由紅、綠藍(lán)三基色LED器件組成并可調(diào)處多種色彩的LED顯示屏2.1.2 LED顯示屏的分類(1)根據(jù)使用環(huán)境。LED顯示屏分為室顯示屏和室外顯示屏(2)根據(jù)顯示顏色,LED顯示分為單基色LED顯示屏,雙基色LED顯示屏和全彩色(三基色)

10、LED顯示屏。按灰度級(jí)又可分為16、32、64、128、256級(jí)灰度LED顯示屏等。(3)根據(jù)顯示性能,分為文本LED顯示顯示屏、圖文LED顯示屏、計(jì)算機(jī)視頻LED顯示屏,電視視頻LED顯示屏和行情L(zhǎng)ED顯示屏。(4)根據(jù)基本發(fā)光點(diǎn)。室LED顯示屏可以按照LED單點(diǎn)直徑分類;室外LED 顯示屏可以按照采用的象素直徑分類。2.1.3相關(guān)技術(shù)(1)顯示顏色、亮度和視角基礎(chǔ)半導(dǎo)體工業(yè)的迅猛發(fā)展,帶動(dòng)了發(fā)光二極管制造材料以與制作工藝的改進(jìn),在顏色與亮度方面都有了質(zhì)的飛躍,高亮度、藍(lán)色與純綠色發(fā)光二極管已產(chǎn)業(yè)化并得到應(yīng)用。首先要按照亮度指標(biāo)選澤LED或顯示模塊,其次是根據(jù)選擇的產(chǎn)品紅、綠、藍(lán)顏色的亮度來(lái)

11、確定哪一種顏色為基準(zhǔn),一般是將亮度比例的一種作為亮度基準(zhǔn)。當(dāng)基準(zhǔn)的一種已經(jīng)達(dá)到最大亮度時(shí),調(diào)整另外一種或兩種。顯示屏幕是雙色時(shí),大多數(shù)情況下以綠色為基準(zhǔn),調(diào)整紅色二極管的工作電流。一般是降低工作電流,以平衡顏色黃色為調(diào)整標(biāo)準(zhǔn),這樣就要減小整個(gè)顯示屏幕的亮度。顯示屏幕的顏色調(diào)整至最佳平衡狀態(tài),則會(huì)使屏的亮度降低。如果顯示屏幕為了達(dá)到亮度要求,將每一種顏色都達(dá)到最大的亮度,那么就失去了顏色的平衡,例如:雙色屏幕的黃顏色偏紅,或者偏綠。目前LED顯示屏從顏色上能滿足室外不同環(huán)境下的單色、雙基色、全彩色顯示要求,四元素的紅色LED器件與高亮度藍(lán)色、純綠色在室外顯示屏中得到普遍應(yīng)用。在顯示屏制作上采用S

12、MD表貼技術(shù)的LED器件,可以獲得更好的視角和亮度,目前已在高密度、全彩色室顯示屏中得到應(yīng)用,但相對(duì)成本比較高,隨著器件成本的降低,未來(lái)會(huì)有比較大的市場(chǎng)潛力。(2)灰度控制技術(shù) LED顯示屏在進(jìn)行圖文顯示時(shí),對(duì)同一基色采用級(jí)差間隔亮度,實(shí)現(xiàn)顏色的組合,一般可做到16級(jí)、64級(jí)、256級(jí)灰度。為使顯示效果更符合人眼的視覺(jué)特性,出現(xiàn)了非線性級(jí)差調(diào)灰技術(shù),即在低亮度區(qū)級(jí)差小,增加級(jí)數(shù),逐步到高亮度區(qū)時(shí)增大級(jí)差,形成視覺(jué)效果上的“級(jí)差一致性”。目前LED顯示屏灰度控制一般都在256級(jí),通過(guò)采用非線性調(diào)灰技術(shù),顯示屏的顯示效果比較理想。實(shí)際上、受數(shù)據(jù)、圖像的信號(hào)源的制約,單純追求大數(shù)量級(jí)的灰度控制,在使

13、用中的實(shí)際價(jià)值是值得商討的。(3)驅(qū)動(dòng)電路 LED正向?qū)妷旱牡湫椭?.0V4.0V,驅(qū)動(dòng)電流為20mA。如果只是用一個(gè)固定的正向電壓驅(qū)動(dòng)LED,可能會(huì)產(chǎn)生變化圍較大的正向電流,例如用3.4V驅(qū)動(dòng)6只LED,相應(yīng)的正向電流差別較大;10mA44mA,取決于具體的LED特性曲線。為保證可靠性,驅(qū)動(dòng)LED的電流必須低于LED額定值的要求,典型最大值一般為30mA,但是,當(dāng)環(huán)境溫度升高時(shí)所允許的額定電流會(huì)降低,例如,當(dāng)溫度達(dá)到50時(shí)電流需限制在20mA以。LED顯示屏廣泛使用的驅(qū)動(dòng)電路是基于通用型集成電路來(lái)設(shè)計(jì)的,原理比較簡(jiǎn)單,價(jià)格便宜,產(chǎn)品的技術(shù)性比較強(qiáng)。通用IC設(shè)計(jì)的驅(qū)動(dòng)電路在室外單色、雙基色

14、顯示屏方面應(yīng)用成熟,目前仍然是主流的驅(qū)動(dòng)電路。近年恒流驅(qū)動(dòng)IC的發(fā)展較快并受到重視和廣泛應(yīng)用。恒流驅(qū)動(dòng)技術(shù)根據(jù)LED器件的發(fā)光與驅(qū)動(dòng)電流高度祥光的特點(diǎn),大大提高了LED顯示的均勻性,同時(shí),減少了顯示驅(qū)動(dòng)電路的阻容元件,降低了故障點(diǎn),使LED顯示屏更可靠、亮麗。(4)系統(tǒng)控制技術(shù) 控制系統(tǒng)是位了達(dá)到實(shí)現(xiàn)用“計(jì)算機(jī)”來(lái)控制“LED電子顯示屏”而專門設(shè)計(jì)的。 顯示屏的控制系統(tǒng)包括了輸入接口電路、信號(hào)的控制、轉(zhuǎn)換和數(shù)字化處理電路、輸出接口電路等,涉與的具體技術(shù)很多,其中為業(yè)關(guān)注并研究開(kāi)發(fā)和應(yīng)用的關(guān)鍵技術(shù)包括:串行傳輸與并行傳輸、動(dòng)態(tài)掃描與靜態(tài)鎖存、輸入接口技術(shù)、自動(dòng)檢測(cè)、遠(yuǎn)程控制技術(shù)等。(5)通信傳輸

15、和網(wǎng)絡(luò)控制 對(duì)于信息的發(fā)送方式:一種是用232通訊,利用計(jì)算機(jī)串行口COM1-COM4通訊,此方式通訊速度較慢,且距離不能太遠(yuǎn),只有30米左右;另一種是采用在計(jì)算機(jī)上加插一塊通訊卡的422通訊方式,此方式通訊速度快,且距離遠(yuǎn),可達(dá)1000米左右。 另外、隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,LED顯示屏在網(wǎng)絡(luò)環(huán)境下的使用情況越來(lái)越多,在多媒體、多種顯示設(shè)備組成的信息顯示系統(tǒng)中,采用智能化網(wǎng)絡(luò)控制,聯(lián)網(wǎng)控制多屏技術(shù)也在實(shí)際中得到應(yīng)用?,F(xiàn)在一般把顯示圖形或文字的LED顯示屏稱為圖文屏,其實(shí)LED圖文顯示屏并沒(méi)有一個(gè)公認(rèn)的嚴(yán)格的定義,這里所謂的圖形,是指由單色固定亮度的點(diǎn)陣線條組成的任意圖形,其中LED點(diǎn)陣發(fā)光

16、器件或發(fā)光或熄滅,即只有兩種狀態(tài)。本系統(tǒng)設(shè)計(jì)正是基于LED圖文顯示屏實(shí)際應(yīng)用,著重實(shí)現(xiàn)LED顯示屏的圖文編輯與設(shè)備驅(qū)動(dòng)。2.2 LED點(diǎn)陣驅(qū)動(dòng)原理發(fā)光二極管的結(jié)構(gòu)主要由PN結(jié)芯片、電極和光學(xué)系統(tǒng)構(gòu)成。我們知道,發(fā)光是一種能量轉(zhuǎn)化現(xiàn)象。當(dāng)系統(tǒng)受到外界激發(fā)后,會(huì)從穩(wěn)定的低能態(tài)躍遷到不穩(wěn)定的高能態(tài);當(dāng)是同由不穩(wěn)定的高能態(tài)重新回到穩(wěn)定的低能態(tài)時(shí),能量差以光的形式釋放出來(lái),就會(huì)產(chǎn)生發(fā)光現(xiàn)象。制作半導(dǎo)體發(fā)光二極管的材料是重?fù)诫s的,熱平衡狀態(tài)下的N區(qū)有很多遷移率很高的電子,P區(qū)有較多的遷移率較低的空穴。圖2-1 LED通電圖由于PN結(jié)阻擋層的限制,在常態(tài)下,而這不能發(fā)生自燃復(fù)合。而當(dāng)給PN結(jié)加以正向電壓時(shí),

17、導(dǎo)帶中的電子則可越過(guò)PN結(jié)的勢(shì)壘進(jìn)入到P區(qū)一側(cè)。于是在PN結(jié)附近稍偏于P區(qū)一邊的地方,處于高能態(tài)的電子與空穴相遇后便產(chǎn)生發(fā)光復(fù)合。這種發(fā)光復(fù)合所發(fā)出的光屬于自發(fā)輻射,輻射光的波長(zhǎng)決定于材料的禁帶寬度Eg。LED發(fā)光二極管分為正負(fù)二個(gè)腳當(dāng)正負(fù)之間加入一定的電壓時(shí)LED會(huì)點(diǎn)亮。 圖2-2 LED顯示電路LED發(fā)光時(shí)一般電流為3至30mA左右,LED有一定的穩(wěn)壓作用點(diǎn)亮?xí)rLED的正負(fù)之間的電壓為1.8V至2.1V左右,LED加入電壓時(shí)必須限流,否則會(huì)損壞LED。根據(jù)發(fā)光亮度的需要,LED的限流電阻可為1K至3K之間這是流過(guò)幾毫安的電流,當(dāng)需要較高亮度的顯示時(shí),可加入較大的電流。例如使用+5V供電串接

18、100R的限流電阻則在100R的電阻上有3V的壓降,因?yàn)長(zhǎng)ED壓降約為2V則電流約為30mA至50mA,LED點(diǎn)陣由數(shù)個(gè)LED按一定規(guī)律排列而成。LED顯示屏以發(fā)光二極管為像素,由LED點(diǎn)陣顯示單元拼接而成。最常見(jiàn)的LED點(diǎn)陣顯示單元有5*7,7*9,8*8,結(jié)構(gòu),前兩種主要用于顯示各種西文字符,后一種常用于顯示各種漢字字符。2.3 LED16*16點(diǎn)陣顯示顯示部分是本次設(shè)計(jì)的最核心的部分,我先對(duì)LED*8點(diǎn)陣顯示進(jìn)行選擇然后再其改基礎(chǔ)上擴(kuò)展成LED16*16。 圖2-3 16*16點(diǎn)陣對(duì)于LED8*8點(diǎn)陣顯示有以下兩種方案:(1)靜態(tài)顯示,將一幀圖像中的每一個(gè)二極管的狀態(tài)分別用0和1表示,若

19、為0,則表示LED無(wú)電流,即暗狀態(tài);若為1則表示二極管被點(diǎn)亮。若給每一個(gè)發(fā)光二極管一個(gè)驅(qū)動(dòng)電路,一幅畫(huà)面輸入以后,所有LED的狀態(tài)保持到下一幅畫(huà)。對(duì)于靜態(tài)顯示方式,所需的譯碼驅(qū)動(dòng)裝置很多,引線多而復(fù)雜,成本高,且可靠性也較低。(2)動(dòng)態(tài)顯示,對(duì)一幅畫(huà)面進(jìn)行分割,對(duì)組成畫(huà)面的各部分分別顯示,是動(dòng)態(tài)顯示方式。動(dòng)態(tài)顯示方式,可以避免靜態(tài)顯示的問(wèn)題。但設(shè)計(jì)上如果處理不當(dāng),易造成亮度低,閃爍問(wèn)題。因此合理的設(shè)計(jì)既應(yīng)保證驅(qū)動(dòng)電路易實(shí)現(xiàn),又要保證圖像穩(wěn)定,無(wú)閃爍。動(dòng)態(tài)顯示采用多路復(fù)用技術(shù)的動(dòng)態(tài)掃描顯示方式,復(fù)用的程度不是無(wú)限增加的,因?yàn)槔脛?dòng)態(tài)掃描顯示使我們看到一幅穩(wěn)定畫(huà)面的實(shí)質(zhì)是利用了人眼的暫留效應(yīng)和發(fā)光

20、二極管發(fā)光時(shí)間的長(zhǎng)短,發(fā)光的亮度等因素。通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)掃描刷新頻率(發(fā)光二極管的停閃頻率)為 50HZ,發(fā)光二極管導(dǎo)通時(shí)間1ms時(shí),顯示亮度較好,無(wú)閃爍感。2.4系統(tǒng)硬件的總體結(jié)構(gòu)與布局2.4.1 控制電路設(shè)計(jì)由于設(shè)計(jì)要求系統(tǒng)能獨(dú)立運(yùn)行,并能控制中文LED漢字的移位顯示,主控板應(yīng)以單片機(jī)為核心的單片機(jī)系統(tǒng)。MCS-51單片機(jī)具有擴(kuò)展性強(qiáng),功能強(qiáng)大,價(jià)格較低等優(yōu)點(diǎn),因此,采用Atmel公司的AT89S52單片機(jī)。AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片

21、上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提高靈活、超有效的解決方案。AT89S52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片晶振與時(shí)鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口,中斷繼續(xù)工作。掉電保護(hù)方式下,RAM容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,

22、直到下一個(gè)中斷或硬件復(fù)位為止。由于該型號(hào)單片機(jī)部集成了8KB的FLASH程序存儲(chǔ)器,并且采用CMOS工藝,功耗低,工作速度較快。由于需要具有較快的刷新頻率,以獲得較高的刷新頻率,使顯示穩(wěn)定,所以單片機(jī)晶振選用12MHz,既具有較快的時(shí)鐘頻率,又方便進(jìn)行計(jì)算機(jī)的通信。 2.4.2 顯示驅(qū)動(dòng)電路經(jīng)過(guò)對(duì)LED器件的發(fā)光原理進(jìn)行分析后,我們可以得到這樣的結(jié)論:只要在LED器件上加上足夠的正向電壓,那么流過(guò)它的電流就會(huì)使它發(fā)光,這就是LED器件的驅(qū)動(dòng)。在實(shí)際應(yīng)用中,往往需要調(diào)節(jié)LED器件的發(fā)光強(qiáng)度,通常我們是通過(guò)調(diào)節(jié)流經(jīng)LED器件的電流的平均時(shí)間來(lái)實(shí)現(xiàn)的。常見(jiàn)的LED器件的驅(qū)動(dòng)方式有:直流驅(qū)動(dòng)、脈沖驅(qū)動(dòng)

23、和掃描驅(qū)動(dòng),本設(shè)計(jì)中使用的驅(qū)動(dòng)方式為掃描驅(qū)動(dòng)。(1)脈沖驅(qū)動(dòng)所謂脈沖驅(qū)動(dòng)方式,就是利用人眼的視覺(jué)暫留效應(yīng),以脈沖的方式對(duì)LED器件進(jìn)行供電,使之間歇性的點(diǎn)亮。采用這種驅(qū)動(dòng)方式需要對(duì)以下兩個(gè)方面進(jìn)行考慮:脈沖電流的幅值和其重復(fù)頻率。首先,脈沖電流幅值的選擇,當(dāng)脈沖驅(qū)動(dòng)的平均值與直流驅(qū)動(dòng)的電流值相等時(shí),我們?nèi)搜鄣母杏X(jué)是一樣的,也就是說(shuō)兩者的發(fā)光強(qiáng)度相當(dāng)。平均電流Ia是瞬時(shí)電流I的時(shí)間積分,對(duì)于矩形波來(lái)說(shuō),有如下表達(dá)式:上式就是占空比的一種描述,為了使脈沖驅(qū)動(dòng)方式下的平均電流Ia與直流驅(qū)動(dòng)電流Io一樣,就需要使它的脈沖電流幅值滿足圖2-4 LED的脈沖驅(qū)動(dòng)可見(jiàn)脈沖驅(qū)動(dòng)時(shí),脈沖電流的幅值應(yīng)該比直流驅(qū)動(dòng)

24、電流大T/t倍。其次是脈沖重復(fù)頻率的選擇,通過(guò)對(duì)視覺(jué)暫留特性的分析,要使人眼感覺(jué)不到LED器件閃爍,那么脈沖電流的重復(fù)頻率必需高于24Hz。脈沖驅(qū)動(dòng)的主要應(yīng)用有兩個(gè)方面:掃描驅(qū)動(dòng)和占空比驅(qū)動(dòng)。 圖2-5 行掃描列控制原理與波形圖(2)掃描驅(qū)動(dòng)掃描驅(qū)動(dòng)是通過(guò)數(shù)字邏輯電路,使若干LED器件輪流導(dǎo)通,用以節(jié)省控制驅(qū)動(dòng)電路。LED顯示屏是將發(fā)光燈按行布置的,驅(qū)動(dòng)時(shí)也就按行按列驅(qū)動(dòng)。在掃描驅(qū)動(dòng)方式下可以按行掃描,按列控制;也可以按列掃描,按行控制。所謂“掃描”的含義,就是指一行一行地循環(huán)接通整行的LED器件,而不問(wèn)這一行的哪一列的LED器件是否應(yīng)該點(diǎn)亮,某一列的LED器件是否應(yīng)該點(diǎn)亮,由所謂的列控制來(lái)負(fù)

25、責(zé)。本論文采用按行掃描按列控制的方式。一個(gè)m行n列結(jié)構(gòu)的LED顯示屏,當(dāng)采用行掃描列控制的驅(qū)動(dòng)方式時(shí),H1到Hm輪流將高電位接通各行線,使連接到各行的LED器件接通正電源,但具體哪一個(gè)LED導(dǎo)通,還要看它的負(fù)電源是否接通,這就是列控制所要完成的工作。例如在LED顯示屏上需要LED11熄滅,LED21點(diǎn)亮,那么當(dāng)掃描到H1行時(shí),L1列的電位就應(yīng)該為高;當(dāng)掃描到H2行時(shí),L1的電位就應(yīng)該為低。 根據(jù)驅(qū)動(dòng)方式的不同,LED大屏幕顯示方式可分為靜態(tài)顯示和動(dòng)態(tài)掃描顯示兩種。靜態(tài)顯示是指將一幅畫(huà)面輸入以后要保持到下一幅畫(huà)面的輸入;動(dòng)態(tài)顯示是指將畫(huà)面分為若干部分分別進(jìn)行刷新。靜態(tài)顯示每一個(gè)像素需要一套驅(qū)動(dòng)電

26、路,如果顯示屏為n*m個(gè)像素屏,則需要n*m套驅(qū)動(dòng)電路;動(dòng)態(tài)掃描顯示則采用多路復(fù)用技術(shù),如果是P路復(fù)用的話,則每P個(gè)像素需要一套驅(qū)動(dòng)電路,n*m個(gè)像素僅需n*m/p套驅(qū)動(dòng)電路。另外,對(duì)于靜態(tài)顯示方式,需要較多的譯碼驅(qū)動(dòng)裝置,需要的引線也比較多;對(duì)于動(dòng)態(tài)掃描顯示方式,可以避免以上不足,但是容易造成顯示亮度低、屏幕閃爍等問(wèn)題。在實(shí)際的LED大屏幕顯示中,很少有采用靜態(tài)驅(qū)動(dòng)的。采用串行傳輸?shù)姆椒?,控制電路可以只用一根信?hào)線,將列數(shù)據(jù)一位一位傳往列驅(qū)動(dòng)器,與此同時(shí),列驅(qū)動(dòng)其中每一列都把當(dāng)前數(shù)據(jù)傳向后一列,并從前一列接收新數(shù)據(jù),一直到一行的各列數(shù)據(jù)全部傳輸?shù)轿缓?,才能并行地進(jìn)行顯示。對(duì)于串行傳輸來(lái)說(shuō),數(shù)

27、據(jù)要經(jīng)過(guò)并行到串行和串行到并行的兩次變換,因此列數(shù)據(jù)的準(zhǔn)備時(shí)間可能相當(dāng)長(zhǎng),在行掃描周期確定的情況下,留給行顯示的時(shí)間就少一些,以至影響到LED的亮度。解決串行傳輸中列數(shù)據(jù)準(zhǔn)備和列數(shù)據(jù)顯示的時(shí)間矛盾問(wèn)題,可以采用重疊處理的方法。即在顯示本行各列數(shù)據(jù)的同時(shí),準(zhǔn)備下一行的列數(shù)據(jù),這就需要列數(shù)據(jù)的顯示具有鎖存功能。本行已準(zhǔn)備好的數(shù)據(jù)打入并行鎖存器進(jìn)行顯示時(shí),串并移位寄存器就可以準(zhǔn)備下一行列數(shù)據(jù),而不會(huì)影響到本行的顯示。考慮到控制的方便,本設(shè)計(jì)采用的是掃描驅(qū)動(dòng)方式。在掃描驅(qū)動(dòng)方式中,由M行N列組成的M*N圖文顯示屏其LED發(fā)光器件數(shù)量相當(dāng)大,不宜使用靜態(tài)顯示驅(qū)動(dòng)電路,而采用多行的同名列共用一套列驅(qū)動(dòng)器。

28、控制電路負(fù)責(zé)有序的選通各行,在選通每一行之前還要把該行各列數(shù)據(jù)準(zhǔn)備好。這一行上的LED發(fā)光器件就可以根據(jù)列數(shù)據(jù)進(jìn)行顯示。這種時(shí)序控制電路,可以由布線邏輯完成。但考慮顯示數(shù)據(jù)的存儲(chǔ)和設(shè)計(jì)的靈活性與通用性,一般都采用單片機(jī)實(shí)現(xiàn)。控制電路采用單片機(jī),主要負(fù)責(zé)與上位機(jī)的通訊,控制存儲(chǔ)顯示數(shù)據(jù)模塊、安排控制信號(hào)的定時(shí)與順序、控制驅(qū)動(dòng)LED顯示點(diǎn)陣的電路等。驅(qū)動(dòng)電路用來(lái)驅(qū)動(dòng)LED顯示點(diǎn)陣的電路。各種控制信號(hào)用來(lái)使顯示屏正常工作,包括行選通信號(hào)、列數(shù)據(jù)移位信號(hào)、列數(shù)據(jù)輸出鎖存器打入信號(hào)、產(chǎn)生上下部分在時(shí)間上錯(cuò)開(kāi)的SRCLK信號(hào)、清屏信號(hào)等。2.5本章小結(jié) 本章介紹了漢字顯示原理和LED點(diǎn)陣的顯示與驅(qū)動(dòng)原理,

29、確定了系統(tǒng)的硬件的總體結(jié)構(gòu)與布局,根據(jù)硬件所需的各個(gè)模塊的原理,分別確定各個(gè)模塊的硬件電路方式,在顯示驅(qū)動(dòng)方式中,選擇了驅(qū)動(dòng)方式比較容易實(shí)現(xiàn)的掃描顯示方式。最終確定了顯示系統(tǒng)的結(jié)構(gòu),并且畫(huà)出了結(jié)構(gòu)框圖,更具結(jié)構(gòu)框圖,進(jìn)行下面的設(shè)計(jì)和器件的選型。第三章 硬件設(shè)計(jì)與實(shí)現(xiàn)硬件模塊主要完成LED顯示屏的驅(qū)動(dòng)任務(wù),硬件電路大致上可分成單片機(jī)系統(tǒng)與外圍電路、行驅(qū)動(dòng)電路和列驅(qū)動(dòng)電路3部分,通過(guò)行列驅(qū)動(dòng)器控制完成LED點(diǎn)陣的驅(qū)動(dòng)。由于待顯示信息的字模塊提取通過(guò)軟件模塊完成,所以硬件系統(tǒng)不再增設(shè)字庫(kù)存儲(chǔ)模塊。下圖為總電路圖圖3-1總電路圖3.1單片機(jī)系統(tǒng)的設(shè)計(jì) AT89S52單片機(jī)簡(jiǎn)介:AT89S52為 ATM

30、EL 所生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flsah存儲(chǔ)器。3.1.1AT89S52主要功能列舉如下:(1)擁有靈巧的8位CPU和在系統(tǒng)可編程Flash(2)晶片部具時(shí)鐘振蕩器(傳統(tǒng)最高工作頻率可至 12MHz)(3)部程序存儲(chǔ)器(ROM)為 8KB(4)部數(shù)據(jù)存儲(chǔ)器(RAM)為 256字節(jié)(5)32 個(gè)可編程I/O 口線(6)8 個(gè)中斷向量源(7)三個(gè) 16 位定時(shí)器/計(jì)數(shù)器(8)三級(jí)加密程序存儲(chǔ)器(9)全雙工UART串行通道3.1.2AT89S52各引腳功能介紹:圖3-2 AT89S52引腳圖VCC:AT89S52電源正端輸入,接+5V。VSS:電源地端。X

31、TAL1:?jiǎn)涡酒到y(tǒng)時(shí)鐘的反相放大器輸入端。XTAL2:系統(tǒng)時(shí)鐘的反相放大器輸出端,一般在設(shè)計(jì)上只要在 XTAL1 和 XTAL2 上接上一只石英振蕩晶體系統(tǒng)就可以動(dòng)作了,此外可以在兩引腳與地之間加入一 20PF 的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機(jī)。RESET:AT89S52的重置引腳,高電平動(dòng)作,當(dāng)要對(duì)晶片重置時(shí),只要對(duì)此引腳電平提升至高電平并保持兩個(gè)機(jī)器周期以上的時(shí)間,AT89S51便能完成系統(tǒng)重置的各項(xiàng)動(dòng)作,使得部特殊功能寄存器之容均被設(shè)成已知狀態(tài),并且至地址0000H處開(kāi)始讀入程序代碼而執(zhí)行程序。EA/Vpp:"EA"為英文"External

32、Access"的縮寫(xiě),表示存取外部程序代碼之意,低電平動(dòng)作,也就是說(shuō)當(dāng)此引腳接低電平后,系統(tǒng)會(huì)取用外部的程序代碼(存于外部EPROM中)來(lái)執(zhí)行程序。因此在8031與8032中,EA引腳必須接低電平,因?yàn)槠洳繜o(wú)程序存儲(chǔ)器空間。如果是使用 8751 部程序空間時(shí),此引腳要接成高電平。此外,在將程序代碼燒錄至8751部EPROM時(shí),可以利用此引腳來(lái)輸入21V的燒錄高壓(Vpp)。ALE/PROG:ALE是英文"Address Latch Enable"的縮寫(xiě),表示地址鎖存器啟用信號(hào)。AT89S52可以利用這支引腳來(lái)觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址

33、總線(A0A7)鎖進(jìn)鎖存器中,因?yàn)锳T89S52是以多工的方式送出地址與數(shù)據(jù)。平時(shí)在程序執(zhí)行時(shí)ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來(lái)驅(qū)動(dòng)其他周邊晶片的時(shí)基輸入。此外在燒錄8751程序代碼時(shí),此引腳會(huì)被當(dāng)成程序規(guī)劃的特殊功能來(lái)使用。PSEN:此為"Program Store Enable"的縮寫(xiě),其意為程序儲(chǔ)存啟用,當(dāng)8051被設(shè)成為讀取外部程序代碼工作模式時(shí)(EA=0),會(huì)送出此信號(hào)以便取得程序代碼,通常這支腳是接到EPROM的OE腳。AT89S52可以利用PSEN與RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲(chǔ)器與程序存儲(chǔ)器可以合并在一起而

34、共用64K的定址圍。PORT0(P0.0P0.7):端口0是一個(gè)8位寬的開(kāi)路汲極(Open Drain)雙向輸出入端口,共有8個(gè)位,P0.0表示位0,P0.1表示位1,依此類推。其他三個(gè)I/O端口(P1、P2、P3)則不具有此電路組態(tài),而是部有一提升電路,P0在當(dāng)做I/O用時(shí)可以推動(dòng)8個(gè)LS的TTL負(fù)載。如果當(dāng)EA引腳為低電平時(shí)(即取用外部程序代碼或數(shù)據(jù)存儲(chǔ)器),P0就以多工方式提供地址總線(A0A7)與數(shù)據(jù)總線(D0D7)。設(shè)計(jì)者必須外加一鎖存器將端口0送出的地址栓鎖住成為A0A7,再配合端口2所送出的A8A15合成一完整的16位地址總線,而定址到64K的外部存儲(chǔ)器空間。PORT2(P2.0

35、P2.7):端口2是具有部提升電路的雙向I/O端口,每一個(gè)引腳可以推動(dòng)4個(gè)LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時(shí),此端口便能當(dāng)成輸入端口來(lái)使用。P2除了當(dāng)做一般I/O端口使用外,若是在AT89S52擴(kuò)充外接程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),也提供地址總線的高字節(jié)A8A15,這個(gè)時(shí)候P2便不能當(dāng)做I/O來(lái)使用了。PORT1(P1.0P1.7):端口1也是具有部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)LS TTL負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來(lái)輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)做定時(shí)器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外

36、部中斷輸入的觸發(fā)腳位。PORT3(P3.0P3.7):端口3也具有部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)TTL負(fù)載,同時(shí)還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制與外部數(shù)據(jù)存儲(chǔ)器容的讀取或?qū)懭肟刂频裙δ?。其引腳分配如下:P3.0:RXD,串行通信輸入。P3.1:TXD,串行通信輸出。P3.2:INT0,外部中斷0輸入。P3.3:INT1,外部中斷1輸入。P3.4:T0,計(jì)時(shí)計(jì)數(shù)器0輸入。P3.5:T1,計(jì)時(shí)計(jì)數(shù)器1輸入。P3.6:WR:外部數(shù)據(jù)存儲(chǔ)器的寫(xiě)入信號(hào)。P3.7:RD,外部數(shù)據(jù)存儲(chǔ)器的讀取信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST

37、腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器

38、周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入與部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。3.2 驅(qū)動(dòng)電路3.2.1 74LS138芯片簡(jiǎn)介74LS138為3線8線譯碼器,共有54/74S138和54/LS138兩種線路結(jié)構(gòu)型式,其工作原理如下:當(dāng)

39、一個(gè)選通端(E1)為高電平,另兩個(gè)選通端(E2)和(E3)為低電平時(shí),可將地址端(A、B、C)的二進(jìn)制編碼在一個(gè)對(duì)應(yīng)的輸出端以低電平譯出。利用E1、E2和E3可級(jí)聯(lián)擴(kuò)展成24線譯碼器;若外接一個(gè)反相器還可級(jí)聯(lián)擴(kuò)展成32線譯碼器。若將選通端中的一個(gè)座位數(shù)據(jù)輸入端時(shí),74LS138還可作數(shù)據(jù)分配器。74LS138的引腳圖如下圖3-2圖3-3 74LS138引腳圖3.2.2驅(qū)動(dòng)電路的構(gòu)成 本設(shè)計(jì)的驅(qū)動(dòng)電路由電阻和PNP的三極管構(gòu)成,由三極管將電流放大,再通過(guò)三極管的集電極輸出給點(diǎn)陣顯示屏,使其足夠亮。其驅(qū)動(dòng)電阻的電阻值是采用4.7歐姆的電阻,其驅(qū)動(dòng)電壓為5v。行驅(qū)動(dòng)電路如下圖所示3-3。圖3-4 行

40、驅(qū)動(dòng)電路列驅(qū)動(dòng)如下圖3-4所示圖3-5 列驅(qū)動(dòng)電路3.3 本章小結(jié)本章就LED漢字顯示屏的硬件電路設(shè)計(jì)做了簡(jiǎn)單的設(shè)計(jì)和說(shuō)明,由于本設(shè)計(jì)著重介紹的是基于AT89S52單片機(jī)的LED漢字顯示屏的軟件設(shè)計(jì)和制作,所以本設(shè)計(jì)在硬件電路部分只做了簡(jiǎn)單的設(shè)計(jì)和說(shuō)明,但這并不影響設(shè)計(jì)容。如果實(shí)際應(yīng)用需要可以根據(jù)具體要求修改電路組成增加I/O口擴(kuò)展來(lái)達(dá)到更多更好的顯示效果,這里就不多做累贅了。 第四章漢字點(diǎn)陣顯示原理與字庫(kù)代碼獲取方法4.1漢字點(diǎn)陣顯示原理我們以UCDOS中文宋體字庫(kù)為例,每一個(gè)字由16行16列的點(diǎn)陣組成顯示。即國(guó)標(biāo)漢字庫(kù)中的每一個(gè)字均由256點(diǎn)陣來(lái)表示。我們可以把每一個(gè)點(diǎn)理解為一個(gè)像素,而把

41、每一個(gè)字的字形理解為一幅圖像。事實(shí)上這個(gè)漢字屏不僅可以顯示漢字,也可以顯示在256像素圍的任何圖形。如查用8位單片機(jī)AT89S52控制,由于單片機(jī)的總線為8位,一個(gè)字需要拆分為2個(gè)部分,為了弄清漢字點(diǎn)陣組成規(guī)律,首先通過(guò)列掃描方法獲取漢字代碼。漢字可拆為上下兩部分,上不由8*16點(diǎn)陣組成,下部也由8*16點(diǎn)陣組成。本例通過(guò)列掃描方法首先顯示左上角的第一列的上半部分,即第0列的P00P07點(diǎn)亮,由上外下排列,為:P0.0滅,P0.1滅,P0.2亮,P0.3滅,P0.4滅,P0.5滅,P0.6滅,P0.7滅,即二進(jìn)制數(shù)為00100000,轉(zhuǎn)化為十六進(jìn)制為20H。上半部第一列完成后,繼續(xù)掃描下半部分

42、的第一列,為了接線的方便,我們?nèi)栽O(shè)計(jì)成由上往下掃描,即從P27向P20方向掃描,從圖3-1可以看出,這一列只有P2.3是亮的,即為00001000,十六進(jìn)制為08H。依照這個(gè)方法轉(zhuǎn)向第二列,第三列,直到第十六列的掃描,一共掃描32個(gè)8位,可得到漢字“歡”的掃描代碼為:20h, 08h, 2Ch, 10h, 23h, 60h, 20h, 80h23h, 41h, 3Ch, 31h, 04h, 02h, 08h, 0Ch0F0h, 30h, 17h,0C0h, 10h, 30h, 10h, 08h14h, 06h, 18h, 03h, 00h, 02h, 00h, 00h由這個(gè)原理可以看出無(wú)論顯示

43、何種字體和圖像,都可以用這個(gè)方法來(lái)分析出它的掃描代碼從而顯示在屏幕上。4.2字庫(kù)代碼的獲取方法上述方法雖然能讓我們弄清漢字點(diǎn)陣代碼的獲取過(guò)程,但是依靠人工方法獲取漢字代碼是一件非常繁瑣的事情。為此,我們經(jīng)常采用字庫(kù)軟件查找字符代碼,軟件打開(kāi)后進(jìn)行取模方式設(shè)定后再輸入字串,點(diǎn)“輸入漢字”,十六進(jìn)制的漢字代碼可自動(dòng)生成,把我們需要的數(shù)據(jù)復(fù)制到程序中即可,如圖4-1和4-2所示圖4-1字模取模方式設(shè)定圖4-2漢字代碼獲取4.3本章小結(jié)本章著重介紹的LED漢字顯示屏顯示漢字的原理以與字模軟件獲取字庫(kù)代碼的方法,為我們以后的設(shè)計(jì)有基礎(chǔ)作用,了解了LED漢字顯示屏的顯示工作原理為我們以后對(duì)顯示屏制作提供了

44、理論基礎(chǔ),使我們的設(shè)計(jì)能事半功倍。第五章 程序的設(shè)計(jì)與調(diào)試5.1程序流程圖圖5-1程序流程圖5.2程序的設(shè)計(jì)功能:LED16*16點(diǎn)陣滾動(dòng)顯示漢字“歡迎您”#include <reg52.h>#define int8 unsigned char#define int16 unsigned int#define int32 unsigned longint8 flag;int8 n;int8 code bmp32=0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00

45、,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/* " " */0x20,0x08,0x2C,0x10,0x23,0x60,0x20,0x80, 0x23,0x41,0x3C,0x31,0x04,0x02,0x08,0x0C, 0xF0,0x30,0x17,0xC0,0x10,0x30,0x10,0x08, 0x14,0x06,0x18,0x03,0x00,0x02,0x00,0x00,/*"歡",0*/ 0x02,0x00,0x42,0x02,0

46、x22,0x04,0x13,0xF8, 0x00,0x04,0x3F,0xE2,0x20,0x42,0x40,0x82, 0x41,0x02,0x3F,0xFE,0x20,0x02,0x20,0x42, 0x20,0x22,0x7F,0xC6,0x20,0x04,0x00,0x00,/*"迎",1*/ 0x02,0x02,0x04,0x0C,0x08,0x00,0x3F,0xEE,0xC4,0x01,0x08,0x81,0x31,0x11,0xE6,0x49,0x20,0x2D,0x2F,0xC1,0x20,0x01,0x22,0x07,0x29,0x00,0x31,0x8

47、8,0x00,0x06,0x00,0x00,/*"您",2*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00/* " " */ ;void delay(void);int16 offset;void main(void) int8 i; int8 *p; flag=0x10; n=

48、0; TMOD=0x01; TH0=0xb1; TL0=0xe0; ET0=1; EA=1; TR0=1; p=&bmp00; while (1) for (i=0;i<8;i+) /顯示左半邊屏幕 P0=*(p+offset+2*i); P2=i|0x90; /P2.4=0,P2.3=1 選中U3, 輸出掃描碼給U7 delay(); P0=*(p+offset+2*i+1); P2=i|0x08; /P2.4=1,P2.3=0 選中U2, 輸出掃描碼給U6 delay(); for (i=8;i<16;i+) /顯示右半邊屏幕 P0=*(p+offset+2*i); P

49、2=(i-8)|0xc0; /P2.5=1 P2.4=0, P2.3=0 選中U5,輸出掃描碼U9 delay(); P0=*(p+offset+2*i+1); P2=(i-8)|0x20;/P2.6=1 P2.5=0, P2.4=0 選中U4,輸出掃描碼U8 delay(); void delay(void) int16 i; for (i=0;i<50;i+) ;void timer0() interrupt 1 using 3 TF0=0; TH0=0xb1; TL0=0xe0; if (n<10) n+; else offset+=2; if (offset>128)

50、 offset=0; n=0; 5.3程序的輸入以與HEX文件的生成單片機(jī)的燒入程序是后綴名為.HEX 的文件,所以就要用到keil將所寫(xiě)程序變?yōu)镠EX文件。5.3.1 keil的簡(jiǎn)介Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些部分組合在一起。運(yùn)行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。如果你使用C語(yǔ)言編程,那么Keil幾乎就是你的不二之選,即使不使用C語(yǔ)言而僅用匯編語(yǔ)言

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論