基于51單片機(jī)的萬(wàn)年歷設(shè)計(jì)報(bào)告_第1頁(yè)
基于51單片機(jī)的萬(wàn)年歷設(shè)計(jì)報(bào)告_第2頁(yè)
基于51單片機(jī)的萬(wàn)年歷設(shè)計(jì)報(bào)告_第3頁(yè)
基于51單片機(jī)的萬(wàn)年歷設(shè)計(jì)報(bào)告_第4頁(yè)
基于51單片機(jī)的萬(wàn)年歷設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩16頁(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、基于單片機(jī)的萬(wàn)年歷設(shè)計(jì)目錄摘要3一 設(shè)計(jì)要求與方案論證 .411 設(shè)計(jì)要求 .41.2系統(tǒng)基本方案選擇和論證4二.系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn) .52.1 電路設(shè)計(jì)框圖62.2 系統(tǒng)硬件概述.62.3 主要單元電路的設(shè)計(jì).6三 程序流程圖.15四 總原理圖 .18五 硬件調(diào)試結(jié)果和調(diào)試步驟.18六 課程設(shè)計(jì)總結(jié)和體會(huì).21七 參考文獻(xiàn)22 組員分工.22摘要隨著科技的快速發(fā)展,時(shí)間的流逝,至從觀太陽(yáng)、擺鐘到現(xiàn)在電子鐘,人類不斷研究,不斷創(chuàng)新紀(jì)錄,電子萬(wàn)年歷是一種非常廣泛日常計(jì)時(shí)工具,對(duì)現(xiàn)代社會(huì)越來(lái)越流行。本設(shè)計(jì)用STC89C52單片機(jī)控制,以DS1302時(shí)鐘芯片計(jì)時(shí)、DS18B20采集溫度、1602液

2、晶屏顯示。系統(tǒng)主要由溫度傳感器電路,單片機(jī)控制電路,顯示電路以及電源測(cè)試、調(diào)時(shí)按鍵電路等組成。系統(tǒng)程序采用C語(yǔ)言編寫(xiě),經(jīng)Keil軟件進(jìn)行調(diào)試,可以顯示世界歷年、月、日、農(nóng)歷月、日、星期、時(shí)、分、秒、溫度和閏年補(bǔ)償并具有校準(zhǔn)功能和與即時(shí)時(shí)間同步的功能。此萬(wàn)年歷實(shí)現(xiàn)后具有讀取方便、顯示直觀、功能多樣、電路簡(jiǎn)潔等諸多優(yōu)點(diǎn),符合電子儀器儀表的發(fā)展趨勢(shì),具有廣闊的市場(chǎng)前景。關(guān)鍵詞:萬(wàn)年歷 STC89C52單片機(jī) DS1302 DS18B20 1602 一、設(shè)計(jì)要求與方案論證1.1設(shè)計(jì)要求:()基本要求具有年、月、日、星期、時(shí)、分、秒等功能;萬(wàn)年歷具有閏月識(shí)別顯示功能;具備年、月、日、星期、時(shí)、分、秒校準(zhǔn)

3、功能;( 2 ) 創(chuàng)新要求萬(wàn)年歷具有農(nóng)歷顯示功能;具有測(cè)量室內(nèi)溫度功能;1.2 系統(tǒng)基本方案選擇和論證1.2.1單片機(jī)芯片的選擇方案和論證:方案一:采用AT89S51芯片作為硬件核心,內(nèi)部具有4KB ROM 存儲(chǔ)空間,能于3V的超低壓工作,而且與MCS-51系列單片機(jī)完全兼容,但是運(yùn)用于電路設(shè)計(jì)中時(shí)由于不具備ISP在線編程技術(shù),所以在對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),對(duì)芯片的多次拔插會(huì)對(duì)芯片造成一定的損壞。方案二:采用STC89C52芯片,STC89C52是一種低功耗、高性能的8位CMOS微控制器,具有8K的可編程Flash存儲(chǔ)器。同樣具有AT89S51的功

