基于單片機(jī)的12864顯示萬年歷論文(帶原理圖和程序)_第1頁
基于單片機(jī)的12864顯示萬年歷論文(帶原理圖和程序)_第2頁
基于單片機(jī)的12864顯示萬年歷論文(帶原理圖和程序)_第3頁
基于單片機(jī)的12864顯示萬年歷論文(帶原理圖和程序)_第4頁
基于單片機(jī)的12864顯示萬年歷論文(帶原理圖和程序)_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、緒論畢業(yè)設(shè)計(jì)(論文)論文題目:12864顯示電子萬年歷 系 別: 專 業(yè): 班 級(jí): 學(xué) 號(hào): 學(xué)生姓名: 指導(dǎo)教師: 目 錄前言II1 緒論11.1 課題研究的背景11.2課題的研究目的與意義11.3課題解決的主要內(nèi)容12 系統(tǒng)的方案設(shè)計(jì)與論證42.1單片機(jī)芯片設(shè)計(jì)與論證4方案1:采用51系列單片機(jī)作為系統(tǒng)控制器4方案2:采用凌陽系列單片機(jī)作為系統(tǒng)的控制器42.2按鍵控制模塊設(shè)計(jì)與論證42.3時(shí)鐘模塊設(shè)計(jì)與論證5方案二:采用DS1302為計(jì)時(shí)時(shí)鐘芯片5方案三:采用DS12C887為計(jì)時(shí)時(shí)鐘芯片52.4溫度采集模塊設(shè)計(jì)與論證52.5顯示模塊模塊設(shè)計(jì)與論證53 系統(tǒng)硬件的設(shè)計(jì)13.1 STC89

2、C52單片機(jī)13.1.1 最小系統(tǒng)設(shè)計(jì)43.1.2 時(shí)鐘電路43.1.3 復(fù)位電路53.2時(shí)鐘芯片DS1302接口設(shè)計(jì)與性能分析53.2.1 DS1302性能簡(jiǎn)介53.2.2 DS1302接口電路設(shè)計(jì)13.3溫度芯片DS18B20接口設(shè)計(jì)與性能分析33.3.1 DS18B20性能簡(jiǎn)介31.DS18B20的主要特性33.3.3 DS18B20的工作時(shí)序43.4 LCD顯示模塊13.4.1 液晶顯示控制驅(qū)動(dòng)器的特點(diǎn)13.4.2 液晶顯示控制驅(qū)動(dòng)器的引腳功能13.4.3 液晶顯示控制驅(qū)動(dòng)器的指令系統(tǒng)23.4.4 液晶顯示控制驅(qū)動(dòng)器的軟件設(shè)計(jì)33.4.5 LCD12864的電路結(jié)構(gòu)特點(diǎn)53.4.6 L

3、CD12864的應(yīng)用54 系統(tǒng)軟件的設(shè)計(jì)74.1主程序流程圖的設(shè)計(jì)84.2 程序設(shè)計(jì)14.2.1 DS1302讀寫程序設(shè)計(jì)14.2.2 溫度程序設(shè)計(jì)15 系統(tǒng)的機(jī)體設(shè)計(jì)及調(diào)試25.1系統(tǒng)的模塊組成25.2系統(tǒng)軟件調(diào)試與仿真35.3系統(tǒng)硬件調(diào)試4總結(jié)5參考文獻(xiàn):6摘 要:本文介紹了基于STC89C52單片機(jī)的多功能電子萬年歷的硬件結(jié)構(gòu)和軟硬件設(shè)計(jì)方法。本設(shè)計(jì)由數(shù)據(jù)顯示模塊、溫度采集模塊、時(shí)間處理模塊和調(diào)整設(shè)置模塊四個(gè)模塊組成。系統(tǒng)以STC89C52單片機(jī)為控制器,以串行時(shí)鐘日歷芯片DS1302記錄日歷和時(shí)間,它可以對(duì)年、月、日、時(shí)、分、秒進(jìn)行計(jì)時(shí),還具有閏年補(bǔ)償?shù)榷喾N功能。溫度采集選用DS18B

4、20芯片,萬年歷采用直觀的數(shù)字顯示,數(shù)據(jù)顯示采用1602液晶顯示模塊,可以在LCD12864上同時(shí)顯示年、月、日、星期、時(shí)、分、秒、農(nóng)歷和溫度,還具有時(shí)間校準(zhǔn)和鬧鐘等功能。此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡(jiǎn)潔、成本低廉等諸多優(yōu)點(diǎn),具有廣闊的市場(chǎng)前景。關(guān)鍵字:?jiǎn)纹瑱C(jī),時(shí)鐘芯片, 溫度傳感器, 12864液晶顯示器前言隨著科技的快速發(fā)展,時(shí)間的流逝,從觀太陽、擺鐘到現(xiàn)在電子鐘,人類不斷研究,不斷創(chuàng)新紀(jì)錄。目前,單片機(jī)技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進(jìn)了千家萬戶。電子萬年歷的出現(xiàn)給人們的生活帶來了諸多方便。隨著微電子技術(shù)的高速發(fā)展,單片機(jī)在國民經(jīng)濟(jì)的個(gè)人領(lǐng)域得到了廣泛的運(yùn)用。單片機(jī)以體積小、功能全

5、、性價(jià)比高等諸多優(yōu)點(diǎn),在工業(yè)控制、家用電器、通信設(shè)備、信息處理、尖端武器等各種測(cè)控領(lǐng)域的應(yīng)用中獨(dú)占鰲頭,單片機(jī)開發(fā)技術(shù)已成為電子信息、電氣、通信、自動(dòng)化、機(jī)電一體化等專業(yè)技術(shù)人員必須掌握的技術(shù)。單片機(jī)單芯片的微小體積和低的成本,可廣泛地嵌入到如玩具、家用電器、機(jī)器人、儀器儀表、汽車電子系統(tǒng)、工業(yè)控制單元、辦公自動(dòng)化設(shè)備、金融電子系統(tǒng)、艦船、個(gè)人信息終端及通訊產(chǎn)品中,成為現(xiàn)代電子系統(tǒng)中最重要的智能化工具,于是基于單片機(jī)的醒目而時(shí)尚的電子版萬年歷順應(yīng)而生。基于單片機(jī)的電子萬年歷結(jié)合了時(shí)鐘和日歷的功能,將其二者融為一體,在顯示時(shí)間的同時(shí)還能顯示日期和年、月,它主要是通過單片機(jī)來讀取時(shí)鐘芯片的時(shí)間、日

