版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于LCD1602液晶顯示屏的電子萬年歷設(shè)計(jì)基于LCD1602液晶顯示屏的電子萬年歷設(shè)計(jì)摘 要 現(xiàn)在是一個知識爆炸的新時代,新產(chǎn)品、新技術(shù)層出不窮,電子技術(shù)的發(fā)展更是日新月異??梢院敛豢鋸埖恼f,電子技術(shù)的應(yīng)用無處不在,電子技術(shù)正在不斷地改變我們的生活,改變著我們的世界。在這快速發(fā)展的年代,時間對人們來說是越來越寶貴,在快節(jié)奏的生活時,人們往往忘記了時間,一旦遇到重要的事情而忘記了時間,這將會帶來很大的損失。因此我們需要一個定時系統(tǒng)來提醒這些忙碌的人,而數(shù)字化的鐘表給人們帶來了極大的方便。由于單片機(jī)具有靈活性強(qiáng)、成本低、功耗低、保密性好等特點(diǎn),所以電子日歷時鐘一般都以單片機(jī)為核心,外加一些外圍設(shè)
2、備來實(shí)現(xiàn)。本設(shè)計(jì)是一種基于液晶顯示屏的電子萬年歷,該系統(tǒng)結(jié)合了LCD顯示技術(shù),斷電時間保護(hù)技術(shù)和語音錄放技術(shù),系統(tǒng)用點(diǎn)陣式液晶顯示時間和日期,具有人性化和美觀的頁面效果,除具備傳統(tǒng)的萬年歷所具有的時間顯示和調(diào)整功能之外,該系統(tǒng)還兼有語音報時,閏年補(bǔ)償?shù)裙δ?;以單片機(jī)的C51語言進(jìn)行軟件設(shè)計(jì),增加了程序的可讀性和可移植性,為了便于擴(kuò)展和更改,軟件的設(shè)計(jì)采用模塊化結(jié)構(gòu),使程序設(shè)計(jì)的邏輯關(guān)系更加簡潔明了。實(shí)際使用中該設(shè)計(jì)能準(zhǔn)確地顯示時間和日期,能準(zhǔn)確清晰地完成語音報時功能。關(guān)鍵詞: 單片機(jī),LCD,語音報時,萬年歷引言 萬年歷是采用數(shù)字電路實(shí)現(xiàn)對.時,分,秒.數(shù)字顯示的計(jì)時裝置,廣泛用于個人家庭,車
3、站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴(kuò)展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,但是所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究萬年歷及擴(kuò)大其應(yīng)用,有著非?,F(xiàn)實(shí)的意義。市場上有許多電子鐘的專用芯片如:LM8363、LM8365等,但它們功能單一,電路連接復(fù)雜,不便于調(diào)試制作!但是考慮到用單片機(jī)配合時鐘芯片,可制成功
4、能任意的電子鐘,而且可以做到硬件簡單、成本低廉。所以本系統(tǒng)采用了以廣泛使用的單片機(jī)AT89C51技術(shù)為核心,配合時鐘芯片DS1302。軟硬件結(jié)合,使硬件部分大為簡化,提高了系統(tǒng)穩(wěn)定性,并采用LED顯示電路、鍵盤電路,使人機(jī)交互簡便易行,此外結(jié)合音樂鬧鈴電路、看門狗和供電電路。本方案設(shè)計(jì)出的數(shù)字鐘可以顯示時間、設(shè)置鬧鈴功能之外。本設(shè)計(jì)中我重點(diǎn)研究實(shí)現(xiàn)了單片機(jī)+時鐘芯片這種模式的萬年歷,從原理上對單片機(jī)和時鐘芯片有了深一步的認(rèn)識,這些基本功能完成后,在軟件基礎(chǔ)上實(shí)現(xiàn)世界時,農(nóng)歷功能。本設(shè)計(jì)在很多場合都能用到,可以把此萬年歷裝在鏡框中或其它工藝品中,以便更加實(shí)用。第一章 概論 1.1系統(tǒng)總體框圖本設(shè)
5、計(jì)的核心部分為單片機(jī)控制器,系統(tǒng)的各項(xiàng)功能由其它各部分單元電路來完成,單元電路主要包括:時鐘電路部分、顯示部分、語音部分、人機(jī)交互控制接口部分等,單片機(jī)通過程序來控制其它各部分統(tǒng)一協(xié)調(diào)地來完成系統(tǒng)的各項(xiàng)功能,本設(shè)計(jì)硬件電路較簡單,但軟件部分較復(fù)雜,所有功能都要通過軟件來實(shí)現(xiàn),系統(tǒng)總體設(shè)計(jì)如圖1-1所示。SHAPE * MERGEFORMAT圖1-1 系統(tǒng)總體設(shè)計(jì)框圖1.2 主控制器單片機(jī)的選擇采用比較流行的AT89S52作為電路的控制核心,AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。使用Atmel 公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C
6、51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程(具有ISP功能),亦適于常規(guī)編程器。在單芯上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。采用AT89C55,它是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含20kbytes 的可反復(fù)擦寫的Flash只讀程序存儲器(ROM)和256*8bytes的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),與標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容,片內(nèi)置通用8 位中央處理器(CPU)和Flash
7、存儲單元,功能強(qiáng)大AT89C55單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場合。雖然AT89S52的ISP下載功能非常優(yōu)秀,但它只有8KROM,由于本設(shè)計(jì)的程序代碼比較多,所以選用AT89C55(具有20KROM)。1.3 時鐘電路的選擇采用時鐘芯片DS1302,DS1302是DALLAS公司推出的涓流充電時鐘芯片,內(nèi)含有一個實(shí)時時鐘/日歷和31字節(jié)靜態(tài)RAM,通過簡單的串行接口與單片機(jī)進(jìn)行通信。實(shí)時時鐘/日歷電路提供秒、分、時、日、日期、月、年的信息,每月的天數(shù)和閏年的天數(shù)可自動調(diào)整,時鐘操作可通過AM/PM指示決定采用24或12小時格式。DS1302與單片機(jī)之間能簡單地采用同步串行的方式進(jìn)行通信,僅
8、需用到三根口線:RES(復(fù)位),I/O(數(shù)據(jù)線),SCLK(串行時鐘)。時鐘/RAM的讀/寫數(shù)據(jù)以一個字節(jié)或多達(dá)31個字節(jié)的字符組方式通信。DS1302工作時功耗很低,保持?jǐn)?shù)據(jù)和時鐘信息時功率小于1mW1。DS1302是由DS1202改進(jìn)而來的,增加了以下的特性:雙電源管腳用于主電源和備份電源供應(yīng),Vcc1為可編程涓流充電電源,附加七個字節(jié)存儲器。它廣泛應(yīng)用于電話、傳真、便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領(lǐng)域。實(shí)時時鐘具有能計(jì)算2100年之前的秒、分、時、日、日期、星期、月、年的能力,還有閏年自動調(diào)整和補(bǔ)償?shù)哪芰Γ?18位RAM;串行I/O口方式使得管腳數(shù)量最少;寬范圍工作電壓:2.05.
9、5V;工作電流:2.0V 時,小于300nA;讀/寫時鐘或RAM數(shù)據(jù)時,有兩種傳送方式:單字節(jié)傳送和多字節(jié)傳送(字符組方式);8腳DIP 封裝或可選8腳SOIC;簡單3 線接口;與TTL 兼容(Vcc=5V);可選工業(yè)級溫度范圍:-40+85;與DS1202 兼容。1.4 語音報音電路的選擇直接使用語音芯片,語音芯片具有使用方便,外圍元件少,只需少量元件就可以組成一個功能齊全的固體錄放機(jī),重放時音質(zhì)好,沒有常見的背景噪音,提供零功率信息存儲,無需備用電源,掉電后錄音內(nèi)容可永久保留等優(yōu)點(diǎn)。ISD1420P語音芯片采用 CMOS 技術(shù),單片錄放時間20秒,音質(zhì)好,內(nèi)含震蕩器、話筒前置放大、自動增益
10、控制、防混淆濾波器、平滑濾波器、揚(yáng)聲器驅(qū)動及 EEPROM 陣列。最小的錄放系統(tǒng)僅需麥克風(fēng)、喇叭、兩個按鈕、電源及少數(shù)電阻電容。在錄放操作結(jié)束后,芯片自動進(jìn)入低功耗節(jié)電模式、功耗僅 0.5uA,芯片采用多電平直接模擬量存儲專利技術(shù),每個采樣直接存儲在片內(nèi)單個 EEPROM 單元中,因此能夠非常真實(shí)、自然地再現(xiàn)語音、音樂、音調(diào)等各種效果,避免了一般固體錄音因電路量化和壓縮造成的量化噪聲和“金屬聲”。采樣頻率從 5.3,6.4 到 8.0KHz,對音質(zhì)僅有輕微影響。片內(nèi)信息可保存 100 年(無需電源),EEPROM 單片可反復(fù)錄音十萬次,能直接驅(qū)動16以上的喇叭2。1.5 顯示電路和鍵盤的選擇顯
11、示采用1602液晶屏,它能顯示2行,每行顯示16個數(shù)字或字母(5*7字型),也可顯示一行,每行16個字(5*10字型),可顯示的內(nèi)容比較多(包括數(shù)字,字母和很多符號),采用并行數(shù)據(jù)傳送,這樣1602LCD共占用單片機(jī)11個口線,相對于數(shù)碼管,占用口線少,電路簡單,無需外圍驅(qū)動電路,占用PCB面積也較少;但對于編程來說,液晶顯示的編程比較復(fù)雜,而且亮度也比較差,只能在近距離看到時間和日期,能見度不如數(shù)碼管好。鍵盤部分比較簡單,只用到4個按鍵,采用獨(dú)立式非編碼鍵盤。第二章 系統(tǒng)硬件電路設(shè)計(jì) 2.1 系統(tǒng)整體硬件電路設(shè)計(jì)本設(shè)計(jì)采用時鐘芯片作為時鐘的基準(zhǔn),并且該芯片具有斷電保護(hù)時間功能(斷電后采用3.
12、5v電子供電),顯示部分采用LCD顯示,可以顯示年月日時分秒星期等等,該萬年歷具有隨時可調(diào)整時分秒年月日的功能,最明顯的功能是具有語音報時的功能,比已有的單調(diào)的鬧鐘聲音更具有親和力,具體的調(diào)整,錄音和功能設(shè)置采用4個按鍵和LCD顯示屏共同來實(shí)現(xiàn)。總體硬件設(shè)計(jì)框圖如圖2-1所示:SHAPE * MERGEFORMAT圖2-1 語音萬年歷系統(tǒng)原理框圖2.2 硬件單元電路設(shè)計(jì)單元電路主要由單片機(jī)最小系統(tǒng)、時鐘芯片電路、LCD顯示電路、功能鍵電路、語音電路等組成。2.2.1 單片機(jī)最小系統(tǒng)設(shè)計(jì)AT89C55單片機(jī)有40腳PDIP、42腳PDIP等,本系統(tǒng)采用40腳PDIP的封裝,其引腳如圖22所示,A
13、T89C55是AT89C5系列單片機(jī)中性能居中、很有代表性的產(chǎn)品,其主要特性如下:(1)兼容MCS51產(chǎn)品;(2)20K字節(jié)可擦寫1000次以上Flash ROM;(3)工作電壓為+4V+5.5V;(4)有256*8字節(jié)RAM;(5)32個可編程IO口;(6)3個16位定時/計(jì)數(shù)器;(7)8個中斷源;(8)一個全雙工UART串行通信口;(9)靜態(tài)工作頻率在033Mhz;(10)休眠和節(jié)電保持兩種省電模式;(11)中斷喚醒省電模式功能;(12)看門狗定時器;(13)雙數(shù)據(jù)指針(DPTR);(14)電源關(guān)閉標(biāo)志。它相對AT89C51、89C52增加了ROM空間,內(nèi)部看門狗定時器、雙數(shù)據(jù)指針,全新的
14、加密算法等功能,但價格基本不變,甚至更低。對51系列單片機(jī)來說,最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、晶振電路、復(fù)位電路。電路如圖2-3所示。圖2-2 AT89C55單片機(jī)引腳圖 圖2-3 AT89C55單片機(jī)最小系統(tǒng)圖2.2.2 時鐘電路設(shè)計(jì)一、 DS1302 的管腳排列及描述管腳描述:(管腳排列如圖2-4所示)圖2-4 DS1302管腳配置圖Vcc1:主電源;Vcc2:備份電源。當(dāng)Vcc2Vcc1+0.2V時,由Vcc2向DS1302供電,當(dāng)Vcc2 Vcc1時,由Vcc1向DS1302供電;SCLK:串行時鐘輸入;I/O:雙向數(shù)據(jù)線;RST:復(fù)位信號,在讀、寫數(shù)據(jù)期間,必須為高;X1,X2:晶振
15、輸入端二、DS1302 的內(nèi)部原理圖DS1302 的內(nèi)部原理圖如圖2-5所示,主要由電源控制、晶體振蕩、輸入移位寄存器、通訊與控制邏輯和RAM組成,晶體振蕩負(fù)責(zé)產(chǎn)生最小時鐘單位,輸入移位寄存器負(fù)責(zé)數(shù)據(jù)的輸入與輸出,RAM用來存儲數(shù)據(jù)。SHAPE * MERGEFORMAT圖2-5 DS1302 的內(nèi)部原理圖2.2.3 語音電路設(shè)計(jì)一、ISD1420P 的內(nèi)部結(jié)構(gòu)及管腳排列ISD1420P內(nèi)部結(jié)構(gòu)圖如圖2-7所示,主要由時鐘發(fā)生器(Internal Clock)、定時器(Timing)、 取樣信號發(fā)生器(Sarnpling Clock)、話筒前置放大、自動增益控制(AGC)、防混淆濾波器、平滑濾
16、波器、電源調(diào)節(jié)器(Power Conbltlonlng)、地址緩沖器(Address Buffers)、揚(yáng)聲器驅(qū)動(Amp)及EEPROM 陣列幾部分組成.圖2-7 ISD1420P 內(nèi)部結(jié)框圖管腳排列如圖2-8所示;A0A7:地址輸入端;VCCA,VSSA:分別為模擬電路正,負(fù)電源端;VCCD,VSSD:分別為數(shù)字電路正,負(fù)電源端;SP+,SP-:分別為喇叭正,負(fù)端,能驅(qū)動 16以上的喇叭;XCLK:外部時鐘;ANA IN,ANA OUT:分別為模擬輸入,模擬輸出;MIC:駐極體話筒輸入;MIC REF:駐極體話筒參考輸入;AGC:自動增益控制;/REC:錄音觸發(fā)(低電平有效);/PLAYE
17、:邊沿觸發(fā)放音,此端出現(xiàn)下降沿時,芯片開始放音; 圖2-8 ISD1420P 引腳圖11/PLAYL:電平觸發(fā)放音,此端出現(xiàn)下降沿時,芯片開始放音;/RECLED:錄音指示,處于錄音狀態(tài)時,此端為低,可驅(qū)動 LED 4。圖2-8 ISD1420P 引腳圖二,ISD1420P與單片機(jī)的連接ISD1420P的電路圖如圖 2-9所示,圖中LED用做錄音和放音的指示燈;R8、R10和C6起到上拉的作用;通過R14和C11的時間常數(shù)來決定自動增益控制的釋放時間,470K和4.7uF 的標(biāo)稱值在絕對大多數(shù)場合下可獲得滿意的效果;C7為電源和地之間的去耦電容;C9和C10為話筒的耦合電容.圖2-9 ISD1
18、420P電路圖2.2.4顯示電路設(shè)計(jì)一、LCD1602 內(nèi)部結(jié)構(gòu)及管腳排列LCD1602 內(nèi)部結(jié)構(gòu)如圖2-10所示圖2-10 LCD1602 內(nèi)部結(jié)構(gòu) 忙碌標(biāo)志:本標(biāo)志(BF)用以表示當(dāng)時LCD的狀態(tài),若BF=1,則表示處于忙碌狀態(tài),無法接受外部指令或數(shù)據(jù);若BF=0,則可接受外部指令或數(shù)據(jù)。 顯示數(shù)據(jù)存儲器:本存儲器(DDRAM)存儲所要顯示的數(shù)據(jù)。實(shí)際上本存儲器里存放的是要顯示數(shù)據(jù)的ASCII碼,再以ASCII碼為地址,到CGRAM里找到該字型的顯示編碼。此外還包括字型產(chǎn)生器,光標(biāo)閃爍控制電路,偏壓電路,時序電路等等6。LCD1602管腳排列及功能說明如表 2-1所示。表 2-1 LCD1
19、602管腳排列及功能說明二、LCD1602電路圖LCD1602電路圖如圖2-11所示,其中J2為8*10k歐姆的排阻作為P0口的上拉電阻,J14為1602液晶顯示器件,左邊的SIP16封裝接口與液晶對應(yīng),電位器R7是用來調(diào)節(jié)液晶背光的對比度的,液晶的4、5、6腳與單片機(jī)相連作為控制信號,714腳與單片機(jī)P0口相連作為數(shù)據(jù)信號傳送。圖2-11 LCD1602電路圖第三章 系統(tǒng)軟件設(shè)計(jì) 3.1軟件整體設(shè)計(jì)系統(tǒng)軟件主要包括以下幾個模塊:LCD顯示模塊,DS1302時鐘芯片模塊,ISD1420P語音芯片模塊,按鍵處理模塊等,通過這幾個模塊的有機(jī)結(jié)合和互相調(diào)用來完系統(tǒng)任務(wù),軟件總體框架結(jié)構(gòu)如圖 3-1所
20、示,主程序流程圖如圖 3-2所示。SHAPE * MERGEFORMAT圖3-1軟件總體框架結(jié)構(gòu)圖圖3-2 主程序流程圖及中斷服務(wù)程序流程3.2 軟件子模塊設(shè)計(jì) 3.2.1時鐘芯片DS1302軟件設(shè)計(jì)一、DS1302編程原理1DS1302內(nèi)部寄存器組織DS1302有關(guān)日歷、時間的寄存器共有12個,其中有7個寄存器(讀時81h8Dh,寫時80h8Ch),存放的數(shù)據(jù)格式為BCD碼形式,如表3-1所示。表 3-1 DS1302有關(guān)日歷、時間的寄存器 。小時寄存器(85h、84h)的位7用于定義DS1302是運(yùn)行于12小時模式還是24小時模式。當(dāng)為高時,選擇12小時模式。在12小時模式時,位5是,當(dāng)為
21、1時,表示PM。在24小時模式時,位5是第二個10小時位。秒寄存器(81h、80h)的位7定義為時鐘暫停標(biāo)志(CH)。當(dāng)該位置為1時,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位置為0時,時鐘開始運(yùn)行??刂萍拇嫫鳎?Fh、8Eh)的位7是寫保護(hù)位(WP),其它7位均置為0。在任何的對時鐘和RAM的寫操作之前,WP位必須為0。當(dāng)WP位為1時,寫保護(hù)位防止對任一寄存器的寫操作。 DS1302中附加31字節(jié)靜態(tài)RAM的地址如表4-2所示。表3-2 DS1302數(shù)據(jù)RAM地址DS1302的工作模式寄存器所謂突發(fā)模式是指一次傳送多個字節(jié)的時鐘信號和RAM數(shù)據(jù)。突發(fā)模式寄存器如表3-3所示。表3-3
22、 突發(fā)模式寄存器此外,DS1302還有充電寄存器等。2讀寫時序說明DS1302是SPI總線驅(qū)動方式。它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù)。要想與DS1302通信,首先要了解DS1302的控制字。DS1302的控制字如圖 3-3所示。圖 3-3 控制字(即地址及命令字節(jié))控制字的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中;位6:如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1(A4A0):指示操作單元的地址;位0(最低有效位):如為0,表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作??刂谱挚偸菑淖畹臀婚_始輸出。在控制字指令輸入后的下一
23、個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從最低位(0位)開始。同樣,在緊跟8位的控制字指令后的下一個SCLK脈沖的下降沿,讀出DS1302的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。數(shù)據(jù)讀寫時序如圖 3-4所示,數(shù)據(jù)可分為單字節(jié)傳送和多字節(jié)傳送。圖 3-4 數(shù)據(jù)讀寫時序二、DS1302軟件設(shè)計(jì)模塊圖DS1302軟件設(shè)計(jì)模塊圖如圖3-5所示,具體可以包括三個模塊:寫入數(shù)據(jù)模塊、讀出數(shù)據(jù)模塊、初始化時間模塊,每個模塊又可以包含幾個子函數(shù).SHAPE * MERGEFORMAT圖 3-5 DS1302程序流程圖3.2.2 LCD1602顯示軟件設(shè)計(jì)及顯示說明LCD1602液晶顯示屏是以
24、若干個5* 8或5* 11點(diǎn)陣塊組成的顯示字符群。每個點(diǎn)陣塊為一個字符位,字符間距和行距都為一個點(diǎn)的寬度,主控制驅(qū)動電路為HD44780 (HITACHI ),具有字符發(fā)生器ROM可顯示192種字符160個5 *7點(diǎn)陣字符和32個5* 10點(diǎn)陣字符,具有64個字節(jié)的自定義字符RAM,可自定義8個5* 8點(diǎn)陣字符或4個5* 11點(diǎn)陣字符,具有80個字節(jié)的RAM,標(biāo)準(zhǔn)的接口特性適配M6800系列MPU的操作時序,低功耗長壽命高可靠性。一、LCD1602編程原理1控制器接口信號說明控制器接口信號說明如表3-4所示2LCD指令說明LCD指令說明如表3-5所示。表3-5 LCD指令表指令指令 碼功能RS
25、R/WD7D6D5D4D3D2D1D0清除顯示0000000001將DDRAM填滿20H,并且設(shè)定DDRAM的地址計(jì)數(shù)器(AC)到00H地址歸位000000001X設(shè)定DDRAM的地址計(jì)數(shù)器(AC)到00H,并且將游標(biāo)移到開頭原點(diǎn)位置;這個指令不改變DDRAM 的內(nèi)容顯示狀態(tài)開/關(guān)0000001DCBD=1: 整體顯示 ON,C=1: 游標(biāo)ON,B=1:游標(biāo)位置反白允許進(jìn)入點(diǎn)設(shè)定00000001I/DS指定在數(shù)據(jù)的讀取與寫入時,設(shè)定游標(biāo)的移動方向及指定顯示的移位游標(biāo)或顯示移位控制000001S/CR/LXX設(shè)定游標(biāo)的移動與顯示的移位控制位;這個指令不改變DDRAM 的內(nèi)容功能, 設(shè)定00001
26、DLXREXX,DL=0/1:4/8位數(shù)據(jù)RE=1: 擴(kuò)充指令操作,RE=0: 基本指令操作, ;設(shè)定CGRAM地址0001AC5AC4AC3AC2AC1AC0設(shè)定CGRAM 地址設(shè)定DDRAM地址0010AC5AC4AC3AC2AC1AC0設(shè)定DDRAM 地址(顯示位址)第一行:80H87H第二行:90H97H讀取忙標(biāo)志和地址01BFAC6AC5AC4AC3AC2AC1AC0讀取忙標(biāo)志(BF)可以確認(rèn)內(nèi)部動作是否完成,同時可以讀出地址計(jì)數(shù)器(AC)的值寫數(shù)據(jù)到RAM10數(shù)據(jù)將數(shù)據(jù)D7D0寫入到內(nèi)部的RAM(DDRAM/CGRAM/IRAM/GRAM)讀出RAM的值11數(shù)據(jù)從內(nèi)部RAM讀取數(shù)據(jù)
27、D7D0(DDRAM/CGRAM/IRAM/GRAM)3LCD字型編碼表LCD字型編碼表如圖 3-8所示。圖 3-8 LCD字型編碼表二、LCD1602顯示軟件設(shè)計(jì)流程圖LCD1602顯示程序流程圖如圖 3-9所示,除了該流程圖還有顯示一個字符到指定位置函數(shù),顯示字符串到指定位置函數(shù),寫指令函數(shù),寫數(shù)據(jù)函數(shù),判忙函數(shù)(內(nèi)部等待函數(shù)),初試化函數(shù)等等。圖 3-9 LCD1602顯示程序流三 LCD1602顯示說明根據(jù)功能的不同,顯示界面也不同,主要有以下幾種顯示界面:開機(jī)歡迎界面,正常顯示和調(diào)整設(shè)置界面,鬧鐘設(shè)置界面,分段錄音界面。1開機(jī)歡迎界面開機(jī)歡迎界面如圖 3-10所示。123456789
28、10111213141516AWELCOMEBWELCOME圖 3-10 開機(jī)歡迎界面該界面是起了美化效果,使顯示更具有親和力,更具有人性化的設(shè)計(jì)。2正常顯示和調(diào)整設(shè)置界面正常顯示和調(diào)整設(shè)置界面如圖 3-11所示。12345678910111213141516ATime:00:00:00w?BDate:00-00-00TT圖 3-11 正常顯示和調(diào)整設(shè)置界面顯示說明:A6,A7顯示小時,A9,A10顯示分鐘,A12,A13顯示秒;A15的W是week的首字母表示星期的意思,16的?是顯示當(dāng)天的星期,如該天為星期一則顯示為,以此類推;B6,B7顯示小時,B9,B10顯示分鐘,B12,B13顯示秒
29、;B15為T(TRUE)則代表鬧鐘報音開,為F(false)則為關(guān),B16為T(TRUE)則代表整點(diǎn)報音開,為F(false)則為關(guān);在該界面中以上提到的幾位都可以通過按鍵來調(diào)整和設(shè)置。3鬧鐘設(shè)置界面鬧鐘設(shè)置界面如圖 3-12所示。12345678910111213141516ASETCLOCKBTime:00:00:00O圖 3-12 鬧鐘設(shè)置界面界面顯示說明:B6,B7為鬧鐘小時設(shè)置位,B9,B10為鬧鐘分鐘設(shè)置位,B12,B13為鬧鐘秒設(shè)置位;B15為周期性鬧鐘設(shè)置位,為O(once)則為臨時性鬧種,為R(repeat)則為周期性鬧鐘;在該界面中以上提到的幾位都可以通過按鍵來調(diào)整和設(shè)置。
30、4分段錄音界面分段錄音界面如圖 3-13、圖 3-14、圖 3-15所示。圖 3-13為進(jìn)入錄音功能界面,圖 3-14為錄音開始界面,圖 3-15為錄音結(jié)束界面。12345678910111213141516AWELCOMEBRECORDER圖 3-13 進(jìn)入錄音功能界面12345678910111213141516ARecording:11SB圖 3-14 錄音開始界面12345678910111213141516ARecording:11SBOVER圖 3-15 錄音結(jié)束界面錄音界面顯示說明:正在錄音時顯示A行,其中A11顯示為錄音的字段序號,A15為該段的錄音時間長度,錄音時不能超過該時
31、間長度,超過部分錄音無效;一個字段錄音完成時顯示圖 3-15界面。結(jié)論本論文主要研究了液晶顯示屏的電子萬年歷的設(shè)計(jì),本系統(tǒng)采用了以廣泛使用的單片機(jī)AT89C51技術(shù)為核心,配合時鐘芯片DS1302。以LCD1602為核心的液晶顯示電路可以直接的顯示結(jié)果。本設(shè)計(jì)的主要優(yōu)點(diǎn)有分辨率高、設(shè)計(jì)簡單,精度高,成本低等。本次的設(shè)計(jì)使我從中學(xué)到了一些很重要的東西,那就是如何從理論到實(shí)踐的轉(zhuǎn)化,怎樣將我所學(xué)到的知識運(yùn)用到我以后的工作中去。在大學(xué)的課堂的學(xué)習(xí)只是在給我們灌輸專業(yè)知識,而我們應(yīng)把所學(xué)的用到我們現(xiàn)實(shí)的生活中去,此次的電子時鐘設(shè)計(jì)給我奠定了一個實(shí)踐基礎(chǔ),我會在以后的學(xué)習(xí)、生活中磨練自己,使自己適應(yīng)于以
32、后的競爭。當(dāng)然由于時間和條件的關(guān)系,不可避免的,本系統(tǒng)還存在一些不足之處也有缺點(diǎn),系統(tǒng)的軟件部分還需要進(jìn)行相應(yīng)的調(diào)整,使整個系統(tǒng)可靠性更高,使用更方便,更趨于完美。謝 辭在本論文的寫作過程中,我非常感謝我的指導(dǎo)老師左現(xiàn)剛老師,無論是在課題分析、材料學(xué)習(xí)階段還是在論文設(shè)計(jì)各個方面,左老師給予的指導(dǎo)和幫助。對論文的順利完成其了很大的作用。每次的專業(yè)講解使我欽佩,嚴(yán)謹(jǐn)認(rèn)真精神更使我感動,從他那里我學(xué)習(xí)到的不僅有專業(yè)知識,還有踏實(shí)勤懇、認(rèn)真求實(shí)的優(yōu)良品質(zhì)和工作作風(fēng)。在此論文完成之際,首先向左老師表示衷心的感謝和深深的敬意。此外,對所有在這四年里的學(xué)習(xí)和生活中,曾經(jīng)教導(dǎo)過我?guī)椭^我以及默默的地給予我無數(shù)
33、的關(guān)心和幫助的老師以及和我一起生活一起學(xué)習(xí)一起走過四年人生路的同學(xué)們,在此向大家表示最誠摯的謝意和最美好的祝福。參考源程序#include #define uchar unsigned char sbit rs=P12; sbit rw=P11; sbit en=P10; uchar code table= 2012-03-15 blue; uchar code table1= 10:34:56 sky; uchar code table2=31,28,31,30,31,30,31,30,30,31,30,31;/平年 uchar code table3=31,29,31,30,31,30,3
34、1,30,30,31,30,31;/閏年 uchar count=0; uchar hour=10;uchar min=34;uchar sec=56; uchar t;uchar year1=20;uchar year2=12;uchar month=03;uchar day=15;void delay(uchar m) /延時子程序 uchar i,j; for(i=m;i0;i-) for(j=5;j0;j-) ; void wr_com(uchar com) /寫命令子程序 rs=0; rw=0; en=0; P2=com; delay(1); en=1; delay(5); en=0
35、; void wr_dat(uchar dat)/寫數(shù)據(jù)子程序 rs=1; rw=0;en=0; P2=dat; delay(1);en=1;delay(5);en=0; void init() en=0; wr_com(0x38);/設(shè)置16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)接口 wr_com(0x0c); /開顯示,顯示光標(biāo),光標(biāo)閃爍 wr_com(0x06); /當(dāng)讀或?qū)懸粋€字符后地址指針自動加1,整屏不移動 /數(shù)據(jù)指針清零,所有顯示清零 wr_com(0x80+0x00);/設(shè)置數(shù)據(jù)指針地址 for(t=0;t16;t+) /寫入第一行數(shù)據(jù) wr_dat(tablet); delay(1)
36、; wr_com(0x80+0x40); for(t=0;t=59)/到一分了嗎? sec=0; min+; if(min=59) /到一小時了嗎 min=0; hour+; if(hour=23)/到一天了嗎 hour=0; day+; hour_sfm(2,hour); hour_sfm(5,min); hour_sfm(8,sec); if(year1*100+year2)%4=0&(year1*100+year2)%100!=0) /是閏年嗎 if(day=table3month-1)/天數(shù)到了嗎 day=1;month+; if(month=13)/月數(shù)到了嗎month=1;year
37、2+; if(year2=99) /年的低位滿了嗎 year2=0; year1+;month_sfm(1,year1);/進(jìn)入年高位刷新函數(shù) month_sfm(3,year2); /進(jìn)入年低位刷新函數(shù) month_sfm(6,month); /進(jìn)入月刷新函數(shù)month_sfm(9,day); /進(jìn)入年日刷新函數(shù) else if(day=table2month-1) /天數(shù)到了嗎day=1;month+;if(month=13) /月數(shù)到了嗎 month=1;year2+; if(year2=99) /年的低位滿了嗎 year2=0; year1+;month_sfm(1,year1); /進(jìn)入年高位刷新函數(shù) month_sfm(3,year2); /進(jìn)入年低位刷新函數(shù) month_sfm(6,month); /進(jìn)入月刷新函數(shù) month_sfm(9,day); /進(jìn)入日刷新函數(shù) void
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026江蘇連云港東海水晶產(chǎn)業(yè)發(fā)展集團(tuán)有限公司招聘專業(yè)技術(shù)人員2人考試備考試題及答案解析
- 2026湖南省煙草專賣局系統(tǒng)考試聘用人員272人考試備考試題及答案解析
- 豐城市衛(wèi)健系統(tǒng)公開招聘編外人員【18人】考試備考試題及答案解析
- 2026河南鄭州市黃河科技學(xué)院附屬中學(xué)招聘考試參考題庫及答案解析
- 2026年貴州城市職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性考試備考試題帶答案解析
- 2026年南京市雨花臺區(qū)教育局所屬學(xué)校公開招聘教師68人考試備考題庫及答案解析
- 2026江蘇省數(shù)據(jù)集團(tuán)中層管理崗位招聘1人筆試備考題庫及答案解析
- 2026廣西崇左市人民醫(yī)院招聘(第二批次)考試備考題庫及答案解析
- 2026湖北武漢市華中農(nóng)業(yè)大學(xué)園藝林學(xué)學(xué)院招聘葡萄栽培與品質(zhì)調(diào)控方向?qū)H谓處熆荚噮⒖碱}庫及答案解析
- 2026云南曲靖市宣威市發(fā)展和改革局招聘編制外工作人員5人考試備考試題及答案解析
- 2025年東航管理測試題庫及答案
- 設(shè)備變更方案(3篇)
- LNG船舶進(jìn)出港移動安全區(qū)的構(gòu)建與優(yōu)化研究
- DB45∕T 2364-2021 公路路基監(jiān)測技術(shù)規(guī)范
- 供貨供貨應(yīng)急預(yù)案
- 16.迷你中線導(dǎo)管帶教計(jì)劃
- 花溪區(qū)高坡苗族鄉(xiāng)國土空間總體規(guī)劃 (2021-2035)
- 菏澤風(fēng)電項(xiàng)目可行性研究報告
- T/CCMA 0114-2021履帶式升降工作平臺
- DB32T 5124.1-2025 臨床護(hù)理技術(shù)規(guī)范 第1部分:成人危重癥患者目標(biāo)溫度管理
- 專題13 三角函數(shù)中的最值模型之胡不歸模型(原卷版)
評論
0/150
提交評論