4、能,且具有在線編程可擦除技術(shù),當(dāng)對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),不需要對(duì)芯片多次拔插,所以不會(huì)對(duì)芯片造成損壞,因此選擇采用STC89C52作為主控制系統(tǒng)核心。1.2.2 顯示模塊選擇方案和論證:采用1602液晶顯示屏,該液晶顯示屏的顯示功能強(qiáng)大,內(nèi)置192種字符,可顯示大量符號(hào)、數(shù)字,清晰可見(jiàn),而且功率消耗小壽命長(zhǎng)抗干擾能力強(qiáng)。所以在此設(shè)計(jì)中采用1602液晶顯示屏。1.2.3時(shí)鐘芯片的選擇方案和論證: 采用DS1302時(shí)鐘芯片實(shí)現(xiàn)時(shí)鐘,DS1302芯片是一種高性能的時(shí)鐘芯片,可自動(dòng)對(duì)秒、分、時(shí)、日、周、月、年以及閏年補(bǔ)償?shù)哪赀M(jìn)行計(jì)數(shù),而且精度高,位的RAM

5、做為數(shù)據(jù)暫存區(qū),工作電壓2.5V5.5V范圍內(nèi),2.5V時(shí)耗電小于300nA.所以采用此方案1.2.4溫度傳感器的選擇方案與論證方案一:使用熱敏電阻作為傳感器,用熱敏電阻與一個(gè)相應(yīng)阻值電阻相串聯(lián)分壓,利用熱敏電阻阻值隨溫度變化而變化的特性,采集這兩個(gè)電阻變化的分壓值,并進(jìn)行A/D轉(zhuǎn)換。此設(shè)計(jì)方案需用A/D轉(zhuǎn)換電路,增加硬件成本而且熱敏電阻的感溫特性曲線并不是嚴(yán)格線性的,會(huì)產(chǎn)生較大的測(cè)量誤差。方案二:采用數(shù)字式溫度傳感器DS18B20,此類傳感器為數(shù)字式傳感器而且僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,易于與單片機(jī)連接,可以去除A/D模塊,降低硬件成本,簡(jiǎn)化系統(tǒng)電路。另外,數(shù)字式溫度傳感器還具有測(cè)量精度高

6、、測(cè)量范圍廣等優(yōu)點(diǎn)。因此本設(shè)計(jì)選用DS18B20溫度傳感器。1.3 電路設(shè)計(jì)最終方案決定綜上各方案所述,對(duì)此次作品的方案選定: 采用STC89C52作為主控制系統(tǒng); DS1302提供時(shí)鐘;數(shù)字式溫度傳感器DS18B20;LED1602液晶顯示屏作為顯示。二.系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)2.1 電路設(shè)計(jì)框圖1 系統(tǒng)硬件概述本電路是以STC89C52單片機(jī)為控制核心,該芯片具有在線編程功能,功耗低,能在3.3V的超低壓下工作;時(shí)鐘芯片采用DS1302,它是一款高性能、低功耗、自帶RAM的實(shí)時(shí)時(shí)鐘芯片,具有使用壽命長(zhǎng),精度高和功耗低等特點(diǎn),同時(shí)具有掉電自動(dòng)保存功能,可以對(duì)年、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí)

7、,具有閏年補(bǔ)償功能,其工作電壓為2.5V5.5V;采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或RAM數(shù)據(jù)。DS1302內(nèi)部有一個(gè)31*8的用于臨時(shí)性存放數(shù)據(jù)的RAM寄存器??僧a(chǎn)生年、月、日、周日、時(shí)、分、秒,具有使用壽命長(zhǎng),精度高和低功耗等特點(diǎn),同時(shí)具有掉電自動(dòng)保存功能;溫度檢測(cè)模塊由DS18B20構(gòu)成,它采用獨(dú)特的單線接口僅需一個(gè)端口引腳進(jìn)行通訊, 具有測(cè)量精度高、測(cè)量范圍廣等優(yōu)點(diǎn),其測(cè)溫范圍在-55+125,工作電壓為3v5.5v;顯示部份使用1602液晶顯示屏來(lái)實(shí)現(xiàn),該顯示屏具有低功耗、壽命長(zhǎng)、可靠性高的特點(diǎn),其工作電壓為5v。2 主要單元電路的設(shè)計(jì)ST