6、期,然后送給顯示設(shè)備顯示出來。而電子萬年歷作為電子類小設(shè)計(jì)不僅是市場(chǎng)上的寵兒,也是是單片機(jī)實(shí)驗(yàn)中一個(gè)很常用的題目。因?yàn)樗挠泻芎玫拈_放性和可發(fā)揮性,因此對(duì)作者的要求比較高,不僅考察了對(duì)單片機(jī)的掌握能力更加強(qiáng)調(diào)了對(duì)單片機(jī)擴(kuò)展的應(yīng)用。而且在操作的設(shè)計(jì)上要力求簡(jiǎn)潔,功能上盡量齊全,顯示界面也要出色。日歷鐘顯示清晰直觀、走時(shí)準(zhǔn)確、可以進(jìn)行夜視,并且還可以擴(kuò)展出多種功能。緒論1 緒論根據(jù)具體的實(shí)際要求,我們進(jìn)行了合理的分工安排,表1為我們這次設(shè)計(jì)的分工情況。表1 分工情況項(xiàng)目調(diào)查,資料查找*制作原理圖,模擬仿真Proteus,程序整理,文檔制作*元件清單整理、采購,設(shè)計(jì)原理圖,溫度、顯示程序整理*焊接,

7、電路調(diào)試,按鍵、時(shí)鐘程序整理*1.1 課題研究的背景隨著科技的快速發(fā)展,時(shí)間的流逝,從觀太陽、擺鐘到現(xiàn)在電子鐘,人類不斷研究,不斷創(chuàng)新紀(jì)錄。它可以對(duì)年、月、日、時(shí)、分、秒進(jìn)行計(jì)時(shí),還具有閏年補(bǔ)償?shù)榷喾N功能,而且DS1302的使用壽命長,誤差小。對(duì)于數(shù)字電子萬年歷采用直觀的數(shù)字顯示,可以同時(shí)顯示年、月、日、星期、時(shí)、分、秒、溫度和農(nóng)歷等信息,還具有時(shí)間校準(zhǔn)等功能。該電路采用STC89C52單片機(jī)作為核心,功耗小,能在5V的低壓工作,電壓可選用4.55.5V電壓供電。此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡(jiǎn)潔、成本低廉等諸多優(yōu)點(diǎn),符合電子儀器儀表的發(fā)展趨勢(shì),具有廣闊的市場(chǎng)前景。1.2課題的

8、研究目的與意義二十一世紀(jì)是數(shù)字化技術(shù)高速發(fā)展的時(shí)代,而單片機(jī)在數(shù)字化高速發(fā)展的時(shí)代扮演著極為重要的角色。電子萬年歷的開發(fā)與研究在信息化時(shí)代的今天亦是當(dāng)務(wù)之急,因?yàn)樗鼞?yīng)用在學(xué)校、機(jī)關(guān)、企業(yè)、部隊(duì)等單位禮堂、訓(xùn)練場(chǎng)地、教學(xué)室、公共場(chǎng)地等場(chǎng)合,可以說遍及人們生活的每一個(gè)角落。所以說電子萬年歷的開發(fā)是國家之所需,社會(huì)之所需,人民之所需。由于社會(huì)對(duì)信息交換不斷提高的要求及高新技術(shù)的逐步發(fā)展,促使電子萬年歷發(fā)展并且投入市場(chǎng)得到廣泛應(yīng)用。1.3課題解決的主要內(nèi)容本課題所研究的電子萬年歷是單片機(jī)控制技術(shù)的一個(gè)具體應(yīng)用,主要研究?jī)?nèi)容包括以下幾個(gè)方面:(1)選用電子萬年歷芯片時(shí),應(yīng)重點(diǎn)考慮功能實(shí)在、使用方便、單片

9、存儲(chǔ)、低功耗、抗斷電的器件。(2)根據(jù)選用的電子萬年歷芯片設(shè)計(jì)外圍電路和單片機(jī)的接口電路。(3)在硬件設(shè)計(jì)時(shí),結(jié)構(gòu)要盡量簡(jiǎn)單實(shí)用、易于實(shí)現(xiàn),使系統(tǒng)電路盡量簡(jiǎn)單。(4)根據(jù)硬件電路圖,在開發(fā)板上完成器件的焊接。(5)根據(jù)設(shè)計(jì)的硬件電路,編寫控制STC89C52芯片的單片機(jī)程序。(6)通過編程、編譯、調(diào)試,把程序下載到單片機(jī)上運(yùn)行,并實(shí)現(xiàn)本設(shè)計(jì)的功能。(7)在硬件電路和軟件程序設(shè)計(jì)時(shí),主要考慮提高人機(jī)界面的友好性,方便用戶操作等因素。1系統(tǒng)的方案設(shè)計(jì)與論證2 系統(tǒng)的方案設(shè)計(jì)與論證單片機(jī)電子萬年歷的制作有多種方法,可供選擇的器件和運(yùn)用的技術(shù)也有很多種。所以,系統(tǒng)的總體設(shè)計(jì)方案應(yīng)在滿足系統(tǒng)功能的前提下

