基于單片機(jī)的LCD圖片與漢字顯示_第1頁(yè)
基于單片機(jī)的LCD圖片與漢字顯示_第2頁(yè)
基于單片機(jī)的LCD圖片與漢字顯示_第3頁(yè)
基于單片機(jī)的LCD圖片與漢字顯示_第4頁(yè)
基于單片機(jī)的LCD圖片與漢字顯示_第5頁(yè)
已閱讀5頁(yè),還剩20頁(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)介

密級(jí):公開(kāi)NANCHANGUNIVERSITY學(xué)士學(xué)位論文THESISOFBACHELOR〔2006—2023年〕題目基于單片機(jī)的LCD圖片與漢字顯示南昌大學(xué)學(xué)士學(xué)位論文原創(chuàng)性申明本人鄭重申明:所呈交的論文是本人在導(dǎo)師的指導(dǎo)下獨(dú)立進(jìn)行研究所取得的研究成果。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫的成果作品。對(duì)本文的研究作出重要奉獻(xiàn)的個(gè)人和集體,均已在文中以明確方式說(shuō)明。本人完全意識(shí)到本申明的法律后果由本人承當(dāng)。作者簽名:日期:學(xué)位論文版權(quán)使用授權(quán)書本學(xué)位論文作者完全了解學(xué)校有關(guān)保存、使用學(xué)位論文的規(guī)定,同意學(xué)校保存并向國(guó)家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)南昌大學(xué)可以將本論文的全部或局部?jī)?nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。保密□,在年解密后適用本授權(quán)書。本學(xué)位論文屬于不保密□?!舱?qǐng)?jiān)谝陨舷鄳?yīng)方框內(nèi)打“√〞〕作者簽名:日期:導(dǎo)師簽名:日期:基于單片機(jī)的LCD圖片與漢字顯示專業(yè):電子信息工程學(xué)號(hào):6102106078學(xué)生姓名:許森指導(dǎo)老師:陳根華摘要本文回憶了目前的液晶顯示技術(shù)并搭建硬件電路實(shí)現(xiàn)了液晶的圖片與漢字顯示,硬件電路的控制核心是AT89C51單片機(jī),液晶顯示局部是由基于控制器為ST7920的QY-12864液晶模塊構(gòu)成,實(shí)現(xiàn)了在并行數(shù)據(jù)傳輸方式下控制液晶模塊QY-12864顯示一幅128x64圖片和四行16x16的漢字。由于目前液晶顯示的普遍性,而且本研究的硬件電路有很大的擴(kuò)展空間,所得到的研究結(jié)果具有重要的應(yīng)用意義。關(guān)鍵詞:單片機(jī);液晶圖片與漢字顯示;控制器ST7920Microcontroller-basedimageandcharacterLCDdisplayAbstractThisarticlebrieflyintroducedmodernLCDdisplaytechnologyandestablishedahardwarecircuittofulfillanimageandchartersdisplay.ThehardwarecircuitcontrolcoreisAT89C51,LCDcontrollerisbasedonthepartoftheST7920forQY-12864LCDmodulecomposition,realizedinparalleldatatransmissionmodecontrolQY-12864showsapictureofLCDmodule128x64picturesandfourrowsof16x16characters.Becauseoftheuniversalitythatliquidcrystalusingatpresent,thehardwarecircuitstudyingoriginallyhasverybigexpansionspaceandtheresulthasimportantapplicationmeaning.Keyword:MCU;Imageandcharacterdisplay;ContronllerST7902目錄TOC\o"1-3"\h\u24073摘要 I8883Abstract II3670第一章概述 144761.1LCD顯示原理 174331.2LCD顯示技術(shù) 1178741.3LCD優(yōu)勢(shì) 225201.4本文所作的工作 324729第二章硬件設(shè)計(jì) 466662.1方案設(shè)計(jì)與比較 45222.2主要芯片介紹 5257952.2.1單片機(jī)AT89C51 595632.2.2液晶模塊QY-12864 5159942.3模塊電路設(shè)計(jì) 9253082.3.1電源局部 9258942.3.2晶振局部 950972.3.3復(fù)位電路 1068972.3.4液晶模塊 1028497第三章軟件設(shè)計(jì) 1229343.1程序流程設(shè)計(jì) 12107963.2主要顯示程序設(shè)計(jì) 12306613.2.1命令數(shù)據(jù)的寫入 12184913.2.2命令數(shù)據(jù)的讀出 13183793.2.3漢字的顯示 14246283.2.4圖片的顯示 14214653.2.5液晶初始化 16316773.3圖片數(shù)據(jù)的提取 1739163.4軟件仿真測(cè)試 17142963.5PCB板的制作 1917845第四章硬件調(diào)試結(jié)果 22128134.1顯示控制信息 22260884.2漢字顯示 23285734.3圖片顯示 236009總結(jié) 2412360參考文獻(xiàn)〔Perference〕 2523770致謝 264441附錄程序代碼 27第一章概述1.1LCD顯示原理液晶的物理特性是:當(dāng)通電時(shí)導(dǎo)通,排列變的有秩序,使光線容易通過(guò);不通電時(shí)排列混亂,阻止光線通過(guò)。讓液晶如閘門般地阻隔或讓光線穿透。從技術(shù)上簡(jiǎn)單地說(shuō),液晶面板包含了兩片相當(dāng)精致的無(wú)鈉玻璃素材,稱為Substrates,中間夾著一層液晶。當(dāng)光束通過(guò)這層液晶時(shí),液晶本身會(huì)排排站立或扭轉(zhuǎn)呈不規(guī)那么狀,因而阻隔或使光束順利通過(guò)。大多數(shù)液晶都屬于有機(jī)復(fù)合物,由長(zhǎng)棒狀的分子構(gòu)成。在自然狀態(tài)下,這些棒狀分子的長(zhǎng)軸大致平行。將液晶倒入一個(gè)經(jīng)精良加工的開(kāi)槽平面,液晶分子會(huì)順著槽排列,所以假設(shè)那些槽非常平行,那么各分子也是完全平行的。液晶顯示器(LCD/LiquidCrystalDisplay)的顯像原理,是將液晶置于兩片導(dǎo)電玻璃之間,靠?jī)蓚€(gè)電極間電場(chǎng)的驅(qū)動(dòng),引起液晶分子扭曲向列的電場(chǎng)效應(yīng),以控制光源透射或遮蔽功能,在電源關(guān)開(kāi)之間產(chǎn)生明暗而將影像顯示出來(lái),假設(shè)加上彩色濾光片,那么可顯示彩色影像。在兩片玻璃基板上裝有配向膜,所以液晶會(huì)沿著溝槽配向,由于玻璃基板配向膜溝槽偏離90度,所以液晶分子成為扭轉(zhuǎn)型,當(dāng)玻璃基板沒(méi)有參加電場(chǎng)時(shí),光線透過(guò)偏光板跟著液晶做90度扭轉(zhuǎn),通過(guò)下方偏光板,液晶面板顯示白色;當(dāng)玻璃基板參加電場(chǎng)時(shí),液晶分子產(chǎn)生配列變化,光線通過(guò)液晶分子空隙維持原方向,被下方偏光板遮蔽,光線被吸收無(wú)法透出,液晶面板顯示黑色。液晶顯示器便是根據(jù)此電壓有無(wú),使面板到達(dá)顯示效果。1.2LCD顯示技術(shù)目前液晶顯示器可分成三大種類,分別是扭轉(zhuǎn)向列型〔TwistedNematic;簡(jiǎn)稱TN〕、超扭轉(zhuǎn)向列型〔SuperTwistedNematic簡(jiǎn)稱STN〕和彩色薄膜型〔ThinFilmTransistors;簡(jiǎn)稱TFT〕。