8、C89C52單片機(jī)簡(jiǎn)介STC89C52是一種低功耗、高性能的8位CMOS微控制器,具有8K的可編程Flash 存儲(chǔ)器。使用高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在線系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。STC89C52具有以下標(biāo)準(zhǔn)功能:8K字節(jié)Flash,256字節(jié)RAM,32位I/O 口線,看門(mén)狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,ST

9、C89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。引腳排列如圖2.1所示。圖2.1 STC89C52引腳圖單片機(jī)主控制模塊的設(shè)計(jì)本設(shè)計(jì)中單片機(jī)主要負(fù)責(zé)對(duì)外設(shè)的控制和各個(gè)功能模塊間的協(xié)調(diào),沒(méi)有復(fù)雜的數(shù)據(jù)計(jì)算,因此,8位的51系列單片機(jī)足以勝任。它具有豐富的內(nèi)部資源,較大的數(shù)據(jù)、程序存儲(chǔ)區(qū)。一個(gè)典型的單片機(jī)最小系統(tǒng)一般由時(shí)鐘電路、復(fù)位電路、電源指示燈和外部擴(kuò)展接口等部分組成。單片機(jī)的最小系統(tǒng)如圖4.2所示,單

10、片機(jī)的XTAL0和XTAL1引腳用于連接晶振電路。XTAL0接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,XTAL1接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出。RESET為復(fù)位引腳,連接復(fù)位電路,它用于對(duì)單片機(jī)進(jìn)行初始化。復(fù)位電路包括復(fù)位電容(C6)、復(fù)位電阻(R3)和復(fù)位開(kāi)關(guān)(S4)。VSS為電源地,VCC為電源正。圖4.2 單片機(jī)最小系統(tǒng) 單片機(jī)最小系統(tǒng)復(fù)位、晶振電路簡(jiǎn)介1、復(fù)位電路的設(shè)計(jì)復(fù)位電路是使單片機(jī)的CPU或系統(tǒng)中的其他部件處于某一確定的初始狀態(tài),并從這上狀態(tài)開(kāi)始工作。本設(shè)計(jì)是上電復(fù)位要求接通電源后,單片機(jī)自動(dòng)實(shí)現(xiàn)復(fù)位操作按鍵復(fù)位電路如圖所示2、

11、晶振電路的設(shè)計(jì)晶振電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào),而時(shí)序所研究的是指令執(zhí)行中各信號(hào)之間的相互關(guān)系。通常在引腳XTALl和XTAL2跨接石英晶體和兩個(gè)補(bǔ)償電容構(gòu)成自激振蕩器。晶振電路如圖所示時(shí)鐘芯片DS1302簡(jiǎn)介芯片介紹:低功耗時(shí)鐘芯片DS1302可以對(duì)年、月、日、時(shí)、分、秒進(jìn)行計(jì)時(shí),且具有閏年補(bǔ)償?shù)榷喾N功能。DS1302用于數(shù)據(jù)記錄,特別是對(duì)某些具有特殊意義的數(shù)據(jù)點(diǎn)的記錄上,能實(shí)現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時(shí)間同時(shí)記錄。這種記錄對(duì)長(zhǎng)時(shí)間的連續(xù)測(cè)控系統(tǒng)結(jié)果的分析以及對(duì)異常數(shù)據(jù)出現(xiàn)的原因的查找有重要意義。(1) DS1302的性能特性·實(shí)時(shí)時(shí)鐘,可對(duì)秒、分、時(shí)、日、周、月以及帶閏年補(bǔ)償

