版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
學(xué)士學(xué)位畢業(yè)論文(設(shè)計(jì))題目:基于單片機(jī)的12864時(shí)鐘顯示摘要電子時(shí)鐘是一種非常廣泛日常計(jì)時(shí)工具,給人們的帶來了很大的方便,在社會(huì)上越來越流行。它可以對年、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí),采用直觀的數(shù)字顯示,可以同時(shí)顯示年月日時(shí)分秒等信息,還有時(shí)間校準(zhǔn)等功能。該電子時(shí)鐘主要采用STC89C52單片機(jī)作為主控核心,用DS1302時(shí)鐘芯片作為時(shí)鐘、液晶12864顯示屏顯示。STC89C52單片機(jī)是由深圳宏晶科技公司推出的,功耗小,電壓可選用4~6V電壓供電;DS1302時(shí)鐘芯片是美國DALLAS公司推出的具有細(xì)電流充電功能的低功耗實(shí)時(shí)時(shí)鐘芯片,它可以對年、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí),還具有閏年補(bǔ)償?shù)榷喾N功能,而且DS1302的使用壽命長,誤差?。粩?shù)字顯示是采用的12864液晶顯示屏來顯示,可以同時(shí)顯示年、月、日、星期、時(shí)、分、秒等信息。此外,該電子時(shí)鐘還具有時(shí)間校準(zhǔn)等功能。關(guān)鍵詞:STC89C51單片機(jī),DS1302時(shí)鐘芯片,液晶12864AbstractElectronicclockisaveryextensivedailytimingtool,tothepeoplehasbroughtgreatconvenience,moreandmorepopularinthecommunity.Itcanbetheyear,month,date,day,hour,minute,secondforatime,usingintuitivedigitaldisplay,candisplayinformationsuchasyear,month,day,hour,andtimealignmentfunctions.TheelectronicclockisusedmainlyasamasterSTC89C52microcontrollercore,withtheDS1302clockchipasaclock,LCDdisplay12864.STC89C52SCMisaShenzhenHongCrystalTechnologyhasintroduced,powerconsumption,voltagecanbeselected4~6Vvoltagepowersupply;DS1302clockchipisAmericanDALLAScompanylaunchedwithafinecurrentcharginglow-powerreal-timeclockchip,itcanyear,month,date,day,hour,minute,secondforatime,alsohasaleapyearcompensationandotherfunctions,DS1302andlonglife,smallerror;12864LCDdigitaldisplayisusedtodisplaythatcandisplayyear,month,date,day,hour,minute,secondandsoon.Inaddition,theelectronicclockalsohasatimecalibrationfunction.KeyWords:STC89C51microcontroller,DS1302clockchip,LCD12864目錄1緒論 11.1時(shí)鐘開展史 11.2目前的研究現(xiàn)狀 21.3研究目的及意義 22總體方案設(shè)計(jì) 32.1方案的選擇 32.1.1設(shè)計(jì)要求 32.1.2方案的選擇 32.2總體方案組成框圖 43系統(tǒng)硬件設(shè)計(jì) 43.1主芯片模塊 43.1.1中斷系統(tǒng) 6常用存放器 63.2晶振和復(fù)位電路 8晶振電路 8復(fù)位電路 93.3DS1302時(shí)鐘芯片電路 93.3.1DS1302引腳圖 93.3.2DS1302存放器 103.3.3DS1302外圍電路 113.4LCD12864顯示模塊 113.4.1LCD12864引腳功能 113.4.2LCD12864指令說明 123.4.3LCD12864電路接線 143.5紅外遙控模塊 144系統(tǒng)軟件設(shè)計(jì) 154.1主程序設(shè)計(jì) 154.2LCD12864驅(qū)動(dòng)程序 174.3DS1302驅(qū)動(dòng)程序 194.4紅外遙控程序 225調(diào)試結(jié)果 245.1正常顯示日期時(shí)間畫面 245.2進(jìn)入調(diào)整時(shí)間日期畫面 245.3圖片顯示畫面 256總結(jié) 26致謝 27參考文獻(xiàn) 28附錄一 29附錄二 301緒論1.1時(shí)鐘開展史很早以前,人類主要是利用天文現(xiàn)象和流動(dòng)物質(zhì)的連續(xù)運(yùn)動(dòng)來計(jì)時(shí)。例如,日晷是利用日影的方位計(jì)時(shí),陰雨天和夜里沒法使用且測量誤差較大;漏壺和沙漏是利用水流和沙流的流量計(jì)時(shí),雖然晚上可以使用,但是水容易結(jié)冰,誤差還是大。后來人們創(chuàng)造了機(jī)械鐘,以機(jī)械振動(dòng)系統(tǒng)為時(shí)間基準(zhǔn),實(shí)現(xiàn)對時(shí)間的計(jì)量,誤差到達(dá)一天一分鐘左右。而如今的數(shù)字鐘用數(shù)字電路實(shí)現(xiàn)時(shí)、分、秒,精度較高,一天的誤差不到一秒。目前精度最高的時(shí)鐘要屬原子鐘,其每天的誤差小于一億分之一秒。隨著人們生活水平的提高和生活節(jié)奏的加快,對時(shí)間的要求越來越高,精準(zhǔn)數(shù)字計(jì)時(shí)的消費(fèi)需求也是越來越多。二十一世紀(jì)的今天,最具代表性的計(jì)時(shí)產(chǎn)品就是電子萬年歷,它是近代世界鐘表業(yè)界的第三次革命。第一次是擺和擺輪游絲的創(chuàng)造,相對穩(wěn)定的機(jī)械振蕩頻率源使鐘表的走時(shí)差從分級縮小到秒級,代表性的產(chǎn)品就是帶有擺或擺輪游絲的機(jī)械鐘或表。第二次革命是石英晶體振蕩器的應(yīng)用,創(chuàng)造了走時(shí)精度更高的石英電子鐘表,使鐘表的走時(shí)和月差從分級縮小到秒級。第三次革命就是單片機(jī)數(shù)碼計(jì)時(shí)技術(shù)的應(yīng)用〔電子萬年歷〕,使計(jì)時(shí)產(chǎn)品的走時(shí)日差從分級縮小到1/600萬秒,從原有傳統(tǒng)指針計(jì)時(shí)的方式開展為人們?nèi)粘8鼮槭煜さ囊构鈹?shù)字顯示方式,直觀明了,并增加了全自動(dòng)日期、星期、溫度以及其他日常附屬信息的顯示功能,它更符合消費(fèi)者的生活需求!因此,電子萬年歷的出現(xiàn)帶來了鐘表計(jì)時(shí)業(yè)界跨躍性的進(jìn)步。1.2目前的研究現(xiàn)狀我國生產(chǎn)的電子萬年歷有很多種,總體上來說以研究多功能電子萬年歷為主,使萬年歷除了原有的顯示時(shí)間,日期等根本功能外,還具有鬧鈴,報(bào)警等功能。商家生產(chǎn)的電子萬年歷更從質(zhì)量,價(jià)格,實(shí)用上考慮,不斷的改良電子萬年歷的設(shè)計(jì),使其更加的具有市場。在國內(nèi),電子鐘因LCD數(shù)字顯示效用直接有效,所以大多運(yùn)用在城市的主要營業(yè)場所,以及車站、碼頭等公共場所。在對公共場所的電子鐘設(shè)定的時(shí)候,使用者還可根據(jù)周邊的氣候、溫度等對LCD屏進(jìn)行設(shè)置。同時(shí),因?yàn)長CD的顯示耗電量很省,所以能夠保持持續(xù)的工作效果。1.3研究目的及意義電子鐘亦稱數(shù)字顯示鐘,是一種用數(shù)字電路技術(shù)實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械時(shí)鐘相比,直觀性為其主要顯著特點(diǎn),且因非機(jī)械驅(qū)動(dòng),具有更長的使用壽命,相較石英鐘的石英機(jī)芯驅(qū)動(dòng),更具準(zhǔn)確性。電子鐘已成為人們?nèi)粘I钪斜夭豢缮俚谋匦杵?,廣泛用于個(gè)人家庭以及車站、碼頭、劇院、辦公室等公共場所,給人們的生活、學(xué)習(xí)、工作、娛樂帶來極大地方便。相對于其他時(shí)鐘類型,它的特點(diǎn)可歸結(jié)為“兩強(qiáng)一弱”:比機(jī)械鐘強(qiáng)在觀時(shí)顯著,比石英鐘強(qiáng)在走時(shí)準(zhǔn)確,但是它的弱點(diǎn)為顯示較為單調(diào)。鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地?cái)U(kuò)展了鐘表原先的報(bào)時(shí)功能。諸如定時(shí)自動(dòng)報(bào)警、按時(shí)自動(dòng)打鈴、時(shí)間程序自動(dòng)控制、定時(shí)播送、自動(dòng)起閉路燈、定時(shí)開關(guān)烘箱、通斷動(dòng)力設(shè)備甚至各種定時(shí)電氣的自動(dòng)啟用等,所有這些,都是以鐘表數(shù)字化為根底的。因此,研究數(shù)字鐘及擴(kuò)大其應(yīng)用,有著非常現(xiàn)實(shí)的意義。除了采用集成化的時(shí)鐘芯片外,還有采用MCU的方案,利用STC89系列單片微機(jī)制成萬年歷電路,采用軟件和硬件結(jié)合的方法,控制輸出,分別用來顯示年、月、日、時(shí)、分、秒,其最大特點(diǎn)是:硬件電路簡單,安裝方便易于實(shí)現(xiàn),軟件設(shè)計(jì)獨(dú)特,可靠。STC89C51是由深圳宏晶科技公司推出的一種小型單片機(jī)。其主要特點(diǎn)為采用Flash存貯器技術(shù),降低了制造本錢,其軟件、硬件與MCS-51完全兼容,可以很快被廣闊用戶接受。本文介紹了基于STC89C51單片機(jī)設(shè)計(jì)的電子時(shí)鐘。可以同時(shí)顯示年、月、日、星期、時(shí)、分、秒等信息,還具有時(shí)間紅外校準(zhǔn)等功能。2總體方案設(shè)計(jì)2.1方案的選擇2.1.1設(shè)計(jì)要求A.具有年、月、日、周、時(shí)、分、秒的顯示功能;B.具有年、月、日、周、時(shí)、分、秒的校準(zhǔn)功能;C.具有圖片顯示功能;D.具有紅外遙控功能。2.1.2方案的選擇本課題是基于單片機(jī)控制的電子時(shí)鐘設(shè)計(jì),MCS-51系列的單片機(jī)集成了8位CPU、4K字節(jié)ROM、128字節(jié)RAM、2個(gè)16位定時(shí)器/計(jì)數(shù)器和4個(gè)8位I/O口等根本功能部件,根本能滿足本課題的研究,所以主控芯片選擇STC89C51單片機(jī)。時(shí)鐘的顯示功能用128*64LCD來實(shí)現(xiàn),其顯示分辨率為128×64,內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示8×4行16×16點(diǎn)陣的漢字,也可完成圖形顯示。低電壓低功耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不管硬件電路結(jié)構(gòu)或顯示程序都要簡潔得多,且該模塊的價(jià)格也略低于相同點(diǎn)陣的圖形液晶模塊。為了更精確的顯示時(shí)間,需要一時(shí)鐘芯片來進(jìn)行計(jì)時(shí)。DS1302是由美國DALLAS公司推出的具有涓細(xì)電流充電能力的低功耗實(shí)時(shí)時(shí)鐘芯片。它可以對年、月、日、周、時(shí)、分、秒進(jìn)行計(jì)時(shí),且具有閏年補(bǔ)償?shù)榷喾N功能。對于紅外遙控功能,主要用來調(diào)整時(shí)間和切換顯示頁面。本課題中選用通用紅外遙控器和紅外接收頭。2.2總體方案組成框圖根據(jù)以上硬件的選擇,系統(tǒng)的硬件框圖2.1所示。時(shí)鐘芯片DS1302紅外遙控STC89C51主控芯片時(shí)鐘芯片DS1302紅外遙控STC89C51主控芯片12864LCD12864LCD復(fù)位電路晶振電路復(fù)位電路晶振電路圖2.1系統(tǒng)硬件框圖3系統(tǒng)硬件設(shè)計(jì)3.1主芯片模塊STC89C51單片的引腳功能圖如圖3.1所示,邏輯符號如圖3.2所示,它有40個(gè)引腳。圖3.1STC89C51引腳圖圖3.2STC89C51邏輯圖電源引腳VCC〔40〕:電源正端,外接+5V。VSS〔20〕:接地。時(shí)鐘電路引腳XTAL1(18)、XTAL2(19):XTAL1為片內(nèi)振蕩電路的輸入端,XTAL2為片內(nèi)振蕩電路的輸出端。8051的時(shí)鐘有兩種方式,一種是片內(nèi)振蕩方式,需在這兩個(gè)腳外接石英晶體和振蕩電容,振蕩電容一般取10p~30p;另一種是外部時(shí)鐘方式,即將XTAL1接地,外部時(shí)鐘信號從XTAL2腳輸入??刂埔_ALE/PROG(30):地址鎖存控制信號/編程脈沖輸入端。PSEN〔29〕:外部程序存儲器的選通信號。EA/VPP〔31〕:外部程序存儲器地址允許輸入端/編程電壓輸入端。RESET/VPT〔9〕:復(fù)位/備用電源輸入引腳。在該引腳上輸入24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即復(fù)位。輸入/輸出引腳P0.0~P0.7(39~32):8位雙向并行I/O口,P0口可作為通用雙向I/O口。在外接數(shù)據(jù)、程序存儲器時(shí),可作為低8位地址/數(shù)據(jù)總線復(fù)用引腳。P1.0~P1.7〔1~8〕:8位雙向并行I/O口。P2.0~P2.7〔21~28〕:8位雙向并行I/O口。P0口可作為通用雙向I/O口。在外接數(shù)據(jù)、程序存儲器時(shí),可作為高8位地址輸出引腳。P3.0~P3.7〔10~17〕:8位雙向并行I/O口。P3口除了作為通用I/O口使用外,每一個(gè)引腳都可以復(fù)用。3.1.1中斷系統(tǒng)8051單片機(jī)允許5個(gè)中斷源:〔1〕外部中斷源〔2個(gè)〕由INT0〔P3.2〕引腳和INT1〔P3.3〕引腳引入。這兩個(gè)中斷源的請求方式有兩種:低電平觸發(fā)或下降沿觸發(fā)?!?〕內(nèi)部中斷源〔2個(gè)〕T0:定時(shí)/計(jì)數(shù)器0中斷,由T0溢出引起。T1:定時(shí)/計(jì)數(shù)器1中斷,由T1溢出引起?!?〕TI/RI〔1個(gè)〕串行I/O口中斷,由一幀字符發(fā)送/接收完后引起。3.1.2常用存放器〔1〕定時(shí)器方式控制存放器TMODTMOD〔89H〕D7D6D5D4D3D2D1D0GATEC/TM1M0GATEC/TM1M0工作方式選擇位M1、M0定義如下:M1M0工作方式功能描述00方式0初值存放器TL的低5位與TH的8位構(gòu)成13位計(jì)數(shù)器01方式116位計(jì)數(shù)器10方式2自動(dòng)重裝初值的8位計(jì)數(shù)器11方式3僅用于T0,分為兩個(gè)8位計(jì)數(shù)器,T1停止工作GATE=0:軟件啟動(dòng)定時(shí)器,使TRx置“1”即可啟動(dòng)定時(shí)器;=1:軟件和硬件共同啟動(dòng)定時(shí)器,除了要使TRx置“1”外,外部中斷請求信號輸入端INTx還必須輸入高電平才能啟動(dòng)定時(shí)器。C/T=0:定時(shí)器方式工作;=1:計(jì)數(shù)器方式工作。〔2〕定時(shí)控制存放器TCONTCON(88H)D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0TF0/TF1:定時(shí)器溢出中斷申請標(biāo)志位〔由硬件自動(dòng)置位〕。TF0/TF1=0:定時(shí)器未溢出;=1:定時(shí)器溢出時(shí)硬件自動(dòng)置位,申請中斷。TR0/TR1:定時(shí)器啟動(dòng)/停止控制位。TR0/TR1=0:定時(shí)器停止;=1:定時(shí)器啟動(dòng)。IE0/IE1:外部中斷申請標(biāo)志位〔由硬件自動(dòng)置位,中斷響應(yīng)后轉(zhuǎn)向中斷效勞程序時(shí),由由硬件自動(dòng)清零〕IE0/IE1=0:沒有外部中斷申請;=1:有外部中斷申請。IT0/IT1:外部中斷請求的觸發(fā)方式控制位。IT0/IT1=0:在INT0/INT1端申請中斷的信號低電平有效;=1:在INT0/INT1端申請中斷的信號下降沿有效?!?〕中斷允許存放器IE。IE〔A8H〕D7D6D5D4D3D2D1D0EA-ET2ESET1EX1ET0EX0ES——串行口中斷允許位。=0:禁止中斷;=1允許中斷。ET1——定時(shí)/計(jì)數(shù)器T1的溢出中斷允許位。=0:禁止中斷;=1允許中斷EX1——外部中斷1中斷允許位。=0:禁止中斷;=1允許中斷ET0——定時(shí)/計(jì)數(shù)器T0的溢出中斷允許位。=0:禁止中斷;=1允許中斷EX0——外部中斷0中斷允許位。=0:禁止中斷;=1允許中斷EA——總的中斷允許控制位〔總開關(guān)〕。=0:禁止所有中斷;=1:允許中斷。3.2晶振和復(fù)位電路晶振電路如圖3.3所示,STC89C51單片機(jī)的內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,它的輸入端為XTAL1引腳,輸出端為XTAL2引腳,兩個(gè)跨接石英晶體及兩個(gè)電容就可以構(gòu)成穩(wěn)定的自激振蕩器。電容器通常取30pF左右。圖3.3晶振電路圖3.4復(fù)位電路復(fù)位電路往單片機(jī)的復(fù)位引腳上輸入24個(gè)時(shí)鐘周期以上的高電平,即執(zhí)行復(fù)位操作。按鍵復(fù)位是指系統(tǒng)在運(yùn)行時(shí),按下一個(gè)開關(guān),就能在RST引腳產(chǎn)生一段時(shí)間的高電平,使系統(tǒng)復(fù)位,常見的按鍵復(fù)位電路如圖3.4所示。對12MHz晶振頻率而言,電路中C取10pF,R取1KΩ。3.3DS1302時(shí)鐘芯片電路3.3.1DS1302引腳圖如圖3.5為DS1302的引腳圖,圖3.6為邏輯圖。圖3.5DS1302引腳圖圖3.6DS1302邏輯圖各引腳的功能為:
Vcc1:主電源;Vcc2:備用電源。當(dāng)Vcc2>Vcc1+0.2V時(shí),由Vcc2向DS1302供電,當(dāng)Vcc2<
Vcc1時(shí),由Vcc1向DS1302供電。SCLK:串行時(shí)鐘,輸入,控制數(shù)據(jù)的輸入與輸出;I/O:雙向數(shù)據(jù)線;X1、X2:晶振引腳;
CE:輸入信號,在讀、寫數(shù)據(jù)期間,必須為高。該引腳有兩個(gè)功能:第一,CE開始控制字訪問移位存放器的控制邏輯;其次,CE提供結(jié)束單字節(jié)或多字節(jié)數(shù)據(jù)傳輸?shù)姆椒ā?.3.2DS1302存放器DS1302有關(guān)日歷、時(shí)間的存放器共有12個(gè),其中有7個(gè)存放器〔讀時(shí)81H~8DH,寫時(shí)80H~8CH〕,存放的數(shù)據(jù)格式為BCD碼形式,如圖3.7所示。圖3.7DS1302日歷、時(shí)間存放器小時(shí)存放器〔85h、84h〕的位7用于定義DS1302是運(yùn)行于12小時(shí)模式還是24小時(shí)模式。當(dāng)為高時(shí),選擇12小時(shí)模式。在12小時(shí)模式時(shí),位5是,當(dāng)為1時(shí),表示PM。在24小時(shí)模式時(shí),位5是第二個(gè)10小時(shí)位。秒存放器〔81h、80h〕的位7定義為時(shí)鐘暫停標(biāo)志〔CH〕。當(dāng)該位置為1時(shí),時(shí)鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位置為0時(shí),時(shí)鐘開始運(yùn)行??刂拼娣牌鳌?Fh、8Eh〕的位7是寫保護(hù)位〔WP〕,其它7位均置為0。在任何的對時(shí)鐘和RAM的寫操作之前,WP位必須為0。當(dāng)WP位為1時(shí),寫保護(hù)位防止對任一存放器的寫操作。3.3.3DS1302外圍電路圖3.8DS1302外圍電路DS1302只有3個(gè)引腳與單片機(jī)相連,分別是RST〔5〕、SCLK〔7〕和I/O〔6〕,其2、3引腳接32768Hz晶振,如圖3.8。3.4LCD12864顯示模塊3.4.1LCD12864引腳功能管腳號管腳名稱管腳功能1VSS接地2VDD電源+5V3V0比照度調(diào)整4RSRS=H,DB0-DB7為數(shù)據(jù)RS=L,DB0-DB7為指令5R/WR/W=H,E=H,讀數(shù)據(jù)R/W=L,E=H→L,寫數(shù)據(jù)6E使能端7--14DB0—DB78位數(shù)據(jù)口15PSBPSB=H,并行方式PSB=L,串行方式16NC空腳17RST復(fù)位端,低電平有效18VoutLCD驅(qū)動(dòng)電壓輸出端19A背光源正端+520K背光源負(fù)端表3.1LCD12864引腳說明圖3.912864引腳圖圖3.9所示為帶中文字庫LCD12864引腳圖,表3.1為引腳說明。該液晶顯示模塊由128*64點(diǎn)陣組成,可顯示漢字及圖形,內(nèi)置8192個(gè)中文漢字〔16*16點(diǎn)陣〕、128個(gè)字符〔8*16〕點(diǎn)陣,8位并行及串行連接方式??刂埔_說明RS、R/W四種模式RSR/W功能說明LLMPU寫指令到指令暫存器〔IR〕LH讀出忙標(biāo)志〔BF〕及地址計(jì)數(shù)器〔AC〕狀態(tài)HLMPU寫入數(shù)據(jù)到數(shù)據(jù)暫存器〔DR〕HHMPU從數(shù)據(jù)暫存器〔DR〕中讀出數(shù)據(jù)E信號E狀態(tài)功能H→L配合/W進(jìn)行寫數(shù)據(jù)或指令H配合R進(jìn)行讀數(shù)據(jù)或指令L/L→H無動(dòng)作說明:BF標(biāo)志提供內(nèi)部工作情況BF=1表示模塊在進(jìn)行內(nèi)部操作,此時(shí)模塊不接受外部指令和數(shù)據(jù).BF=0時(shí),模塊為準(zhǔn)備狀態(tài),隨時(shí)可接受外部指令和數(shù)據(jù)。LCD12864指令說明〔1〕顯示開/關(guān)設(shè)置R/WR/SDB7DB6DB5DB4DB3DB2DB1DB0LLLLHHHHHH/L功能:設(shè)置屏幕顯示開/關(guān)。DB0=H,開顯示;DB0=L,關(guān)顯示?!?〕設(shè)置顯示起始行R/WR/SDB7DB6DB5DB4DB3DB2DB1DB0LLHH行地址〔0~63〕功能:執(zhí)行該命令后,所設(shè)置的行將顯示在屏幕的第一行。顯示起始行是由Z地址計(jì)數(shù)器控制的,該命令自動(dòng)將A0-A5位地址送入Z地址計(jì)數(shù)器,起始地址可以是0-63范圍內(nèi)任意一行。Z地址計(jì)數(shù)器具有循環(huán)計(jì)數(shù)功能,用于顯示行掃描同步,當(dāng)掃描完一行后自動(dòng)加一?!?〕設(shè)置列地址R/WR/SDB7DB6DB5DB4DB3DB2DB1DB0LLLH列地址〔0~63〕功能:
DDRAM
的列地址存儲在Y地址計(jì)數(shù)器中,讀寫數(shù)據(jù)對列地址有影響,在對DDRAM進(jìn)行讀寫操作后,Y地址自動(dòng)加一。〔4〕狀態(tài)檢測R/WR/SDB7DB6DB5DB4DB3DB2DB1DB0HLBFLON/OFFRSTLLLL功能:讀忙信號標(biāo)志位(BF)、復(fù)位標(biāo)志位(RST)以及顯示狀態(tài)位
(ON/OFF)。BF=H:內(nèi)部正在執(zhí)行操作;BF=L:空閑狀態(tài)。RST=H:正處于復(fù)位初始化狀態(tài);RST=L:正常狀態(tài)。ON/OFF=H:表示顯示關(guān)閉;ON/OFF=L:表示顯示開?!?〕寫顯示數(shù)據(jù)R/WR/SDB7DB6DB5DB4DB3DB2DB1DB0LHD7D6D5D4D3D2D1D0功能:寫數(shù)據(jù)到DDRAM,DDRAM是存儲圖形顯示數(shù)據(jù)的,寫指令執(zhí)行后Y地址計(jì)數(shù)器自動(dòng)加1。D7-D0位數(shù)據(jù)為1表示顯示,數(shù)據(jù)為0表示不顯示?!?〕讀顯示數(shù)據(jù)R/WR/SDB7DB6DB5DB4DB3DB2DB1DB0HHD7D6D5D4D3D2D1D0功能:從DDRAM讀數(shù)據(jù),讀指令執(zhí)行后Y地址計(jì)數(shù)器自動(dòng)加1。3.4.3LCD12864電路接線單片機(jī)P2口作為指令/數(shù)據(jù)接口,右DB0-DB7輸入,數(shù)據(jù)命令選擇端RS接單片機(jī)P1.2,讀寫控制信號端R/W接單片機(jī)P1.1,使能端E接單片機(jī)P1.0,串/并行方式選擇端PSB接P1.6,復(fù)位端RST接P1.7,16、18號引腳可以不接,如圖3.10所示。圖3.10LCD12864電路圖3.5紅外遙控模塊本課題采用紅外遙控功能對時(shí)鐘進(jìn)行校準(zhǔn),包括年、月、日、周、時(shí)、分秒的加減操作,還有切換顯示、復(fù)位的功能。紅外遙控裝置包括紅外發(fā)送〔即遙控器〕和紅外接收兩局部組成。發(fā)射機(jī)一般由指令按鍵、指令編碼系統(tǒng)、調(diào)制電路、驅(qū)動(dòng)電路、發(fā)射電路等幾局部組成。當(dāng)按下指令鍵時(shí),指令編碼電路產(chǎn)生所需的指令編碼信號,指令編碼信號對載波進(jìn)行調(diào)制,再由驅(qū)動(dòng)電路進(jìn)行功率放大后由發(fā)射電路向外發(fā)射經(jīng)調(diào)制定的指令編碼信號。接收電路一般由接收電路、放大電路、調(diào)制電路、指令譯碼電路、驅(qū)動(dòng)電路、執(zhí)行電路等幾局部組成。接收電路將發(fā)射器發(fā)出的已調(diào)制的編碼指令信號接收下來,并進(jìn)行放大后送解調(diào)電路,解調(diào)電路將已調(diào)制的指令編碼信號解調(diào)出來,即復(fù)原為編碼信號。指令譯碼器將編碼指令信號進(jìn)行譯碼,最后由驅(qū)動(dòng)電路來驅(qū)動(dòng)執(zhí)行電路實(shí)現(xiàn)各種指令的操作控制。其大致工作過程如圖3.11所示。圖3.11紅外工作原理紅外遙控器采用通用遙控器,接收器為紅外接收頭,如圖3.11所示。圖3.12為紅外接收頭電路,其信號輸出端接單片機(jī)引腳P3.2。圖3.11紅外遙控器和接收頭圖3.12紅外接收頭電路4系統(tǒng)軟件設(shè)計(jì)4.1主程序設(shè)計(jì)本課題程序編寫為C語言,編譯軟件為Keil5,程序分為4個(gè)模塊,分別是主函數(shù)main.c、LCD12864程序LCD12864.h、時(shí)鐘芯片DS1302程序DS1302.h和紅外遙控程序IRIN.h。程序流程圖如圖4.1所示。開始判斷按鍵進(jìn)入調(diào)時(shí)模式判斷按鍵12864顯示時(shí)間DS1302寫數(shù)據(jù)12864開始判斷按鍵進(jìn)入調(diào)時(shí)模式判斷按鍵12864顯示時(shí)間DS1302寫數(shù)據(jù)12864初始化DS1302初始化1286412864顯示圖片結(jié)束結(jié)束圖4.1程序流程圖4.2LCD12864驅(qū)動(dòng)程序圖4.212864寫操作時(shí)序根據(jù)以上寫時(shí)序,可以寫出寫指令函數(shù)和寫數(shù)據(jù)函數(shù)。〔1〕寫指令voidlcd_wcmd(ucharcmd)//寫指令函數(shù){while(lcd_busy());//判忙LCD_RS=0;//RS=LLCD_RW=0;//RW=LLCD_EN=0;//EN上升沿_nop_();_nop_();P2=cmd;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;}〔2〕寫顯示數(shù)據(jù)voidlcd_wdat(uchardat)//寫顯示數(shù)據(jù)函數(shù){while(lcd_busy());//判忙LCD_RS=1;//RS=HLCD_RW=0;//RW=LLCD_EN=0;//EN上升沿P2=dat;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;}〔3〕設(shè)定顯示位置voidlcd_pos(ucharX,ucharY){ucharpos;if(X==1){X=0x80;}//第一行首地址elseif(X==2){X=0x90;}//第二行首地址elseif(X==3){X=0x88;}//第三行首地址elseif(X==4){X=0x98;}//第四行首地址pos=X+Y;lcd_wcmd(pos);//顯示地址,行地址加列地址}〔4〕圖形顯示voidphotodisplay(uchar*bmp){uchari,j;lcd_wcmd(0x34);//寫數(shù)據(jù)時(shí),關(guān)閉圖形顯示for(i=0;i<32;i++){lcd_wcmd(0x80+i);//寫入垂直坐標(biāo)值lcd_wcmd(0x80);//先寫入水平坐標(biāo)值for(j=0;j<16;j++)//再寫入兩個(gè)8位元的數(shù)據(jù)lcd_wdat(*bmp++);delay1(1);}for(i=0;i<32;i++){lcd_wcmd(0x80+i);lcd_wcmd(0x88);for(j=0;j<16;j++)lcd_wdat(*bmp++); delay1(1);}lcd_wcmd(0x36);//寫完數(shù)據(jù),開圖形顯示}4.3DS1302驅(qū)動(dòng)程序DS1302讀寫時(shí)序如下圖,圖4.4為單字節(jié)讀時(shí)序,圖4.5為單字節(jié)寫時(shí)序。圖4.4DS1302單字節(jié)讀時(shí)序圖4.5DS1302單字節(jié)寫時(shí)序〔1〕DS1302寫一個(gè)字節(jié)voidWrite_Ds1302_Byte(unsignedchartemp){unsignedchari;for(i=0;i<8;i++)//循環(huán)8次寫入數(shù)據(jù){SCK=0;//SCK為上升沿IO=temp&0x01;//每次傳輸?shù)妥止?jié)temp>>=1;//右移一位SCK=1;}}〔2〕寫入DS1302voidWrite_Ds1302(unsignedcharaddress,unsignedchardat){RST=0;_nop_();SCK=0;_nop_();RST=1;_nop_();//啟動(dòng)Write_Ds1302_Byte(address);//發(fā)送地址Write_Ds1302_Byte(dat);//發(fā)送數(shù)據(jù)RST=0;//恢復(fù)}〔3〕讀出DS1302數(shù)據(jù)unsignedcharRead_Ds1302(unsignedcharaddress){unsignedchari,temp=0x00;RST=0;_nop_();_nop_();SCK=0;_nop_();_nop_();RST=1;_nop_();_nop_();Write_Ds1302_Byte(address);for(i=0;i<8;i++)//循環(huán)8次讀取數(shù)據(jù){if(IO)temp|=0x80;//每次傳輸?shù)妥止?jié)SCK=0;temp>>=1;//右移一位_nop_();_nop_();_nop_();SCK=1;}RST=0;return(temp);//返回}4.4紅外遙控程序紅外遙控結(jié)合單片機(jī)P3.2口外部中斷INT0來執(zhí)行命令,紅外遙控器共21個(gè)按鍵,其鍵值分別為45464744404307150916190D0C185E081C5A42524AvoidIR_IN(void)interrupt0//外部中斷0{unsignedcharj,k,N=0;EX0=0;IRdelay(15);if(IRIN==1){EX0=1;return;}//確認(rèn)IR信號出現(xiàn)while(!IRIN)//等IR變?yōu)楦唠娖剑^9ms的前導(dǎo)低電平信號。{IRdelay(1);}for(j=0;j<4;j++)//收集四組數(shù)據(jù){for(k=0;k<8;k++)//每組數(shù)據(jù)有8位{while(IRIN)//等IR變?yōu)榈碗娖?,跳過4.5ms的前導(dǎo)高電平信號。{IRdelay(1);}while(!IRIN)//等IR變?yōu)楦唠娖絳IRdelay(1);}while(IRIN)//計(jì)算IR高電平時(shí)長{IRdelay(1);N++;if(N>=50){EX0=1;return;}//0.14ms計(jì)數(shù)過長自動(dòng)離開。}//高電平計(jì)數(shù)完畢IRCOM[j]=IRCOM[j]>>1;//數(shù)據(jù)最高位補(bǔ)“0”if(N>=8){IRCOM[j]=IRCOM[j]|0x80;}//數(shù)據(jù)最高位補(bǔ)“1”N=0;}}5調(diào)試結(jié)果5.1正常顯示日期時(shí)間畫面5.2進(jìn)入調(diào)整時(shí)間日期畫面5.3圖片顯示畫面6總結(jié)本課題研究的主要內(nèi)容是以STC89C51單片機(jī)為核心、DS1302為計(jì)時(shí)芯片、LCD12864液晶為顯示局部的一個(gè)電子日歷,可顯示年、月、日、周、時(shí)、分、秒及圖形顯示,并采用紅外遙控技術(shù),來實(shí)現(xiàn)對日期和時(shí)間的調(diào)整。本次畢業(yè)設(shè)計(jì)的制作,從最初的方案設(shè)計(jì),材料選擇,板子焊接到最終的程序編寫
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度貨車運(yùn)輸承包合同服務(wù)擴(kuò)展研究2篇
- 二零二五年度市場營銷與廣告合作合同2篇
- 煤矸石山開采施工方案
- 2025賓館客房預(yù)訂系統(tǒng)開發(fā)與維護(hù)合同3篇
- 2025年度建筑勞務(wù)市場拓展與人力資源配置合同3篇
- 創(chuàng)新安全教育培訓(xùn)與實(shí)際應(yīng)用的橋梁
- 基于健康目標(biāo)的學(xué)校體育課實(shí)施策略研究
- 2025年牛津上海版選擇性必修1歷史下冊階段測試試卷含答案
- 2024年生物科技產(chǎn)品研發(fā)與市場銷售合同3篇
- 二零二五年度大數(shù)據(jù)中心抵押擔(dān)保協(xié)議2篇
- 17J008擋土墻(重力式、衡重式、懸臂式)圖示圖集
- 2025年濟(jì)南鐵路局招聘筆試參考題庫含答案解析
- 2024至2030年中國大顆粒尿素行業(yè)投資前景及策略咨詢研究報(bào)告
- 《長方體和正方體》復(fù)習(xí)(教案)
- 超聲技術(shù)報(bào)告范文
- 思想道德與法治(同濟(jì)大學(xué))知到智慧樹章節(jié)答案
- 小學(xué)語文閱讀理解24個(gè)萬能答題公式
- 湖南省懷化市2023-2024學(xué)年七年級上學(xué)期語文期末試卷(含答案)
- 《廊坊市綠色建筑專項(xiàng)規(guī)劃(2020-2025)》
- 2024-2030年中國濕巾行業(yè)發(fā)展趨勢及競爭策略分析報(bào)告
- 2023-2024學(xué)年全國小學(xué)二年級上語文人教版期末試卷(含答案解析)
評論
0/150
提交評論