10、,充分考慮系統(tǒng)使用的環(huán)境,所選的結(jié)構(gòu)要簡(jiǎn)單使用、易于實(shí)現(xiàn),器件的選用著眼于合適的參數(shù)、穩(wěn)定的性能、較低的功耗以及低廉的成本。按照系統(tǒng)設(shè)計(jì)的要求,初步確定系統(tǒng)由電源模塊、時(shí)鐘模塊、顯示模塊、鍵盤接口模塊、溫度測(cè)量模塊和鬧鐘模塊共六個(gè)模塊組成,電路系統(tǒng)構(gòu)成框圖如圖1所示。 圖1 硬件電路框圖2.1單片機(jī)芯片設(shè)計(jì)與論證方案一: 方案1:采用51系列單片機(jī)作為系統(tǒng)控制器單片機(jī)算術(shù)運(yùn)算功能強(qiáng),軟件編程靈活、自由度大,可用軟件編程實(shí)現(xiàn)各種算法和邏輯控制。由于其功耗低、體積較小、技術(shù)成熟和成本低等優(yōu)點(diǎn),在各個(gè)領(lǐng)域應(yīng)用廣泛。而且抗干擾性能好。方案2:采用凌陽系列單片機(jī)作為系統(tǒng)的控制器凌陽系列單片機(jī)可以實(shí)現(xiàn)各種

11、復(fù)雜的邏輯功能,模塊大,密度高,它將所有器件集成在一塊芯片上,減少了體積,提高了穩(wěn)定性。凌陽系列單片機(jī)提高了系統(tǒng)的處理速度,適合作為大規(guī)模實(shí)時(shí)系統(tǒng)的控制核心。因51單片機(jī)價(jià)格比凌陽系列低得多,且本設(shè)計(jì)不需要很高的處理速度,從經(jīng)濟(jì)和方便使用角度考慮,本設(shè)計(jì)選擇了方案1。2.2按鍵控制模塊設(shè)計(jì)與論證方案一:采用矩陣鍵盤,由于按鍵多可實(shí)現(xiàn)數(shù)值的直接鍵入,但在系統(tǒng)中需要CPU不間斷的對(duì)其端口掃描。方案二:采用獨(dú)立按鍵,查詢簡(jiǎn)單,程序處理簡(jiǎn)單,可節(jié)省CPU資源。因系統(tǒng)中所需按鍵不多,為了釋放更多的CPU占有時(shí)間,操作方便,故采用方案二。2.3時(shí)鐘模塊設(shè)計(jì)與論證方案一:直接采用單片機(jī)定時(shí)計(jì)數(shù)器提供秒信號(hào),

12、使用程序?qū)崿F(xiàn)年、月、日、星期、時(shí)、分、秒計(jì)數(shù)。采用此種方案雖然減少芯片的使用,節(jié)約成本,但是,實(shí)現(xiàn)的時(shí)間誤差較大。方案二:采用DS1302為計(jì)時(shí)時(shí)鐘芯片該芯片是串行電路,與單片機(jī)接口簡(jiǎn)單,但需另備電池和32.768kHz晶振,因焊接工藝和晶振質(zhì)量等原因會(huì)導(dǎo)致精度降低。方案三:采用DS12C887為計(jì)時(shí)時(shí)鐘芯片該芯片與單片機(jī)采用8位并口通信,傳遞信息速度快。自帶有鋰電池和晶振,外部掉電后,其內(nèi)部時(shí)間信息還能夠保持10年之久,因電路被封裝在一起,可以保證很高的精度和抗干擾能力。而且芯片功能豐富,可以通過內(nèi)部寄存器設(shè)置鬧鐘,并產(chǎn)生鬧鐘中斷。由于DS1302時(shí)鐘芯片計(jì)數(shù)時(shí)間精度高,而且具有閏年補(bǔ)償功能

13、且價(jià)格經(jīng)濟(jì)實(shí)惠等優(yōu)點(diǎn),故采用方案二。2.4溫度采集模塊設(shè)計(jì)與論證方案一:采用溫度傳感器(如熱敏電阻或AD590),再經(jīng)AD轉(zhuǎn)換得到數(shù)字信號(hào),精度較準(zhǔn),但價(jià)格昂貴,電路較復(fù)雜。方案二:采用數(shù)字式溫度傳感器DS18B20,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)9-12位的數(shù)字值讀數(shù)方式,但準(zhǔn)確度不高,誤差最大達(dá)2度。因?yàn)橛肈S18B20溫度芯片,采用單總線訪問,降低成本、降低制作難度且可節(jié)省單片機(jī)資源,故采用方案二。2.5顯示模塊模塊設(shè)計(jì)與論證方案一:采用靜態(tài)顯示方法,靜態(tài)顯示模塊的硬件制作較復(fù)雜及功耗大,要用到多個(gè)移位寄存器,但不占用端口,只需兩根串口線輸出。方案二:采用動(dòng)態(tài)

14、顯示方法,動(dòng)態(tài)顯示模塊的硬件制作簡(jiǎn)單,段掃描和位掃描各占用一個(gè)端口,總需占用單片機(jī)14個(gè)端口,采用間斷掃描法功耗小、硬件成本低及整個(gè)硬件系統(tǒng)體積相對(duì)減小。方案三:采用LCD的方法,具有硬件制作簡(jiǎn)單可直接與單片機(jī)接口,顯示內(nèi)容多,功耗小,成本低等優(yōu)點(diǎn),LCD12864可顯示很多個(gè)字符,采用LCD的缺點(diǎn)是顯示不夠大。5系統(tǒng)硬件的設(shè)計(jì)比較以上三種方案:方案一硬件復(fù)雜體積大、功耗大;方案二硬件簡(jiǎn)單、功耗小;方案三硬件簡(jiǎn)單,顯示內(nèi)容多,功耗小,成本低等。本系統(tǒng)設(shè)計(jì)要求達(dá)到功耗小、體積小、成本低,顯示信息多等要求,權(quán)衡三種方案,選擇方案三。3 系統(tǒng)硬件的設(shè)計(jì)根據(jù)上述所確定的系統(tǒng)方案構(gòu)想,下面進(jìn)行系統(tǒng)硬件電