12、的年進(jìn)行計(jì)數(shù);·用于高速數(shù)據(jù)暫存的31×8位RAM;·最少引腳的串行I/O;·2.55.5V 電壓工作范圍;·2.5V時(shí)耗電小于300nA;·用于時(shí)鐘或RAM數(shù)據(jù)讀/寫(xiě)的單字節(jié)或多字節(jié)(脈沖方式)數(shù)據(jù)傳送方式;·簡(jiǎn)單的3線接口;·可選的慢速充電(至VCC1)的能力。 (2) DS1302數(shù)據(jù)操作原理DS1302在任何數(shù)據(jù)傳送時(shí)必須先初始化,把RST腳置為高電平,然后把8位地址和命令字裝入移位寄存器,數(shù)據(jù)在SCLK的上升沿被輸入。無(wú)論是讀周期還是寫(xiě)周期,開(kāi)始8位指定40個(gè)寄存器中哪個(gè)被訪問(wèn)到。在開(kāi)始8個(gè)時(shí)鐘周期,把命

13、令字節(jié)裝入移位寄存器之后,另外的時(shí)鐘周期在讀操作時(shí)輸出數(shù)據(jù),在寫(xiě)操作時(shí)寫(xiě)入數(shù)據(jù)。時(shí)鐘脈沖的個(gè)數(shù)在單字節(jié)方式下為8加8,在多字節(jié)方式下為8加字節(jié)數(shù),最大可達(dá)248字節(jié)數(shù)。圖4-3 DS1302管腳圖如果在傳送過(guò)程中置RST為低電平,則會(huì)終止本次數(shù)據(jù)傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在VCC >=2.5V之前,RST腳必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。DS1302的管腳圖如圖4-3所示,表4-2為各引腳的功能。表4-2 DS1302引腳功能表引腳號(hào)引腳名稱功能1VCC2主電源2,3X1,X2振蕩源,外接32768HZ晶振4GND地線5RST復(fù)位/片選

14、線6I/O串行數(shù)據(jù)輸入/輸出端(雙向)7SCLK串行數(shù)據(jù)輸入端8VCC1后備電源DS1302的控制字如圖4-5所示??刂谱止?jié)的最高有效位(位7)必須是邏輯1;如果它為邏輯0,則不能把數(shù)據(jù)寫(xiě)入到DS1302中。位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù);為1表示存取RAM數(shù)據(jù)。位51(A4A0)指示操作單元的地址。最低有效位(位0)如為0,表示要進(jìn)行寫(xiě)操作;為1表示進(jìn)行讀操作??刂谱止?jié)總是從最低位開(kāi)始輸入/輸出。7 6 5 4 3 2 1 01RAM CKA4A3A2A1A0RAM K圖4-5 控制字節(jié)的含義為了提高對(duì)32個(gè)地址的尋址能力(地址/命令位15邏輯1),可以把時(shí)鐘/日歷或RAM寄存器規(guī)定為

15、多字節(jié)(burst)方式。位6規(guī)定時(shí)鐘或RAM,而位0規(guī)定讀或?qū)?。在時(shí)鐘/日歷寄存器中的地址931或RAM寄存器中的地址31不能存儲(chǔ)數(shù)據(jù)。在多字節(jié)方式中,讀或?qū)憦牡刂?的位0開(kāi)始。必須按數(shù)據(jù)傳送的次序?qū)懽钕鹊?個(gè)寄存器。但是,當(dāng)以多字節(jié)方式寫(xiě)RAM時(shí),為了傳送數(shù)據(jù)不必寫(xiě)所有31字節(jié)。不管是否寫(xiě)了全部31字節(jié),所寫(xiě)的每一字節(jié)都將傳送至RAM。數(shù)據(jù)讀寫(xiě)程序如圖4-6所示。SCLKKRSTI/O571357210246046R/CA2A3A0A1R/WA41DATAI/OBYTEDATAI/OBYTE圖4-6 數(shù)據(jù)讀寫(xiě)程序(3) DS1302的寄存器DS1302有12個(gè)寄存器,其中有7個(gè)寄存器與日歷

16、、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見(jiàn)表-2。 表-2 DS1302的日歷、時(shí)間寄存器 此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫(xiě)除充電寄存器外的所有寄存器內(nèi)容。 DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫(xiě)操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫(xiě)所有的RAM的31個(gè)字節(jié),命令控制字為FEH(寫(xiě))、FFH(讀)。 DS1302模塊如下圖:DS1