TN-LCD

TN是繼DSM型的液晶材料後,所開(kāi)展的新液晶材料,TN-LCD的最大特點(diǎn)就如同其名稱「扭轉(zhuǎn)向列」一般,其液晶分子從最上層到最下層的排列方向恰好是呈90度的3D螺旋狀。TN-LCD的出現(xiàn)奠定了現(xiàn)今LCD開(kāi)展的主要方式,但是由於TN-LCD具有兩個(gè)重大缺點(diǎn),那就是無(wú)法呈現(xiàn)黑、白兩色以外色調(diào),以及當(dāng)液晶顯示器越做越大時(shí)其比照會(huì)越來(lái)越差,使得各種新的技術(shù)陸續(xù)出現(xiàn)。

STN-LCD

STN-LCD的出現(xiàn)是為了改善TN-LCD比照不佳的問(wèn)題,最大差異點(diǎn)在於液晶分子扭轉(zhuǎn)角度不同以及在玻璃基板的配合層有預(yù)傾角度,其液晶分子從最上層到最下層的排列方向恰好是180度至260度的3D螺旋狀。但是,STN-LCD雖然改善了TN-LCD的比照問(wèn)題,其顏色的表現(xiàn)依然無(wú)法獲得較好的解決,STN-LCD的顏色除了黑、白兩個(gè)色調(diào)外,就只有橘色和黃綠色等少數(shù)顏色,對(duì)於色彩的表達(dá)仍然無(wú)法到達(dá)全彩的要求,因此仍然不是一個(gè)完善的解決方式。

TFT-LCD