15、路的具體設(shè)計(jì),系統(tǒng)的具體設(shè)計(jì)在下面會(huì)詳細(xì)介紹。3.1 STC89C52單片機(jī)單片微型計(jì)算機(jī)是隨著微型計(jì)算機(jī)的發(fā)展而產(chǎn)生和發(fā)展的。自從1975 年美國德克薩斯儀器公司的第一臺(tái)單片微型計(jì)算機(jī)( 簡(jiǎn)稱單片機(jī))TMS-1000 問世以來,迄今為止,單片機(jī)技術(shù)已成為計(jì)算機(jī)技術(shù)的一個(gè)獨(dú)特分支,單片機(jī)的應(yīng)用領(lǐng)域也越來越廣泛,特別是在工業(yè)控制中經(jīng)常遇到對(duì)某些物理量進(jìn)行定時(shí)采樣與控制的問題,在儀器儀表智能化中也扮演著極其重要的角色。如果將8位單片機(jī)的推出作為起點(diǎn),那么單片機(jī)的發(fā)展歷史大致可以分為以下幾個(gè)階段:第一階段(19761978):?jiǎn)纹瑱C(jī)的探索階段。以Intel公司的MCS-48為代表。MCS-48的推出

16、是在工控領(lǐng)域的探索,參與這一探索的公司還有Motorola、Zilog等。都取得了滿意的效果。這就是SCM的誕生年代,“單片機(jī)”一詞即由此而來。第二階段(19781982):?jiǎn)纹瑱C(jī)的完善階段。Intel公司在MCS-48基礎(chǔ)上推出了完善的、典型的單片機(jī)系列MCS-51。它在以下幾個(gè)方面奠定了典型的通用總線型單片機(jī)體系結(jié)構(gòu)。(1)完善的外部總線。MCS-51設(shè)置了經(jīng)典的8位單片機(jī)的總線結(jié)構(gòu),包括8位數(shù)據(jù)總線、16位地址總線、控制總線及具有多機(jī)通信功能的串行通信接口。(2)CPU外圍功能單元的集中管理模式。(3)體現(xiàn)工控特性的地址空間及位操作方式。(4)指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控

17、制功能的指令。第三階段(19821990):8位單片機(jī)的鞏固發(fā)展及16位單片機(jī)的推出階段,也是單片機(jī)向微控制器發(fā)展的階段。Intel公司推出的MCS-96系列單片機(jī),將一些用于測(cè)控系統(tǒng)的模數(shù)轉(zhuǎn)換器、程序運(yùn)行監(jiān)視器、脈寬調(diào)制器等納入片中,體現(xiàn)了單片機(jī)的微控制器特征。第四階段(1990):微控制器的全面發(fā)展階段。隨著單片機(jī)在各個(gè)領(lǐng)域全面、深入地發(fā)展和應(yīng)用,出現(xiàn)了高速、大尋址范圍、強(qiáng)運(yùn)算能力的8位/16位/32位通用型單片機(jī),以及小型廉價(jià)的專用型單片機(jī)。單片機(jī)是在集成電路芯片上集成了各種元件的微型計(jì)算機(jī),這些元件包括中央處理器CPU、數(shù)據(jù)存儲(chǔ)器RAM、程序存儲(chǔ)器ROM、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)、時(shí)鐘部

18、件的集成和I/O接口電路。由于單片機(jī)具有體積小、價(jià)格低、可靠性高、開發(fā)應(yīng)用方便等特點(diǎn),因此在現(xiàn)代電子技術(shù)和工業(yè)領(lǐng)域應(yīng)用較為廣泛,在智能儀表中單片機(jī)是應(yīng)用最多、最活躍的領(lǐng)域之一。在控制領(lǐng)域中,現(xiàn)如今人們更注意計(jì)算機(jī)的底成本、小體積、運(yùn)行的可靠性和控制的靈活性。在各類儀器、儀表中引入單片機(jī),使儀器儀表智能化,提高測(cè)試的自動(dòng)化程度和精度,提高計(jì)算機(jī)的運(yùn)算速度,簡(jiǎn)化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比。單片機(jī)主要特點(diǎn):(1)有優(yōu)異的性能價(jià)格比。(2)集成度高、體積小、有很高的可靠性。單片機(jī)把各功能部件集成在一塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片之間的連線,大大提高了單片機(jī)的可靠性和抗干擾能力。另外

19、,其體積小,對(duì)于強(qiáng)磁場(chǎng)環(huán)境易于采取屏蔽措施,適合在惡劣環(huán)境下工作。(3)控制功能強(qiáng)。為了滿足工業(yè)控制的要求,一般單片機(jī)的指令系統(tǒng)中均有極豐富的轉(zhuǎn)移指令、I/O口的邏輯操作以及位處理功能。單片機(jī)的邏輯控制功能及運(yùn)行速度均高于同一檔次的微機(jī)。(4)低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品。(5)外部總線增加了I2C(Inter-Integrated Circuit)及SPI(Serial Peripheral Interface)等串行總線方式,進(jìn)一步縮小了體積,簡(jiǎn)化了結(jié)構(gòu)。(6)單片機(jī)的系統(tǒng)擴(kuò)展和系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。優(yōu)異的性能價(jià)格比。1)集成度高、體積小、有很高的可靠性。

20、 單片機(jī)把各功能部件集成在一塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片之間的連線,大大提高了單片機(jī)的可靠性與抗干擾能力。另外,其體積小,對(duì)于強(qiáng)磁場(chǎng)環(huán)境易于采取屏蔽措施,適合于在惡劣環(huán)境下工作。此外,程序多采取固化形式也可以提高可靠性。2)控制功能強(qiáng)。為了滿足工業(yè)控制要求,一般單片機(jī)的指令系統(tǒng)中均有極豐富的轉(zhuǎn)移指令、I/O口的邏輯操作以及位處理功能。單片機(jī)的邏輯控制功能及運(yùn)行速度均高于同一檔次的微機(jī)。單片機(jī)的系統(tǒng)擴(kuò)展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。 VCC:STC89C52電源正端輸入,接+5V。GND:電源地端。XTAL1: 單芯片系統(tǒng)時(shí)鐘的反相放大器輸入端。XTAL2: 系

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

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

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