17、8B20溫度傳感簡(jiǎn)介引腳圖: 1、DS18B20的主要特性 1.1、適應(yīng)電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數(shù) 據(jù)線供電 1.2、獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊 1.3、 DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫 1.4、DS18B20在使用中不需要任何外圍元件,全部 傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi) 1.5、溫范圍55125,在-10+85時(shí)精度為±0.5 1.6、可編程 的分辨率為912位,對(duì)應(yīng)的可分辨溫度分別為

18、0.5、0.25、0.125和0.0625,可實(shí)現(xiàn)高精度測(cè)溫 1.7、在9位分辨率時(shí)最多在 93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快 1.8、測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一 線總線"串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力 1.9、負(fù)壓特性:電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀, 但不能正常工作。 2、DS18B20的外形和內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM 、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。溫度數(shù)據(jù)表如下:  D

19、S18B20溫度傳感模塊如下圖:鍵盤(pán)電路簡(jiǎn)介本設(shè)計(jì)共采用按鍵3個(gè),分別與單片機(jī)的P27、P26、P25口相連,分別對(duì)應(yīng)光標(biāo)移動(dòng),時(shí)間、日期調(diào)整。1602顯示模塊的簡(jiǎn)介本設(shè)計(jì)中由于要對(duì)時(shí)間、溫度進(jìn)行顯示,所以選擇液晶顯示屏1602模塊作為輸出。1602字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來(lái)的2條線是背光電源線。它可以顯示兩行,每行16個(gè)字符,采用單+5V電源供電,外圍電路配置簡(jiǎn)單,價(jià)格便宜,具有很高的性價(jià)比。1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫(xiě)、常用的符號(hào)、和日文假名等,每一個(gè)字符都

20、有一個(gè)固定的代碼,比如大寫(xiě)的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”。 管腳功能如表4-1所示:表4-1 LCD1602引腳功能引腳符號(hào)功能說(shuō)明1VSS一般接地2VDD接電源(+5V)3V0液晶顯示器對(duì)比度調(diào)整端。4RSRS為寄存器選擇。5R/WR/W為讀寫(xiě)信號(hào)線。6EE(或EN)端為使能(enable)端,下降沿使能。7DB0底4位三態(tài)、 雙向數(shù)據(jù)總線 0位(最低位)8DB1底4位三態(tài)、 雙向數(shù)據(jù)總線 1位9DB2底4位三態(tài)、 雙向數(shù)據(jù)總線 2位10DB3底4位三態(tài)、 雙向數(shù)據(jù)總線 3位11DB4高4位三態(tài)、

21、雙向數(shù)據(jù)總線 4位12DB5高4位三態(tài)、 雙向數(shù)據(jù)總線 5位13DB6高4位三態(tài)、 雙向數(shù)據(jù)總線 6位14DB7高4位三態(tài)、 雙向數(shù)據(jù)總線 7位(最高位)LCD1602主要管腳介紹:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生鬼影使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度。RS為寄存器選擇端,高電平時(shí)選擇數(shù)據(jù)寄存器,低電平時(shí)選擇指令寄存器。RW為讀寫(xiě)信號(hào)線端,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)RS和RW共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址;當(dāng)RS為高電平RW 為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。E為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行

22、命令。1602液晶顯示屏模塊如下圖:三 程序流程圖系統(tǒng)總流程圖系統(tǒng)總流程圖如下圖所示。流程圖分析:首先系統(tǒng)初始化,系統(tǒng)開(kāi)始運(yùn)行,當(dāng)有設(shè)置鍵按下時(shí)進(jìn)入修改時(shí)間模式,無(wú)按鍵按下時(shí)讀取時(shí)間、溫度等數(shù)據(jù)送入液晶屏顯示;在修改時(shí)間模式下設(shè)置時(shí)間完成后再送數(shù)據(jù)到液晶屏顯示。系統(tǒng)總流程圖計(jì)算陽(yáng)歷程序流程圖如下:陰歷日期流程圖:計(jì)算出陽(yáng)歷總天數(shù)后,就可以根據(jù)它來(lái)推算陰歷日期。推算方法是,先用總天數(shù)減去春節(jié)和元旦的日差,如果結(jié)果為1,則該天正好是春節(jié)(因?yàn)榇汗?jié)在元旦之后,在計(jì)算春節(jié)和元旦的日差時(shí),假設(shè)元旦為0天,春節(jié)為n天,則日差為n。而前面計(jì)算的陽(yáng)歷總天數(shù)是該天在該年中的第幾天,是以元旦為1而得到的,與計(jì)算春