為了改善對(duì)於色彩的要求,又創(chuàng)造了TSTN〔TripleSuperTwistedNematic〕和FSTN〔FilmSuperTwistedNematic〕兩種新技術(shù)。TSTN和FSTN的根本構(gòu)造原理與STN相同,差異在於TSTN在兩片玻璃上加上兩片色補(bǔ)償用薄膜,而FSTN那么是加上一片色補(bǔ)償用薄膜。TSTN和FSTN具有高解析度和全彩的優(yōu)點(diǎn),完全改善TN的比對(duì)問(wèn)題和STN的色彩問(wèn)題。但可惜的是,TSTN和FSTN卻有液晶分子的反響較慢的問(wèn)題,在放映數(shù)量較大的資料時(shí),會(huì)造成無(wú)法負(fù)荷的缺點(diǎn),因此也不是完善的解決方式。1.3LCD優(yōu)勢(shì)1.低壓、微功耗液晶顯示器的工作電壓極低,而工作電流也僅幾個(gè)微安,這是其他任何顯示器件無(wú)法比較的。要知道,只有低壓、微功耗的顯示器件才可能深入人間的每個(gè)角落,伴隨人們生活和工作。在工作電壓和功耗上液晶顯示正好與大規(guī)模集成電路的開(kāi)展相適應(yīng)。從而使液晶與大規(guī)模集成電路結(jié)成了孿生兄弟。使電子手表、計(jì)算器、便攜儀表、以至手提電腦、GPS電子地圖等成為可能。2.平板型結(jié)構(gòu)液晶顯示器件的根本結(jié)構(gòu)是由兩片玻璃基板制成的薄形盒。這種結(jié)構(gòu)最利于用作顯示窗口,而且它可以在有限的面積上容納最大量的顯示內(nèi)容,顯示內(nèi)容的利用率最高。此外,這種結(jié)構(gòu)不僅可以做的很小,如照相機(jī)上所用的顯示窗,也可以做的很大,如大屏幕液晶電視及大型液晶廣告牌。此外,這種結(jié)構(gòu)還便于大批量、白動(dòng)化生產(chǎn)。目前液晶顯示器件的生產(chǎn)大都采用自動(dòng)化半自動(dòng)化的集成化工藝生產(chǎn),僅少量工人即可開(kāi)動(dòng)一條年產(chǎn)上千萬(wàn)片的生產(chǎn)線。3.被動(dòng)型顯示液晶顯示器件本身不能發(fā)光,它靠調(diào)制外界光到達(dá)顯示目的。即它不像主動(dòng)型顯示器件那樣,靠發(fā)光刺激人眼實(shí)現(xiàn)顯示,而是單純依靠對(duì)外界光的不同反射形成的不同比照度來(lái)到達(dá)顯示目的的。被動(dòng)顯示更適合于人眼視覺(jué),更不易引起疲勞。這個(gè)優(yōu)點(diǎn)在大信息量、高密度、快速變換、長(zhǎng)時(shí)間觀察的顯示時(shí)尤其重要。此外,被動(dòng)顯示還不怕光沖刷。所謂光沖刷,是指當(dāng)環(huán)境光較亮?xí)r,被顯示的信息被沖淡,從而顯示不清晰。而被動(dòng)型顯示,由于它是靠反射外部光到達(dá)顯示目的的,所以,外部光越強(qiáng),反射的光也越強(qiáng),顯示的內(nèi)容也就越清晰。因此液晶顯示不僅可以用于室外進(jìn)行顯示,而且可以在陽(yáng)光等強(qiáng)烈照明環(huán)境下也可以顯示得很清晰。4.顯示信息量大液晶顯示在同樣大小的顯示窗面積內(nèi),比可以容納更多的像素,顯示更多的信息。這對(duì)于制作高清晰度電視、筆記本式電腦都非常有利。5.易于彩色化液晶本身雖然一般是沒(méi)有顏色的,但它實(shí)現(xiàn)彩色化確很容易,方法很多。一般使用較多的是濾色法和干預(yù)法。由于濾色法技術(shù)的成熟,使液晶的彩色化具有更精確、更鮮艷、更沒(méi)有色失真的彩色化效果。6.長(zhǎng)壽命液晶材料是有機(jī)高分子合成材料,具有極高的純度,而且其他材料也都是高純物質(zhì),在極凈化的條件下制造而成。液晶的驅(qū)動(dòng)電壓又很低,驅(qū)動(dòng)電流更是微乎其微,因此,這種器件的劣化幾乎沒(méi)有,壽命很長(zhǎng)。從實(shí)際應(yīng)用考查。一般使用中,除撞擊,破碎或配套件損壞外,液晶顯示器件自身的壽命終結(jié)幾乎沒(méi)有可能。7.無(wú)輻射,無(wú)污染液晶顯示器件在使用時(shí)不會(huì)產(chǎn)生像CRT使用中產(chǎn)生的軟X射線及電磁波輻射。這種幅射不僅污染環(huán)境還會(huì)產(chǎn)生信息泄露。而液晶顯示不會(huì)產(chǎn)生這類問(wèn)題。它對(duì)于人身平安和信息保密都是十分理想的。1.4本文所作的工作本課題的主要任務(wù)是實(shí)現(xiàn)液晶的圖片與漢字顯示,實(shí)現(xiàn)簡(jiǎn)單的人機(jī)交互。掌握和熟練使用相關(guān)軟件,設(shè)計(jì)硬件電路并編寫相應(yīng)的程序?qū)崿F(xiàn)相應(yīng)功能。課題完成過(guò)程中,閱讀了很多關(guān)于液晶顯示原理和單片機(jī)控制電路方面的文獻(xiàn)。本設(shè)計(jì)是采用了QY-12864在并行方式下實(shí)現(xiàn)圖片與漢字顯示,應(yīng)用Zimo21字模提取軟件提取了128x64的圖片顯示數(shù)據(jù)和16x16的漢字?jǐn)?shù)據(jù),使用proteus軟件進(jìn)行仿真。應(yīng)用DXP2004進(jìn)行了電路原理圖的和PCB板的制作。第二章硬件設(shè)計(jì)方案一:一般51單片機(jī)有4K程序存儲(chǔ)單元,128Byte的RAM,足以滿足一般的控制需求,而且具有較高的性價(jià)比,所以選擇AT89C51單片機(jī)作為控制單元.通過(guò)串行方式控制液晶模塊,優(yōu)點(diǎn)是串行方式節(jié)省端口,可利用其他端口進(jìn)行另外的擴(kuò)展。缺點(diǎn)是串行數(shù)據(jù)傳輸速度有限制,如果要顯示動(dòng)態(tài)圖片或者流暢的播放視頻那么效果會(huì)比較差,而且串行數(shù)據(jù)控制比較復(fù)雜,因?yàn)橐紤]到信號(hào)傳輸?shù)耐絾?wèn)題。這也是串行方式方式數(shù)據(jù)傳輸比較慢的一個(gè)原因。圖2-1串行連接方式方案二:采用并行數(shù)據(jù)傳輸方式,優(yōu)點(diǎn)數(shù)據(jù)傳輸速度較快可以克服串行顯示動(dòng)態(tài)圖片顯示效果不佳現(xiàn)象,控制方式也較串行簡(jiǎn)單。缺點(diǎn)占用較多的I/O口,8根數(shù)據(jù)線就需要8個(gè)I/O口。圖2-2并行連接方式由上邊兩個(gè)方案比照,由于本設(shè)計(jì)I/O較充足,應(yīng)選擇并行數(shù)據(jù)傳輸方式進(jìn)行液晶控制,控制信號(hào)簡(jiǎn)單較容易設(shè)計(jì)實(shí)現(xiàn)。單片機(jī)AT89C51AT89C51是ALTEM公司的一種高效微控制器,它將多功能8位cpu和閃爍存儲(chǔ)器組合在單個(gè)芯片中,帶有4k字節(jié)可編程可擦除只讀存儲(chǔ)器,有128Byte片內(nèi)RAM。并且與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳想兼容,靈活運(yùn)用于各種控制領(lǐng)域。液晶模塊QY-12864QY-12864液晶模塊是128x64點(diǎn)陣的漢字圖形液晶顯示模塊,可顯示漢字及圖片,內(nèi)置國(guó)標(biāo)GB2312碼簡(jiǎn)體中文字庫(kù)〔16x16點(diǎn)陣〕、128個(gè)字符〔8x16點(diǎn)陣〕及64x256點(diǎn)陣顯示RAM??膳cMCU直接接口,提供兩種界面來(lái)連接微處理機(jī):8位并行及串行兩種連接方式。具有多種功能:光標(biāo)顯示、畫面移位、睡眠模式等。QY-12864引腳圖如表2-3所示:12345678910VSSVDDVORSRWED0D1D2D311121314151617181920D4D5D6D7PSBNCRSTVEEL+L-圖2-3QY-12864引腳圖VSS:電源地。VDD:+5V電源輸入。VO:液晶顯示比照度調(diào)節(jié)。RS:數(shù)據(jù)命令選擇端。高電平數(shù)據(jù),低電平命令。RW:讀寫選擇端。高電平讀信號(hào),低電平寫信號(hào)。E:讀寫使能端。DB0-DB7:數(shù)據(jù)總線。PSB:并串選擇端口。高電平并行傳輸,低電平串行傳輸。RST:復(fù)位端,低電平有效。L+:背光源正端〔+5V〕。L-:背光源負(fù)端。QY-12864指令去除顯示RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功能:去除顯示屏幕,把DDRAM位址計(jì)數(shù)器調(diào)整為“00H〞位址歸位RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHX功能:把DDRAM位址計(jì)數(shù)器調(diào)整位“00H〞,游標(biāo)回原點(diǎn),該功能不影響顯示DDRAM位址歸位RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLI/DS功能:執(zhí)行該命令后,所設(shè)置的行將顯示在屏幕第一行。顯示起始行是由Z地址計(jì)數(shù)器控制的,該命令將A0-A5位地址送入Z地址計(jì)數(shù)器,起始地址可以是0-63范圍內(nèi)任意一行。Z地址計(jì)數(shù)器具有循環(huán)計(jì)數(shù)功能,用于顯示行掃描同步,當(dāng)掃描完一行后自動(dòng)加一。顯示狀態(tài)開(kāi)/關(guān)RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHDCHX功能:D=1;整體顯示ON;游標(biāo)ON;B=1;游標(biāo)位置ON游標(biāo)或顯示移位控制RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHS/CR/LXX功能:設(shè)定游標(biāo)的移動(dòng)與顯示的移位控制位,這個(gè)指令不改變DDRAM的內(nèi)容功能設(shè)定RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLHDLX0REXX功能:DL=1〔必須設(shè)為1〕RE=1:擴(kuò)充指令集動(dòng)作RE=0:根本指令集動(dòng)作設(shè)定CGRAM位址RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功能:設(shè)定CGRAM位址到位址計(jì)數(shù)器〔AC〕設(shè)定DDRAM位址RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功能:設(shè)定DDRAM位址到位址計(jì)數(shù)器〔AC〕讀取忙碌狀態(tài)〔BF〕和位址RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLBFAC6AC5AC4AC3AC2AC1AC0功能:讀取忙碌狀態(tài)〔BF〕可以確認(rèn)內(nèi)部動(dòng)作是否完成,同時(shí)可以讀出位址針計(jì)數(shù)器〔AC〕的值寫字料到RAMRWRSDB7DB6DB5DB4DB3DB2DB1DB0HLDB7DB6DB5DB4DB3AC2DB1DB0功能:寫入資料到內(nèi)部RAM〔DDRAM/CGRAM/TRAM/GDRAM〕讀出RAM的值RWRSDB7DB6DB5DB4DB3DB2DB1DB0HHDB7DB6DB5DB4DB3AC2DB1DB0功能:從內(nèi)部RAM讀取資料〔DDRAM/CGRAM/TRAM/GDRAM〕待命模式〔12H〕RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功能:進(jìn)入待命模式,執(zhí)行其它命令都可終止待命模式卷動(dòng)位址或IRAM位址選擇〔13H〕RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHSR功能:SR=1;允許輸入卷動(dòng)位址SR=O;允許輸入IRAM位址反白選擇〔14H〕RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHR1R0功能:選擇4行中的任一行作反白顯示,并可決定反白的與否睡眠模式〔15H〕RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHSLXX功能:SL=1;脫離睡眠模式SL=0;進(jìn)入睡眠模式16、擴(kuò)充功能設(shè)定〔16H〕

RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLHHX1REGL功能:RE=1;擴(kuò)充指令集動(dòng)作RE=0:根本指令集動(dòng)作G=1繪圖顯示ONG=0;繪圖顯示OFF設(shè)定IRAM位址或卷動(dòng)地址〔17H〕RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功能:SR=1;AC5-AC0為垂直卷動(dòng)位址SR=0;AC3-AC0寫ICONRAM位址設(shè)定繪圖RAM位址〔18H〕RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功能:設(shè)定GDRAM位址到位址計(jì)數(shù)器〔AC〕顯示步驟:顯示資料RAM顯示資料RAM提供64x32個(gè)位元組的空間,最多可以控制4行16字〔64個(gè)字〕的中文字型顯示,當(dāng)寫入顯示資料RAM時(shí),可以分別顯示CGROM、HCGROM的字型;ST7902A可以顯示三種字型,分別是辦寬的HCGROM字型、CGRAM字型及中文CGRAM字型,三種字型的選擇,由在DDRAM中寫入的編碼選擇,在0000H-0006H的編碼中將自動(dòng)的結(jié)合下一個(gè)位元組,組成兩個(gè)位元組的編碼達(dá)成中文字型的編碼〔A140-D75F〕,各種字型詳細(xì)編碼如下:顯示半寬字型:將8位元資料寫入DDRAM中,范圍為02H-7FH的編碼。顯示CGRAM字型:將16位元資料寫入DDRAM中,總共有00H,02H,04H,06H四種編碼。顯示中文字型:將16位元資料寫入DDRAM中,范圍為A1A1H-F7FEH的編碼。繪圖RAM〔GDRAM〕繪圖顯示RAM提供64x32個(gè)元組的記憶空間,最多可以控制256x64點(diǎn)的二維繪圖緩沖空間,在更改繪圖RAM時(shí),先連續(xù)寫入水平與垂直的坐標(biāo)值,在寫入兩個(gè)8位元的資料到繪圖RAM,而地址計(jì)數(shù)器〔AC〕會(huì)自動(dòng)加一;在寫入繪圖RAM的期間,繪圖RAM顯示必須關(guān)閉,整個(gè)寫入繪圖RAM的步驟如下:關(guān)閉繪圖顯示功能;先將垂直的坐標(biāo)〔Y〕寫入繪圖RAM地址;再將水平的位元組坐標(biāo)〔X〕寫入繪圖RAM地址;將D15-D8寫入到RAM;將D7-D0寫入到RAM;翻開(kāi)繪圖顯示功能。2.3模塊電路設(shè)計(jì)電源局部圖2-4總電源如圖2-4所示通過(guò)USB接口給整個(gè)電路提供+5V的電壓驅(qū)動(dòng)電路。當(dāng)開(kāi)關(guān)S1閉合,LED燈DS1發(fā)光,表示電路供電。晶振局部圖2-5晶振如圖2-5所示兩根線分別連接AT89C51的XTAL1與XTAL2引腳為系統(tǒng)提供的6MHz的時(shí)鐘頻率。復(fù)位電路圖2-6復(fù)位電路如圖2-6所示連接AT89CT1的RST端,單片機(jī)上電后會(huì)自動(dòng)復(fù)位,當(dāng)軟件運(yùn)行出現(xiàn)未知錯(cuò)誤需要復(fù)位時(shí),按下開(kāi)關(guān)S2本電路在RST端產(chǎn)生高電平,系統(tǒng)復(fù)位,程序重新開(kāi)始執(zhí)行。液晶模塊圖2-7液晶模塊如圖2-7所示PSB端接高電平,使用并行數(shù)據(jù)傳輸方式,DB0-DB7與單片機(jī)P1口連接,RS、R、WE分別接P3.0、P3.1、P3.2,數(shù)據(jù)的并行傳輸比數(shù)據(jù)的串行傳輸控制簡(jiǎn)單,而且有較高的數(shù)據(jù)傳輸速率。當(dāng)I/O口較少且對(duì)數(shù)據(jù)傳輸速率要求不嚴(yán)格時(shí)可采用串行的數(shù)據(jù)傳輸方式。RST端接低電平時(shí)復(fù)位,本設(shè)計(jì)不需要硬件復(fù)位,每次執(zhí)行程序時(shí)進(jìn)行軟件初始化,故RST端接高電平。LED+與LED-之間接可變電阻用來(lái)改變背景亮度。電路原理圖如下列圖所示:圖2-8電路原理圖第三章軟件設(shè)計(jì)3.1程序流程設(shè)計(jì)程序?qū)崿F(xiàn)功能:本設(shè)計(jì)可以實(shí)現(xiàn)16x16漢字與128x64圖片顯示,程序中還設(shè)置S1S2兩個(gè)按鍵,有四種不同的組合,根據(jù)不同的組合可實(shí)現(xiàn)控制信息顯示,漢字顯示,圖片顯示,漢字與圖片顯示。程序流程圖如圖3-1所示:3-1程序流程圖PCB板上電,單片機(jī)上電復(fù)位。開(kāi)始執(zhí)行程序,液晶初始化,設(shè)置顯示模式游標(biāo)狀態(tài)顯示地址等。顯示作者信息,條件判斷,根據(jù)按鍵不同的組合信息進(jìn)入相應(yīng)的顯示模式,完成某種顯示任務(wù)后再次判斷,實(shí)現(xiàn)顯示任務(wù)的靈活執(zhí)行。3.2主要顯示程序設(shè)計(jì)命令數(shù)據(jù)的寫入圖3-2MCU寫資料到液晶模塊如圖3-2所示,并行方式下由單片機(jī)寫數(shù)據(jù)或命令到液晶模塊的過(guò)程,當(dāng)要寫數(shù)據(jù)RS置高,寫命令時(shí)RS置低,然后RW置低表示寫入,數(shù)據(jù)或命令在I/O等待,E置高電平,資料讀入液晶模塊。命令數(shù)據(jù)的讀出圖3-3MCU從液晶模塊讀資料如圖3-3所示,和命令數(shù)據(jù)的寫入不同的是當(dāng)讀入時(shí)。RW應(yīng)該置高電平,數(shù)據(jù)或命令在DB0-DB7等待,然后E置高電平,數(shù)據(jù)或命令被MCU讀出。結(jié)合讀寫操作編寫寫入命令的局部代碼如下:uchartemp=0;RS=0;//RS置低對(duì)命令進(jìn)行操作RW=1;//RW置高M(jìn)CU進(jìn)行讀操作do//檢測(cè)LCD是否處于忙狀態(tài){EN=1;//EN置高DB0-DB7數(shù)據(jù)輸出_nop_();temp=P1;//從P1口讀入數(shù)據(jù)EN=0;//EN置低阻止MCU和QY-12864通信}while(temp&0x80);RW=0;//RW置低MCU進(jìn)行寫操作P1=cmd;//命令在P1口等待EN=1;//EN置高命令寫入QY-12864_nop_();EN=0;//寫完命令后阻止MCU與QY-12864通信注意:上邊的一個(gè)do···while···語(yǔ)句是用來(lái)判讀液晶是否處于忙碌狀態(tài),如果處于忙碌狀態(tài)那么繼續(xù)執(zhí)行循環(huán)繼續(xù)檢測(cè),直到液晶不忙碌時(shí)進(jìn)行下一步操作。每次對(duì)液晶進(jìn)行操作時(shí)都要進(jìn)行這個(gè)詢問(wèn),否那么會(huì)出錯(cuò)。漢字的顯示圖3-416x16漢字顯示坐標(biāo)QY-12864是帶字庫(kù)的液晶,也就是說(shuō)可以直接寫入漢字,當(dāng)寫入漢字時(shí)先寫入它的坐標(biāo),如果連續(xù)寫入它的地址指針會(huì)自動(dòng)加1,所以這種控制還是比較方便的,當(dāng)然也可以自己提取字模,它的寫入方式是先寫列在寫行就是和我們一般寫字的方式是一樣的,提取字模是應(yīng)該注意這一點(diǎn),用Zimo21字模軟件或其他軟件時(shí)應(yīng)該進(jìn)行橫向取模。局部漢字寫入代碼如下:voidDisplay_hz(ucharaddress,constuchar*pt,ucharnum){uchari;Write_cmd(address);//先寫入漢字顯示坐標(biāo)addressfor(i=0;i=(num*2);i++)//寫入漢字個(gè)數(shù)Write_data(*(pt++));}//寫入漢字〔pt為漢字?jǐn)?shù)組首地址〕圖片的顯示圖片數(shù)據(jù)的寫入是先寫入圖片顯示的縱坐標(biāo)再寫入橫坐標(biāo),地址指針會(huì)自動(dòng)加1,圖片顯示坐標(biāo)如圖3-5所示,圖片寫入的局部代碼如下:uchari,j,k;Write_cmd(0x34);i=0x80;for(j=0;j<32;j++)//畫上半屏幕32行{Write_cmd(i++);//寫入圖片顯示縱坐標(biāo)Write_cmd(0x80);//寫入圖片顯示橫坐標(biāo)for(k=0;k<16;k++)//地址指針會(huì)自動(dòng)加1故循環(huán){故會(huì)寫滿一行〔128列〕Write_data(*ptr++);//ptr為圖片數(shù)組首地址}}i=0x80;for(j=0;j<32;j++)//畫下半屏幕{Write_cmd(i++);Write_cmd(0x88);for(k=0;k<16;k++);{Write_data(*ptr++);}}Write_cmd(0x36);//翻開(kāi)繪圖Write_cmd(0x30);//回到根本指令集圖3-5圖片顯示坐標(biāo)液晶初始化液晶初始化時(shí)根據(jù)控制器ST7920的初始化順序進(jìn)行初始化設(shè)置的,局部代碼如下:Delay_Nms(500);Write_cmd(0x30);//根本指令集Delay_Nms(1);Write_cmd(0x02);//地址歸位Delay_Nms(1);Write_cmd(0x0c);//整體顯示翻開(kāi),游標(biāo)關(guān)閉Delay_Nms(1);Write_cmd(0x01);//去除顯示Delay_Nms(1);Write_cmd(0x06);//游標(biāo)右移Delay_Nms(1);Write_cmd(0x80);//設(shè)定顯示的起始位置3.3圖片數(shù)據(jù)的提取Zimo21字模提取軟件提取128x64圖片步驟:新建寬度128高度64圖像翻開(kāi)圖片文件。參數(shù)設(shè)置橫向取模。取模格式C51。生成數(shù)據(jù)。漢字字模提取與圖片步驟相同,只是圖像大小改為16x16。圖3-6圖片數(shù)據(jù)提取3.4軟件仿真測(cè)試進(jìn)行軟件仿真測(cè)試應(yīng)按照如下步驟:在keil軟件先建立一個(gè)工程文件。然后選擇ALTEM公司AT89C51單片機(jī)。對(duì)單片機(jī)進(jìn)行一些根本設(shè)置,晶振頻率存儲(chǔ)器選片內(nèi)還是片外大小等,一定要設(shè)置軟件編譯后要生成hex文件〔protues仿真需要〕。然后編寫程序,編譯運(yùn)行直至沒(méi)有錯(cuò)誤。翻開(kāi)protuesISIS編輯器繪制原理圖。給單片機(jī)中加載keil中生成的hex文件。開(kāi)始軟件調(diào)試。從message中可以看到查找錯(cuò)誤原因進(jìn)行調(diào)整,也可是添加以寫輔助工具,如邏輯分析儀等分析波形是否正確。漢字與圖像的仿真結(jié)果如下列圖3-7圖3-8所示。圖3-7protues漢字仿真圖3-8protues圖像仿真3.5PCB板的制作2.建立原理圖文件,繪制原理圖并編譯。3.生成網(wǎng)絡(luò)報(bào)表。4.新建PCB文件,進(jìn)行根本屬性設(shè)置〔大小,層數(shù)等〕。5.將建好的PCB文件參加工程文件。6.導(dǎo)入網(wǎng)絡(luò)報(bào)表。7.調(diào)整元件封裝,調(diào)整元件布局。8.布線〔設(shè)置好布線規(guī)那么,線寬,布線層面等〕。9.對(duì)所有過(guò)孔加焊盤。10.覆銅。圖3-8PCB板圖圖3-9PCB3D視圖第四章硬件調(diào)試結(jié)果如下圖顯示控制信息,使用者可根據(jù)控制信息實(shí)現(xiàn)圖片與漢字有選擇的顯示。圖4-1控制信息顯示如下圖可以顯示程序設(shè)定的16x16漢字。圖4-2漢字顯示如圖4-3所示可以顯示設(shè)定的128x64圖片。圖4-3圖片顯示總結(jié)通過(guò)本課題使我學(xué)會(huì)了資料的快速查找,提高了獨(dú)立分析問(wèn)題、解決問(wèn)題的能力。我覺(jué)得本課題的最大難點(diǎn)在于對(duì)于對(duì)液晶點(diǎn)陣書寫方式的理解也就是顯示坐標(biāo)的理解,不同的液晶控制器有不同的書寫方式,例如本設(shè)計(jì)使用的ST7920控制器是橫向書寫,而有的采用SED1565控制器是縱向書寫,而且是先從低位開(kāi)始寫數(shù)據(jù),所以在字模提取的時(shí)候應(yīng)該根據(jù)不同的書寫方式來(lái)進(jìn)行字模的提取。否那么在顯示的時(shí)候出現(xiàn)亂碼等情況。在PCB板的布線,一定要耐心,適中選取線的寬度與焊盤大小,采取和理的布局,盡量防止使用飛線。在硬件調(diào)試工程中,一定要要注意細(xì)節(jié)問(wèn)題的分析,只有這有這樣才能快速準(zhǔn)確的解決所遇到的問(wèn)題??傮w來(lái)說(shuō)本課題難度不大,本設(shè)計(jì)實(shí)現(xiàn)了128x64圖片與16x16漢字的顯示,是一個(gè)完整的實(shí)際問(wèn)題的解決,是一個(gè)理論轉(zhuǎn)化位實(shí)踐的過(guò)程,對(duì)以后的工作和學(xué)習(xí)都有很大的幫助。最后感謝陳根華老師給我這個(gè)課題,讓我對(duì)單片機(jī)和液晶方面有了比較深入的了解,也對(duì)keil,protel,protues等軟件的使用有了一定了解。參考文獻(xiàn)〔Perference〕[1]——C51編程技術(shù)[M].西南交通大學(xué)出版社,2004.3.[2]張毅剛,彭喜元,董繼成.單片機(jī)原理及應(yīng)用[M].高等教育出版社,2003.12.[4]王陣營(yíng),李滿,楊君等.ProtelDXP2004電路設(shè)計(jì)與制版使用教程[M].中國(guó)鐵道出版社,2006.6.[5]臧鐵鋼,唐才峰,陳學(xué)鋒,劉偉儉.ProtelDXP電路設(shè)計(jì)與應(yīng)用[M].中國(guó)鐵道出版社,2005.5.[6]李宏,張家田.液晶顯示器件應(yīng)用技術(shù)[M].機(jī)械工業(yè)出版社,2004.7.[7]小林俊介,喬雙,高巖譯.下一代液晶顯示[M].科學(xué)出版社,2003.4.[8]孟慶龍.單片機(jī)與三種液晶顯示器的接口技術(shù)[J].信息化研究,第35卷第6期.[9]孟臣,李敏.中文液晶圖文顯示器及其應(yīng)用[J].電子器件應(yīng)用,第5卷第8期.致謝畢業(yè)設(shè)計(jì)的結(jié)束預(yù)示著大學(xué)生活的結(jié)束,而在畢業(yè)設(shè)計(jì)過(guò)程中得到了很到老師和同學(xué)的幫助與支持,在此真摯的感謝陳根華老師在繁忙的工作中擠出時(shí)間給予的指導(dǎo),感謝所有任課老師無(wú)私的教誨,感謝四年同窗的關(guān)心與幫助,謝謝你們?yōu)槲覄?chuàng)造的大學(xué)生活。同時(shí)也借此時(shí)機(jī)感謝父母無(wú)私的愛(ài),感謝他們給我接受教育的時(shí)機(jī),感謝他們的養(yǎng)育之恩。附錄程序代碼/**********************************************程序功能:用并行方式在液晶上顯示漢字和圖片許森日期:2010年5月20日**********************************************/#include"subroutine.h"#include"disdata.h"voidmain(){unsignedchari;Ini_lcd();Delay_Nms(100); s1=0; s2=0; for(i=5;i>0;i--) //檢測(cè)程序{led=0; Delay_Nms(100); led=1; Delay_Nms(100);} Write_cmd(0x01);Display_hz(0x81,line11,6); //顯示作者信息Display_hz(0x91,line12,6);Display_hz(0x8a,line13,5);Display_hz(0x9a,line14,4);Delay_Nms(1000); loop:if(s1==0&&s2==0){Write_cmd(0x01); //顯示控制信息Display_hz(0x80,line31,3); Display_hz(0x91,line32,7);Display_hz(0x89,line33,7);Display_hz(0x99,line34,7); Delay_Nms(3000); gotoloop;} elseif(s1==1&&s2==0) { do {Write_cmd(0x01); //清屏picture(pic1); //顯示小狗圖片1Delay_Nms(1500); //等待兩秒Write_cmd(0x01); //清屏picture(pic2); //顯示小狗圖片2Delay_Nms(1500); //等待兩秒 }while(s1==1&&s2==0); gotoloop;} elseif(s1==1&&s2==1) {do{Write_cmd(0x01);Display_hz(0x81,line21,4); //顯示昌大校訓(xùn)Display_hz(0x8a,line23,4);Display_hz(0x9a,line24,4);Delay_Nms(1500); //等待兩秒 Write_cmd(0x01); //顯示文字 Display_hz(0x90,line41,8);Display_hz(0x88,line42,8);Delay_Nms(1500); } while(s1==1&&s2==1); gotoloop;} elseif(s1==0&&s2==1) {do{Write_cmd(0x01);Display_hz(0x81,line21,4); //顯示昌大校訓(xùn)Display_hz(0x8a,line23,4);Display_hz(0x9a,line24,4);Delay_Nms(1000); Write_cmd(0x01); //清屏picture(pic1); //顯示小狗圖片1Delay_Nms(1000); Write_cmd(0x01); picture(pic2); //顯示小狗圖片2Delay_Nms(1000); Write_cmd(0x01); Display_hz(0x90,jieshu1,7); //顯示結(jié)束語(yǔ) Display_hz(0x8a,jieshu2,4); Delay_Nms(1000);}while(s1==1&&s2==0); gotoloop;}}/*************************************************************************************/#include<reg51.h>#include"intrins.h"typedefunsignedcharuchar;typedefunsignedintuint;sbitRS=P3^0;//P3.0高電平表示數(shù)據(jù),低電平表示命令sbitRW=P3^1;//P3.1高電平表示讀出,低電平表示寫入sbitEN=P3^2;//P3.2高電平使能,低電平為串行數(shù)據(jù)移位脈沖〔本程序用并行數(shù)據(jù)輸入〕sbitled=P3^3;//檢測(cè)程序引腳/*******************************************函數(shù)名:Delay_Nms功能:延時(shí)N個(gè)ms參數(shù):n--延時(shí)度返回值:無(wú)******************************************/voidDelay_Nms(uintn){uinti,j;for(i=n;i>0;i--)for(j=150;j>0;j--)//延時(shí)1ms_nop_();}/********************************************函數(shù)名稱:Write_cmd功能:向液晶中寫入命令參數(shù):cmd--控制命令返回值:無(wú)********************************************/voidWrite_cmd(ucharcmd){uchartemp=0;RS=0;RW=1;P1=0xff;do//檢測(cè)LCD是否處于忙狀態(tài){EN=1;_nop_(); _nop_(); _nop_();temp=P1;EN=0; _nop_();}while(temp&0x80);RW=0;//給LCD中寫入命令P1=cmd;EN=1;_nop_();_nop_();_nop_();EN=0; _nop_();}/********************************************函數(shù)名稱:Write_data功能:向液晶中寫顯示數(shù)據(jù)參數(shù):data--顯示數(shù)據(jù)返回值:無(wú)*********************************************/voidWrite_data(uchardat){uchartemp=0;RS=0;RW=1; P1=0xff;do//檢測(cè)LCD是否處于忙狀態(tài){EN=1;_nop_();_nop_();_nop_();temp=P1;EN=0;}while(temp&0x80);RS=1;//給LCD中寫入數(shù)據(jù)RW=0;P1=dat;EN=1;_nop_();_nop_();EN=0;}/*****************************************函數(shù)名稱:Ini_lcd功能:初始化液晶模塊參數(shù):無(wú)返回值:無(wú)*****************************************/voidIni_lcd(void){Delay_Nms(500);Write_cmd(0x30);//根本指令集Delay_Nms(1);Write_cmd(0x02);//地址歸位Delay_Nms(1);Write_cmd(0x0c);//整體顯示翻開(kāi),游標(biāo)關(guān)閉Delay_Nms(1);Write_cmd(0x01);//去除顯示Delay_Nms(1);Write_cmd(0x06);//游標(biāo)右移Delay_Nms(1);Write_cmd(0x80);}//設(shè)定顯示的起始位置/****************

溫馨提示

  • 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)論