24、0P0.7):端口0是一個(gè)8位寬的開路汲極(Open Drain)雙向輸出入端口,共有8個(gè)位,P0.0表示位0,P0.1表示位1,依此類推。其他三個(gè)I/O端口(P1、P2、P3)則不具有此電路組態(tài),而是內(nèi)部有一提升電路,P0在當(dāng)做I/O用時(shí)可以推動(dòng)8個(gè)LS的TTL負(fù)載。PORT2(P2.0P2.7):端口2是具有內(nèi)部提升電路的雙向I/O端口,每一個(gè)引腳可以推動(dòng)4個(gè)LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時(shí),此端口便能當(dāng)成輸入端口來使用。P2除了當(dāng)做一般I/O端口使用外,若是在STC89C52擴(kuò)充外接程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),也提供地址總線的高字節(jié)A8A15,這個(gè)時(shí)候P2便不能當(dāng)做I/O來使

25、用了。PORT1(P1.0P1.7):端口1也是具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)LS TTL負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)做定時(shí)器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。PORT3(P3.0P3.7):端口3也具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)TTL負(fù)載,同時(shí)還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部數(shù)據(jù)存儲(chǔ)器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋F湟_分配如下:P3.0:RXD,串行通信輸入。P3.

26、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ǔ)器的寫入信號(hào)。P3.7:RD,外部數(shù)據(jù)存儲(chǔ)器的讀取信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用

27、作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。圖2 ST

28、C89C52單片機(jī)引腳圖3.1.1 最小系統(tǒng)設(shè)計(jì)最小系統(tǒng)包括單片機(jī)及其所需的必要的電源、時(shí)鐘、復(fù)位等部件,能使單片機(jī)始終處于正常的運(yùn)行狀態(tài)。電源、時(shí)鐘等電路是使單片機(jī)能運(yùn)行的必備條件,可以將最小系統(tǒng)作為應(yīng)用系統(tǒng)的核心部分,通過對(duì)其進(jìn)行存儲(chǔ)器擴(kuò)展、A/D擴(kuò)展等,使單片機(jī)完成較復(fù)雜的功能。STC89C52是片內(nèi)有ROM/EPROM的單片機(jī),因此,這種芯片構(gòu)成的最小系統(tǒng)簡(jiǎn)單可靠。用STC89C52單片機(jī)構(gòu)成最小應(yīng)用系統(tǒng)時(shí),只要將單片機(jī)接上時(shí)鐘電路和復(fù)位電路即可,結(jié)構(gòu)如圖2所示,由于集成度的限制,最小應(yīng)用系統(tǒng)只能用作一些小型的控制單元。時(shí)鐘電路復(fù)位電路51系列單片機(jī)I/O接口圖3 單片機(jī)最小系統(tǒng)原理框

29、圖3.1.2 時(shí)鐘電路STC89C52單片機(jī)的時(shí)鐘信號(hào)通常有兩種方式產(chǎn)生:一是內(nèi)部時(shí)鐘方式,二是外部時(shí)鐘方式。內(nèi)部時(shí)鐘方式如圖3所示。在STC89C52單片機(jī)內(nèi)部有一振蕩電路,只要在單片機(jī)的XTAL1(18)和XTAL2(19)引腳外接石英晶體(簡(jiǎn)稱晶振),就構(gòu)成了自激振蕩器并在單片機(jī)內(nèi)部產(chǎn)生時(shí)鐘脈沖信號(hào)。圖中電容C1和C2的作用是穩(wěn)定頻率和快速起振,電容值在530pF,典型值為30pF。晶振CYS的振蕩頻率范圍在1.212MHz間選擇,典型值為12MHz和6MHz。圖4 STC89C52內(nèi)部時(shí)鐘電路3.1.3 復(fù)位電路當(dāng)在STC89C52單片機(jī)的RST引腳引入高電平并保持2個(gè)機(jī)器周期時(shí),單片

30、機(jī)內(nèi)部就執(zhí)行復(fù)位操作(若該引腳持續(xù)保持高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài))。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式。最簡(jiǎn)單的上電自動(dòng)復(fù)位電路中上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充放電來實(shí)現(xiàn)的。只要Vcc的上升時(shí)間不超過1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。除了上電復(fù)位外,有時(shí)還需要按鍵手動(dòng)復(fù)位。本設(shè)計(jì)就是用的按鍵手動(dòng)復(fù)位。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中電平復(fù)位是通過RST(9)端與電源Vcc接通而實(shí)現(xiàn)的。按鍵手動(dòng)復(fù)位電路見圖4。時(shí)鐘頻率用11.0592MHZ時(shí)C取10uF,R取10k。圖5 STC89C52 復(fù)位電路3.2時(shí)鐘芯片DS1302接口設(shè)計(jì)與性能分析3.2.1 DS13

31、02性能簡(jiǎn)介DS1302是Dallas公司生產(chǎn)的一種實(shí)時(shí)時(shí)鐘芯片。它通過串行方式與單片機(jī)進(jìn)行數(shù)據(jù)傳送,能夠向單片機(jī)提供包括秒、分、時(shí)、日、月、年等在內(nèi)的實(shí)時(shí)時(shí)間信息,并可對(duì)月末日期、閏年天數(shù)自動(dòng)進(jìn)行調(diào)整;它還擁有用于主電源和備份電源的雙電源引腳,在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。另外,它還能提供31字節(jié)的用于高速數(shù)據(jù)暫存的RAM。DS1302時(shí)鐘芯片內(nèi)主要包括移位寄存器、控制邏輯電路、振蕩器。DS1302與單片機(jī)系統(tǒng)的數(shù)據(jù)傳送依靠RST,I/O,SCLK三根端線即可完成。其工作過程可概括為:首先系統(tǒng)RST引腳驅(qū)動(dòng)至高電平,然后在SCLK時(shí)鐘脈沖的作用下,通過I/O引腳向DS1302