23、節(jié)和元旦日差的這樣方法相比,其數(shù)值少了1,所以要在原來(lái)本應(yīng)該以0作為該天就是春節(jié)的依據(jù)的基礎(chǔ)上加1,所以以1作為該天是春節(jié)的標(biāo)志);如果結(jié)果小于1,則陰歷應(yīng)該是陽(yáng)歷的前一年;如果結(jié)果大于1,說(shuō)明陽(yáng)歷和陰歷為同一年。再根據(jù)查表所得的該年的陰歷的閏年和大小月的信息,就可以推算出該天的陰歷日期了。圖為由總天數(shù)推算出陰歷日期流程圖如下:程序入口R2減1個(gè)月天數(shù) 夠減?下個(gè)月為閏月?減去閏月天數(shù)月加1月份為當(dāng)前正在減的月份的前一個(gè)月的最后一天月份為當(dāng)前正在減的月份,號(hào)數(shù)為R2中的值R2=0?R3=0?R2=R2+R3R3=0YYYYNNNN時(shí)間調(diào)整流程圖:調(diào)整時(shí)間用三個(gè)調(diào)整按鈕,一個(gè)作為移位、控制用,一

24、個(gè)作為加用,一個(gè)作為退出調(diào)整和鬧鈴開(kāi)關(guān)用。分別定義為控制按鈕、加按鈕、退出按鈕。在調(diào)整時(shí)間過(guò)程中,要調(diào)整的位與別的位應(yīng)該有區(qū)別,所以增加了閃爍功能,即調(diào)整的位一直在閃爍,直到調(diào)整下一位。閃爍原理就是,讓要調(diào)整的一位每隔一定的時(shí)間熄滅一次,例如間隔時(shí)間為50ms。利用定時(shí)器計(jì)時(shí),當(dāng)達(dá)到50ms溢出時(shí),就送給該位熄滅符,在下一次溢出時(shí),再送正常顯示的值,不斷交替,直到調(diào)整該位結(jié)束。此時(shí)送正常顯示值給該位,再進(jìn)入下一位調(diào)整閃爍程序。時(shí)間調(diào)整程序流程圖如下圖所示:四 總原理圖五 硬件調(diào)試結(jié)果與調(diào)試步驟萬(wàn)年歷硬件圖:調(diào)試步驟與顯示:(1)VCC接電源,GND接地,萬(wàn)年歷顯示圖如下:(2)時(shí)鐘調(diào)節(jié) “M” 按鍵接P27,“+”按鍵接P26,“-”按鍵接P25,“M”按1下 秒鐘調(diào)節(jié):“M”按2下 分鐘調(diào)節(jié):“M”按3下 時(shí)鐘調(diào)節(jié):“M”按4下 日期調(diào)節(jié):“M”按5下 月份調(diào)節(jié):“M”按6下 年份調(diào)節(jié):“M”按7下 萬(wàn)年歷恢復(fù)跳轉(zhuǎn)六 課程設(shè)計(jì)總結(jié)與體會(huì)制作這次課程設(shè)計(jì)一切都是從零開(kāi)始,從最簡(jiǎn)單的畫(huà)流程圖起步,這次課程設(shè)計(jì)可以圓滿完成,跟單片機(jī)課程里面的課外作業(yè)是離不開(kāi)的。這次課程設(shè)計(jì)從開(kāi)始到制作成功前后超過(guò)了一個(gè)星期。當(dāng)電子萬(wàn)年歷可

溫馨提示

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