32、輸入地址/命令字節(jié),隨后再在SCLK時(shí)鐘脈沖的配合下,從I/O引腳寫入或讀出相應(yīng)的數(shù)據(jù)字節(jié)。因此,其與單片機(jī)之間的數(shù)據(jù)傳送是十分容易實(shí)現(xiàn)的,DS1302的引腳排列及內(nèi)部結(jié)構(gòu)圖如圖2:DS1302引腳說明: X1,X2 32.768kHz晶振引腳GND 地線RST 復(fù)位端I/O 數(shù)據(jù)輸入/輸出端口SCLK 串行時(shí)鐘端口VCC1 慢速充電引腳VCC2 電源引腳 圖5 DS1302管腳圖7畢業(yè)設(shè)計(jì)(論文)3.2.2 DS1302接口電路設(shè)計(jì)1時(shí)鐘芯片DS1302的接口電路及工作原理:圖6 DS1302與MCU接口電路圖6為DS1302的接口電路,其中Vcc1為后備電源,Vcc2為主電源。VCC1在單

33、電源與電池供電的系統(tǒng)中提供低電源并提供低功率的電池備份。VCC2在雙電源系統(tǒng)中提供主電源,在這種運(yùn)用方式中VCC1連接到備份電源,以便在沒有主電源的情況下能保存時(shí)間信息以及數(shù)據(jù)。DS1302由VCC1或VCC2 兩者中較大者供電。當(dāng)VCC2大于VCC1+0.2V時(shí),VCC2給DS1302供電。當(dāng)VCC2小于VCC1時(shí),DS1302由VCC1供電。DS1302在每次進(jìn)行讀、寫程序前都必須初始化,先把SCLK端置 “0”,接著把RST端置“1”,最后才給予SCLK脈沖;讀/寫時(shí)序如下圖5所示。表-1為DS1302的控制字,此控制字的位7必須置1,若為0則不能對(duì)DS1302進(jìn)行讀寫數(shù)據(jù)。對(duì)于位6,若

34、對(duì)時(shí)間進(jìn)行讀/寫時(shí),CK=0,對(duì)程序進(jìn)行讀/寫時(shí)RAM=1。位1至位5指操作單元的地址。位0是讀/寫操作位,進(jìn)行讀操作時(shí),該位為1;進(jìn)行寫操作時(shí),該位為0。控制字節(jié)總是從最低位開始輸入/輸出的。表-2為DS1302的日歷、時(shí)間寄存器內(nèi)容:“CH”是時(shí)鐘暫停標(biāo)志位,當(dāng)該位為1時(shí),時(shí)鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位為0時(shí),時(shí)鐘開始運(yùn)行。“WP”是寫保護(hù)位,在任何的對(duì)時(shí)鐘和RAM的寫操作之前,“WP”必須為0。當(dāng)“WP”為1時(shí),寫保護(hù)位防止對(duì)任一寄存器的寫操作。2、DS1302的控制字DS1302的控制字如表2所示。控制字節(jié)的高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入

35、DS1302中,位6如果0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為1表示進(jìn)行讀操作,為0表示進(jìn)行寫操作。控制字節(jié)總是從最低位開始輸出。表1 DS1302的控制字格式 1 RAM/CKA4A3A2A1A0RD/WR3、數(shù)據(jù)輸入輸出(I/O)在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位到高位7。如下圖7所示。 圖7 DS1302讀/寫時(shí)序圖4、DS1302的寄存器DS1302有12

36、個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見表2。 表2 DS1302的日歷、時(shí)間寄存器寫寄存器讀寄存器Bit7Bit6Bit5Bit7Bit3Bit2Bit1Bit080H81HCH10秒秒82H83H10分分84H85H12/010時(shí)時(shí)/PM86H87H0010 日日88H89H00010月月8AH8BH00000星期8CH8DH 10年年8EH8FHWP0000000此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 D

37、S1302與RAM相關(guān)的寄存器分為兩類:一類是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個(gè)字節(jié),命令控制字為FEH(寫)、FFH(讀)。3.3溫度芯片DS18B20接口設(shè)計(jì)與性能分析3.3.1 DS18B20性能簡(jiǎn)介1.DS18B20的主要特性DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)9-12位的數(shù)字值讀數(shù)方式。現(xiàn)場(chǎng)溫度

38、直接以"一線總線"的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)量,如:環(huán)境控制、設(shè)備或過程控制、測(cè)溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。其性能特點(diǎn)可歸納如下:1.獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;2.測(cè)溫范圍在-55到125,分辨率最大可達(dá)0.0625;3.采用了3線制與單片機(jī)相連,減少了外部硬件電路;4.零待機(jī)功耗;5.可通過數(shù)據(jù)線供電,電壓范圍在3.0V-5.5V;6.用戶可定義的非易失性溫度報(bào)警設(shè)置;7.報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件; 8.負(fù)電壓

39、特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱燒毀,只是不能正常工作。2.DS18B20工作原理   DS18B20的讀寫時(shí)序和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s減為750ms。 DS18B20測(cè)溫原理如圖5所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄

40、存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。圖5中的斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。LSB位置/清除增加計(jì)數(shù)器1斜率累加器計(jì)數(shù)比較器溫度寄存器減到0預(yù)置計(jì)數(shù)器2減到0停止預(yù)置低溫度系數(shù)晶振高溫度系數(shù)晶振圖8 DS18B20測(cè)溫原3.3.2 DS18B20接口電路設(shè)計(jì)如6圖所示,該系統(tǒng)中采用數(shù)字式溫度傳感器DS18B20,具有測(cè)量精度高,電路連接簡(jiǎn)單特點(diǎn),此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,用P3.7與

41、DS18B20的DQ口連接,Vcc接電源,GND接地。DS18B20的工作電流約為1mA,VCC一般為5V,則電阻R=5V/1mA=5K,目前用的電阻一般不是可調(diào)電阻,只是固定阻值,市場(chǎng)上有的就那么幾個(gè)型號(hào)。其中DS18B20接有電源,則需要一個(gè)上拉即可穩(wěn)定的工作。這個(gè)電阻通常比較大,我們選擇10K電阻的來起到上拉作用,使之為高電平,使后續(xù)電路保護(hù)。 圖9 溫度傳感器DS18B20接口3.3.3 DS18B20的工作時(shí)序1、復(fù)位時(shí)序圖圖10 復(fù)位時(shí)序圖1、 讀時(shí)序圖圖11 讀時(shí)序圖3、寫時(shí)序圖圖12 寫時(shí)序圖 3、工作時(shí)序 1)總線時(shí)序圖13 總線時(shí)序2)寫周期時(shí)序圖14 寫周期時(shí)序3)起始/

42、停止時(shí)序圖15 起始/停止時(shí)序4)應(yīng)答時(shí)序圖16 應(yīng)答時(shí)序5)立即地址讀時(shí)8畢業(yè)設(shè)計(jì)(論文)圖17 立即地址讀時(shí)序3.4 LCD顯示模塊顯示器部分是由HD61202液晶顯示控制驅(qū)動(dòng)器和LCD12864液晶顯示器組成的,下面我們對(duì)其分別進(jìn)行介紹。3.4.1 液晶顯示控制驅(qū)動(dòng)器的特點(diǎn)HD61202液晶顯示控制驅(qū)動(dòng)器是一種帶有驅(qū)動(dòng)輸出的圖形液晶顯示控制器,它可直接與8位微處理器相連,它可與HD61203配合對(duì)液晶屏進(jìn)行行、列驅(qū)動(dòng)。HD61202是一種帶有列驅(qū)動(dòng)輸出的液晶顯示控制器,它可與行驅(qū)動(dòng)器HD61203配合使用,組成液晶顯示驅(qū)動(dòng)控制系統(tǒng)。1.內(nèi)藏64×64=4096位顯示RAM,RA

43、M中每位數(shù)據(jù)對(duì)應(yīng)LCD屏上一個(gè)點(diǎn)的亮、暗狀態(tài);2.HD61202是列驅(qū)動(dòng)器,具有64路列驅(qū)動(dòng)輸出;3.HD61202讀、寫操作時(shí)序與68系列微處理器相符,因此它可直接與68系列微處理器接口相連;4.HD61202的占空比為1/321/64。3.4.2 液晶顯示控制驅(qū)動(dòng)器的引腳功能引腳CS1,CS2,CS3 為芯片的片選端;引腳 E 為讀寫使能信號(hào),它是在下降沿時(shí)數(shù)據(jù)被鎖存入HD61202的;在E 高電平期間,數(shù)據(jù)被讀出;R/W 為讀寫選擇信號(hào),當(dāng)它為一時(shí)為讀選通,為零時(shí)為寫選通;DB0-DB7為數(shù)據(jù)總線RST 為復(fù)位信號(hào)復(fù)位信號(hào)有效時(shí),關(guān)閉液晶顯示,使顯示起始行為0,RST可跟MCU相連,由M

44、CU控制;也可直接接VDD,使之不起作用。HD61202的引腳功能如下表2-3所示:表2-3 HD61202的引腳功能引腳符號(hào)狀態(tài)引腳名稱功能CS1,CS2,CS3輸入芯片片選端CS1和CS2低電平選通,CS3高電平選通。E輸入讀寫使能信號(hào)在E下降沿,數(shù)據(jù)被鎖存(寫)入HD61202;在E高電平期間,數(shù)據(jù)被讀出R/W輸入讀寫選擇信號(hào)R/W=1為讀選通,R/W=0為寫選通RS輸入數(shù)據(jù)、指令選擇信號(hào)RS=1為數(shù)據(jù)操作 RS=0為寫指令或讀狀態(tài)DB0-DB7三態(tài)數(shù)據(jù)總線RST輸入復(fù)位信號(hào)復(fù)位信號(hào)有效時(shí),關(guān)閉液晶顯示,使顯示起始行為0,RST可跟MCU相連,由MCU控制;也可直接接VDD,使之不起作用

45、。3.4.3 液晶顯示控制驅(qū)動(dòng)器的指令系統(tǒng)HD61202的指令系統(tǒng)比較簡(jiǎn)單,總共只有七種。現(xiàn)分別介紹如下:1. 顯示開/關(guān)指令R/W RSDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB00 0 0 0 1 1 1 1 1 1/0當(dāng)DBO=1時(shí),LCD顯示RAM中的內(nèi)容;DBO=0時(shí),關(guān)閉顯示。2. 顯示起始行(ROW)設(shè)置指令該指令設(shè)置了對(duì)應(yīng)液晶屏最上一行的顯示RAM的行號(hào),有規(guī)律的改變顯示起始行,可以使LCD實(shí)現(xiàn)顯示滾屏的效果。R/W RSDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 1 顯示起始行(0-63)3. 頁(PAGE)置指令R/W RS

46、DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 0 1 1 1頁號(hào)(0-7)顯示RAM共64行,分8頁,每頁8行。4. 列地址(Y Address)設(shè)置指令R/W RSDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 1 顯示列地址(0-63)設(shè)置了頁地址和列地址,就唯一確定了顯示RAM中的一個(gè)單元,這樣MCU就可以用讀、寫指令讀出該單元中的內(nèi)容或向該單元寫進(jìn)一個(gè)字節(jié)數(shù)據(jù)。5. 讀狀態(tài)指令R/W RSDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 0BUSY 0 ON/OFF REST 0 0 0 0該指令用來查詢HD6

47、1202的狀態(tài),各參量含義如下:BUSY:1-內(nèi)部在工作 0-正常狀態(tài)ON/OFF:1-顯示關(guān)閉 0-顯示打開REST: 1-復(fù)位狀態(tài) 0-正常狀態(tài)在BUSY和REST狀態(tài)時(shí),除讀狀態(tài)指令外,其它指令均不對(duì)HD61202產(chǎn)生作用。在對(duì)HD61202操作之前要查詢BUSY狀態(tài),以確定是否可以對(duì)HD61202進(jìn)行操作。6. 寫數(shù)據(jù)指令R/W RSDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 1 寫 數(shù) 據(jù)讀、寫數(shù)據(jù)指令每執(zhí)行完一次讀、寫操作,列地址就自動(dòng)增一,必須注意的是,進(jìn)行讀操作之前,必須有一次空讀操作,緊接著再讀才會(huì)讀出所要讀的單元中的數(shù)據(jù)。7. 讀數(shù)據(jù)指令R/W RS

48、DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 1 讀 顯 示 數(shù) 據(jù)3.4.4 液晶顯示控制驅(qū)動(dòng)器的軟件設(shè)計(jì)液晶控制器HD61202 一共有七條指令,從作用上可分為兩類,顯示狀態(tài)設(shè)置指令和數(shù)據(jù)讀/寫操作指令。詳見指令系統(tǒng)可查看圖形液晶顯示器產(chǎn)品有關(guān)手冊(cè)。顯示起始行設(shè)置中L5L0 為顯示起始行的地址,取值在0-3FH(1-64 行)范圍內(nèi)。頁面地址設(shè)置中P2-P0 為選擇的頁面地址,取值范圍為0-7H,代表1-8 頁。列地址設(shè)置中C5-C0 為Y地址計(jì)數(shù)器的內(nèi)容,取值在0-3FH(1-64 行)范圍內(nèi)。顯示器上128 點(diǎn)×64 點(diǎn),每8點(diǎn)為一字節(jié)數(shù)據(jù),都對(duì)應(yīng)著顯示

49、數(shù)據(jù)RAM(在HD61202 芯片內(nèi)),一點(diǎn)對(duì)應(yīng)一個(gè)bit,計(jì)算機(jī)寫入或讀出顯示存儲(chǔ)器的數(shù)據(jù)代表顯示屏上某一點(diǎn)列上的垂直8 點(diǎn)行的數(shù)據(jù)。D0 代表最上一行的點(diǎn)數(shù)據(jù),D1為第二行的點(diǎn)數(shù)據(jù),D7為第八行的點(diǎn)數(shù)據(jù)。該bit=1 時(shí)該點(diǎn)則顯示黑點(diǎn)出來,該bit=0 時(shí)該點(diǎn)則消失。另外LCD 指令中有條display ON/OFF 指令,display ON 時(shí)顯示RAM 數(shù)據(jù)對(duì)應(yīng)顯示的畫面;display OFF 則畫面消失,RAM 中顯示數(shù)據(jù)仍存在。點(diǎn)陣字模文件的建立:由于MGLS12864 液晶顯示器沒有內(nèi)部字符發(fā)生器,所以在屏幕上顯示的任何字符、漢字等須自己建立點(diǎn)陣字模庫,然后均按圖形方式進(jìn)行顯

50、示。由于HD61202 顯示存儲(chǔ)器的特性,不能將計(jì)算機(jī)內(nèi)的漢字庫和其它字模庫提出直接使用,需要將其旋轉(zhuǎn)90 度后再寫入。點(diǎn)陣字模庫建立包括以下幾個(gè)方面:1.建立8×16 點(diǎn)陣常用字符、數(shù)字、符號(hào)字模庫。可選用計(jì)算機(jī)BIOS 中ASCII 的8×16 字模庫,所有字符按照ASCII 值從小到大升序排列。asmMOV ax,1130h /*AH=11h功能調(diào)用。裝入字庫至軟字庫 */mov bh,6 /*AL=30h 取點(diǎn)陣信息 */int 10h /*BH=6 取ROM8X16 點(diǎn)陣指針(VGA) */mov ax,es /*出口:ES:BP 指向字庫指針 */mov asc

51、ii_es,axmov ax,bpmov ascii_bp,ax ;ascii_offset=ascii_bp+16*asciicode;for(j=0;j<16;j+) bufj=peekb(ascii_es,ascii_offset+j); /*讀16 字節(jié)點(diǎn)陣數(shù)據(jù)*/for(m=0;m<16;m+) /*點(diǎn)陣數(shù)據(jù)轉(zhuǎn)換成LCD 格式數(shù)據(jù)*/ if(m<8) beginbyte= 7; shiftn="7"else beginbyte="15" shiftn="15"for(j=0;j<8;j+)ascii8

52、x16m=(ascii8x16m+ (bufbeginbyte-j>>(shiftn-m)&0x01)<<1; 也可選用UCDOS 的ASC16 文件做字模庫。ASC16 文件的字符為8×16 點(diǎn)陣。所有字符按照ASCII值從小到大升序排列。計(jì)算字符首地址的公式:字符首地址=字符的ASCII 碼值×16加字模庫首地址。2.建立所用到的16×16 點(diǎn)陣字模庫。漢字字符可選用UCDOS 的HZK16 文件做字模庫。HZK16 文件的字符為16×16 點(diǎn)陣。所有字符按照區(qū)位碼從小到大升序排列。計(jì)算漢字字符首地址的公式如下:漢字首

53、地址=(區(qū)碼-1)×94+位碼-1)×32。作者用C 語言編寫的讀取UCDOS 點(diǎn)陣字庫字模程序,完成字模讀取。數(shù)據(jù)重新排列,并按MCS-51 匯編程序的要求寫成相應(yīng)格式的文本文件。p=(quma-1)*94+weima-1)*32;cclibfile="fopen"("HZK16","rb");fseek(cclibfile,(long)p,SEEK_SET);fread(buf,sizeof(unsigned char),32,cclibfile); /*讀32 字節(jié)點(diǎn)陣數(shù)據(jù)*/for(m=0;m<32;

54、m+) /*點(diǎn)陣數(shù)據(jù)轉(zhuǎn)換成LCD 格式數(shù)據(jù)*/if(m<8) beginbyte="14" shiftn="7"else if( m>= 8 && m<16 ) beginbyte="15" shiftn="15"else if( m>=16 && m<24 ) beginbyte="30" shiftn="23"else beginbyte="31" shiftn="31"for(j=0;j<8;j+)hzk16x16m=(hzk16x16m+ (bufbeginbyte-2*j >>(shiftn-m)&0x01)<<1;3.常用圖形(如產(chǎn)品商標(biāo)等)的點(diǎn)陣圖形的建立。對(duì)已有的圖形可采用掃描儀進(jìn)行掃描,然后用圖形處理軟件進(jìn)行處理,再將BMP 格式文件轉(zhuǎn)換成MCS-51的匯編文件的格式。以上所有的字模數(shù)據(jù)都存放在單片機(jī)W78E58 的程序存儲(chǔ)器中,如用到的漢字、圖形較多,可選用較大容量的程序存儲(chǔ)器。通用子程序:通用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論