液晶數(shù)字鐘論文_第1頁
液晶數(shù)字鐘論文_第2頁
液晶數(shù)字鐘論文_第3頁
液晶數(shù)字鐘論文_第4頁
液晶數(shù)字鐘論文_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、液晶數(shù)字鐘論文 目錄緒論2第1章設(shè)計(jì)方案31.1方案論證與比較31.2方案確定4第2章硬件設(shè)計(jì)52.1單片機(jī)最小系統(tǒng)52.2時(shí)鐘模塊52.2.1DS1307的引腳功能62.2.2DS1307的內(nèi)部結(jié)構(gòu)62.2.3DS1307的讀寫操作72.2.4DS1307硬件電路設(shè)計(jì)92.3鬧鈴模塊92.4鍵盤模塊92.5.1LCD1602的引腳功能102.5.2LCD1602的顯示操作10第3章軟件設(shè)計(jì)143.1系統(tǒng)流程圖143.2鍵盤處理模塊流程圖14第4章系統(tǒng)測(cè)試19總結(jié)20參考文件21附錄1系統(tǒng)仿真電路圖22附錄2主要源程序23附件3 軟件設(shè)計(jì)變24附件4 程序模塊及參數(shù).25緒論本次課程設(shè)計(jì)的目的

2、是為我們更好的掌握單片機(jī)的應(yīng)用知識(shí),有助于提高我們的職業(yè)素質(zhì),同時(shí)加深對(duì)知識(shí)的了解,本次設(shè)計(jì)也是為我們的畢業(yè)設(shè)計(jì)打基礎(chǔ),加強(qiáng)知識(shí)的綜合應(yīng)用。本設(shè)計(jì)以AT89C51單片機(jī)為核心,以實(shí)時(shí)時(shí)鐘芯片DS1307和液晶顯示LCD1602為主體設(shè)計(jì)了一款簡(jiǎn)易數(shù)字時(shí)鐘。該時(shí)鐘系統(tǒng)主要由單片機(jī)最小系統(tǒng)、時(shí)鐘模塊、鬧鐘模塊、液晶顯示模塊、鍵盤控制模塊組成。系統(tǒng)具有簡(jiǎn)單清晰的操作界面,能夠準(zhǔn)確顯示時(shí)間(顯示格式為時(shí)時(shí):分分:秒秒,24小時(shí)制),可隨時(shí)進(jìn)行時(shí)間調(diào)整,具有鬧鐘時(shí)間設(shè)置、鬧鐘開/關(guān)。設(shè)計(jì)以硬件軟件化為指導(dǎo)思想,充分發(fā)揮單片機(jī)功能,大部分功能通過軟件編程來實(shí)現(xiàn),電路簡(jiǎn)單明了,系統(tǒng)穩(wěn)定性高。同時(shí),該時(shí)鐘系統(tǒng)

3、還具有功耗小、成本低的特點(diǎn),具有很強(qiáng)的實(shí)用性。由于系統(tǒng)所用元器件較少,單片機(jī)所被占用的I/O口不多,因此系統(tǒng)具有一定的可擴(kuò)展性。軟件程序均采用C語言編寫,便于移植與升級(jí)。報(bào)告詳細(xì)介紹了整個(gè)系統(tǒng)的硬件組成結(jié)構(gòu)、工作原理和系統(tǒng)的軟件程序設(shè)計(jì)。 通過一個(gè)階段的對(duì)知識(shí)點(diǎn)的了解更加明確,同時(shí)也了解了做項(xiàng)目不是件容易的事,需要多方面的知識(shí),還需要大量的查閱資料,再把自己的所學(xué)知識(shí)綜合應(yīng)用,這樣才有可能做出項(xiàng)目來。第1章設(shè)計(jì)方案1.1方案論證與比較方案一:基于FPGA的系統(tǒng)總體設(shè)計(jì)方法。為了實(shí)現(xiàn):(1)顯示年、月、日、時(shí)、分、秒、星期,并且可以進(jìn)行調(diào)整時(shí)間;(2)可以設(shè)定鬧鐘和整點(diǎn)報(bào)時(shí)的功能,數(shù)字時(shí)鐘在總體

4、上主要分為三大部分:輸入人機(jī)界面部分、FPGA核心功能部分和輸出界面部分,其系統(tǒng)設(shè)計(jì)框圖如圖1-1所示。圖1-1基于FPGA的系統(tǒng)設(shè)計(jì)方框圖方案二:采用單片機(jī)技術(shù)來實(shí)現(xiàn)數(shù)字鐘的功能。系統(tǒng)以AT89C51單片機(jī)為核心控制器件,它除了具備微機(jī)CPU的數(shù)值計(jì)算功能外,還具有靈活強(qiáng)大的控制功能,以便實(shí)時(shí)檢測(cè)系統(tǒng)的輸入量、控制系統(tǒng)的輸出量,實(shí)現(xiàn)自動(dòng)控制。與傳統(tǒng)機(jī)械表相比,它具有走時(shí)精確,顯示直觀等特點(diǎn)。它的計(jì)時(shí)周期為24小時(shí),顯滿刻度為“23時(shí)59分59秒”,另外具有校時(shí)功能,斷電后有記憶功能,恢復(fù)供電時(shí)可實(shí)現(xiàn)計(jì)時(shí)同步等特點(diǎn)。外圍主要有串行通信器件實(shí)時(shí)時(shí)鐘芯片DS1307等,使得系統(tǒng)線路簡(jiǎn)單可靠性高。系

5、統(tǒng)結(jié)構(gòu)框圖如圖1-2所示。圖1-2基于單片機(jī)實(shí)現(xiàn)的數(shù)字時(shí)鐘系統(tǒng)結(jié)構(gòu)框圖單片機(jī)最小系統(tǒng):其作用是和外圍的時(shí)鐘芯片通信,并控制數(shù)據(jù)傳輸?shù)倪^程,采集時(shí)間信息并予以處理。鍵盤模塊:鍵盤模塊可以設(shè)置時(shí)間信息,通過單片機(jī)寫入時(shí)鐘芯片,以更新時(shí)間;也可以設(shè)置鬧鐘,由單片機(jī)存入其內(nèi)部RAM中。時(shí)鐘模塊:此模塊由專用的實(shí)時(shí)時(shí)鐘芯片構(gòu)成,由它提供實(shí)時(shí)的日歷時(shí)鐘信息。液晶顯示模塊:?jiǎn)纹瑱C(jī)讀取時(shí)鐘芯片DS1307中的信息,通過液晶顯示器實(shí)時(shí)顯示。采用LCD作為顯示器,具有界面友好、功耗低的優(yōu)點(diǎn)。鬧鐘模塊:?jiǎn)纹瑱C(jī)主控模塊讀取日歷芯片中的時(shí)間信息,與所設(shè)置的鬧鐘時(shí)間相比較,若相同時(shí),鬧鐘模塊工作鬧鐘模塊。電源模塊:用22

6、0V市電經(jīng)整流、濾波、穩(wěn)壓后,輸出穩(wěn)定的+5V的直直流電為其供電。1.2方案確定綜合考慮以上兩種方案的優(yōu)缺點(diǎn)以及題目的基本要求和發(fā)揮要求,在本設(shè)計(jì)中,我采了第二種方案,即采用單片機(jī)來實(shí)現(xiàn)數(shù)字時(shí)鐘的功能。第2章硬件設(shè)計(jì)2.1單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)以AT89C51單片機(jī)為核心,由單片機(jī)、時(shí)鐘電路、復(fù)位電路等組成如圖2-1所示。主要負(fù)責(zé)各個(gè)模塊的初始化工作;讀取并處理時(shí)間;處理按鍵響應(yīng);控制液晶實(shí)時(shí)顯示等。圖2-1單片機(jī)最小系統(tǒng)主控制器AT89C51單片機(jī)與MCS51系列單片機(jī)產(chǎn)品兼容,內(nèi)部自帶有4KB的Flash存儲(chǔ)器及256KBRAM單元,不需另外擴(kuò)展EEPROM及靜態(tài)RAM,可以在線下載

7、程序,易于日后的升級(jí)。圖中,P2.0、P2.1、P2.2及P1口為單片機(jī)與液晶顯示器連接的控制和通信的數(shù)據(jù)端口;P2.6和P2.7為單片機(jī)與時(shí)鐘芯片DS1307通信的端口;P2.3為鬧鐘的控制端口;P0.0、P0.1、P0.2、P0.3為按鍵模塊的接口。時(shí)鐘電路是由XTAL1和XTAL2之間跨接的晶體振蕩器和微調(diào)電容構(gòu)成。時(shí)鐘電路中晶體振蕩器的頻率高則系統(tǒng)的時(shí)鐘頻率就高,所以該系統(tǒng)采用12M晶振;復(fù)位電路有兩種形式:手動(dòng)按鍵復(fù)位和上電復(fù)位,在本系統(tǒng)中采用的是手動(dòng)按鍵復(fù)位。如圖2-1所示,R1、R2、C3和SW組成系統(tǒng)手動(dòng)按鍵復(fù)位電路。2.2時(shí)鐘模塊系統(tǒng)采用DS1307時(shí)鐘芯片。DS1307是美

8、國DALLAS公司推出的一種高性能、低功耗的時(shí)鐘芯片,它是一款I(lǐng)2C總線接口的時(shí)鐘芯片,采用兩線與CPU進(jìn)行通信,片內(nèi)含有8個(gè)特殊功能寄存器和56bit的SRAM。DS1307的主要技術(shù)指標(biāo):具有秒、分、時(shí)、日、星期、月、年的計(jì)數(shù)功能;12小時(shí)制和24小時(shí)制兩種計(jì)數(shù)模式;可自動(dòng)調(diào)整每月的天數(shù),具有閏年自動(dòng)修正、掉電保護(hù)和上電復(fù)位功能。2.2.1DS1307的引腳功能DS1307采用8引腳雙列直插DIP封裝形式,引腳分布如圖2-2所示。相應(yīng)功能如下:Vcc:主電源;Vbat:備用電源。當(dāng)VbatVcc+0.2V時(shí),由Vcc向DS1307供電,當(dāng)VbatVcc時(shí),由Vcc向DS1307供電;GND

9、:邏輯地;SCL:I2C總線時(shí)鐘線;SDA:I2C總線數(shù)據(jù)線;SQW/OUT:方波/輸出驅(qū)動(dòng)器。圖2-2DS1307引腳分布圖2.2.2DS1307的內(nèi)部結(jié)構(gòu)1.內(nèi)部結(jié)構(gòu)DS1307芯片由晶體振蕩器、電源控制器、I2C總線控制、分頻處理、邏輯控制、RAM存儲(chǔ)、多路選擇器、時(shí)鐘/日歷寄存器、緩沖器組成,內(nèi)部結(jié)構(gòu)如圖2-3所示。VccSQW/OUTSDASCLGNDVbatX2X1電源控制器邏輯控制時(shí)鐘/日歷寄存器多路選擇器RAM存儲(chǔ)分頻處理晶體振蕩器RAM存儲(chǔ)I2C控制總線1Hz圖2-3DS1307的內(nèi)部結(jié)構(gòu)2寄存器DS1307有關(guān)日歷、時(shí)間的寄存器共有12個(gè),其中有7個(gè)寄存器(讀時(shí)81H8DH

10、,寫時(shí)80H8CH),存放的數(shù)據(jù)格式為BCD碼形式,如表2-1所示。表2-1DS1307的日歷、時(shí)間寄存器地址D7D6D5D4D3D2D1D0功能取值范圍81HCH十位個(gè)位秒00-5983H0十位個(gè)位分00-5985H012十位十位個(gè)位時(shí)AM:1-12PM:00-23248B00000星期星期01-0787H00十位個(gè)位日01-3189H000十位個(gè)位月01-128DH十位Year年00-998FHOUT00SOWE00RS1RS0控制字-91HRAM56800H-FFH(1)小時(shí)寄存器(85H、84H)的位7用于定義DS1307是運(yùn)行于12小時(shí)模式還是24小時(shí)模式。當(dāng)為高電平時(shí),選擇12小時(shí)

11、模式。在12小時(shí)模式時(shí),位D5是,當(dāng)為1時(shí),表示PM。在24小時(shí)模式時(shí),位5是第二個(gè)10小時(shí)位。(2)秒寄存器(81H、80H)的位7定義為時(shí)鐘暫停標(biāo)志(CH)。當(dāng)該位置為1時(shí),時(shí)鐘振蕩器停止,DS1307處于低功耗狀態(tài);當(dāng)該位置為0時(shí),時(shí)鐘開始運(yùn)行。(3)控制寄存器(8FH、8EH)的位7是寫保護(hù)位(WP),其它7位均置為0。在任何的對(duì)時(shí)鐘和RAM的寫操作之前,WP位必須為0。當(dāng)WP位為1時(shí),寫保護(hù)位防止對(duì)任一寄存器的寫操作。2.2.3DS1307的讀寫操作DS1307是基于I2C總線接口的時(shí)鐘芯片,軟件上與I2C總線完全兼容。1.I2C總線的驅(qū)動(dòng)I2C總線在傳送數(shù)據(jù)時(shí),必須確認(rèn)傳送數(shù)據(jù)的開

12、始和結(jié)束。而且每傳送一個(gè)字節(jié),要發(fā)送一個(gè)應(yīng)答位(0);在一個(gè)周期發(fā)送結(jié)束后,要發(fā)送一個(gè)應(yīng)答位(1)。具體如圖2-4所示,三種信號(hào)的格式如下:(1)啟動(dòng)信號(hào):當(dāng)時(shí)鐘總線SCL為高電平時(shí),數(shù)據(jù)線SDA由高電平跳變?yōu)榈碗娖蕉x為“啟動(dòng)”信號(hào)。(2)停止信號(hào):當(dāng)時(shí)鐘總線SCL為高電平時(shí),數(shù)據(jù)線SDA由低電平跳變?yōu)楦唠娖蕉x為“結(jié)束”信號(hào)。(3)應(yīng)答位:當(dāng)主器件發(fā)送完一字節(jié)的數(shù)據(jù)后,后面必須跟一個(gè)應(yīng)答位(ACK)。在時(shí)鐘高電平期間,如果數(shù)據(jù)線SDA為低電平代表一個(gè)字節(jié)的傳送結(jié)束,并準(zhǔn)備下一個(gè)要傳送的字節(jié);在時(shí)鐘高電平期間,如果數(shù)據(jù)線SDA為低電平代表一個(gè)傳送周期結(jié)束,準(zhǔn)備下一個(gè)傳送周期。圖2-4I2C總

13、線的數(shù)據(jù)傳送格式2.DS1307的寫控制圖2-5是DS1307的寫控制格式,首先發(fā)送啟動(dòng)信號(hào),然后發(fā)送的第一個(gè)字節(jié)是用來控制芯片的地址以及讀寫控制位(D0:0寫),之后是應(yīng)答位,然后發(fā)送其它字節(jié)數(shù)據(jù),在最后發(fā)送一個(gè)結(jié)束標(biāo)志的應(yīng)答位,緊跟著是停止信號(hào)。S0AXXXXXXXXAXXXXXXXXAXXXXXXXXAXXXXXXXXAP圖2-5CPU寫數(shù)據(jù)模式3.DS1307的讀控制圖2-6是DS1307的讀控制格式,首先發(fā)送啟動(dòng)信號(hào),然后發(fā)送的第一個(gè)字節(jié)是用來控制芯片的地址以及讀寫控制為(D0:1讀),之后是應(yīng)答位,然后發(fā)送其它字節(jié)數(shù)據(jù),在最后發(fā)送一個(gè)結(jié)束標(biāo)志的應(yīng)答位,緊跟著是停止信號(hào)。S1AXXX

14、XXXXXAXXXXXXXXAXXXXXXXXAXXXXXXXXAP圖2-6CPU讀數(shù)據(jù)模式2.2.4DS1307硬件電路設(shè)計(jì)DS1307采用與CPU進(jìn)行通信,電路連接簡(jiǎn)單。DS1307的內(nèi)部振蕩電路結(jié)構(gòu)如圖2-7所示,在芯片內(nèi)部連接有兩個(gè)電容,目的是為了使晶振起振,所以在電路設(shè)計(jì)中就不需要另外再加電容了。圖2-7DS1307的內(nèi)部振蕩電路時(shí)鐘模塊電路如圖2-8所示,其中晶振采用的是32.768kHz,經(jīng)內(nèi)部電路分頻后可獲得一個(gè)標(biāo)準(zhǔn)的秒脈沖信號(hào);電阻R3、R4是I2C總線的上拉電阻。圖2-8DS1307的電路連接2.3鬧鈴模塊系統(tǒng)采用蜂鳴器作為鬧鈴輸出,電路連接如圖2-9所示。電路中采用PNP

15、管Q1來控制蜂鳴器的開關(guān),由圖可以看出:當(dāng)P2.3引腳為高電平時(shí),PNP管截止,蜂鳴器不工作;當(dāng)P2.3引腳為低電平時(shí),PNP管導(dǎo)通,蜂鳴器工作。其中R9為限流電阻。圖2-9鬧鈴電路2.4鍵盤模塊鍵盤模塊設(shè)置了四個(gè)按鍵:KEY1、KEY2、KEY3、KEY4。其中KEY1為模式切換鍵,KEY2為設(shè)定值上升鍵,用KEY3為設(shè)定值減小鍵,KEY4是返回鍵。電路連接如圖2-10所示。4個(gè)上拉電阻可以保證在沒有按鍵輸入時(shí),進(jìn)入單片機(jī)四個(gè)I/O口的按鍵狀態(tài)均為高電平,防止干擾產(chǎn)生;當(dāng)有按鍵按下時(shí),相應(yīng)的端口線狀態(tài)轉(zhuǎn)為低電平。圖2-10鍵盤電路2.5.1LCD1602的引腳功能LCD1602模塊的引腳如圖

16、2-11所示。圖2-11LCD1602模塊其引腳功能如下:RS:數(shù)據(jù)和指令選擇控制端,RS=0命令狀態(tài);RS=1數(shù)據(jù);R/W:讀寫控制線,R/W=0寫操作;R/W=1讀操作;A:背光控制正電源;K:背光控制地;E:數(shù)據(jù)讀寫操作控制位,E線向LCD模塊發(fā)送一個(gè)脈沖,LCD模塊與單片機(jī)間將進(jìn)行一次數(shù)據(jù)交換;DB0DB7:數(shù)據(jù)線,可用8位連接,也可只用高4位連接,節(jié)約單片機(jī)資源;VDD:電源端;VEE:亮度控制端(1-5V);VSS:接地端。2.5.2LCD1602的顯示操作1.四種基本操作LCD有四種基本操作,具體如表2-2所示。表2-2LCD與單片機(jī)之間有四種基本操作RSR/W操作00寫命令操作

17、(初始化,光標(biāo)定位等)01讀狀態(tài)操作(讀忙標(biāo)志位)10寫數(shù)據(jù)操作(要顯示內(nèi)容)11讀數(shù)據(jù)操作(可以把顯示存儲(chǔ)區(qū)中的數(shù)據(jù)反讀出來)(1)讀狀態(tài)操作執(zhí)行讀狀態(tài)字操作,如表2-2所示須滿足RS=0、R/W=1。根據(jù)管腳功能,當(dāng)為有效電平時(shí),狀態(tài)命令字可從LCD模塊傳輸?shù)綌?shù)據(jù)總線。同時(shí)可以保持一段時(shí)間,從而實(shí)現(xiàn)讀狀態(tài)字的功能。如RS清0,等待RW置1,等待E置1,等待讀入狀態(tài)字,等待E清0,等待RW清0,等待結(jié)束圖2-12所示為讀入狀態(tài)字流程圖。圖2-12讀入狀態(tài)字流程圖(2)寫命令操作由表2-2可知當(dāng)RS=0,R/W=0時(shí),才可以通過單片機(jī)或用戶指令把數(shù)據(jù)即命令,寫到LCD模塊,此時(shí)就對(duì)LCD進(jìn)行調(diào)

18、制??刹捎貌樵兎绞剑合茸x入狀態(tài)字,再判斷忙標(biāo)志,最后寫命令字。1)命令字表2-3所示為命令字,其主要介紹了指令名稱、控制信號(hào)及控制代碼。其指令名稱是指要實(shí)現(xiàn)的功能,控制代號(hào)是采用的十六進(jìn)制的數(shù)值表示的。a.清零操作是指輸入某命令字后即能將整個(gè)屏幕顯示的內(nèi)容全部清除;b.歸home位:將光標(biāo)送到初始位;其中的*號(hào)為任意,高低電平均可;c.輸入方式:設(shè)光標(biāo)移動(dòng)方向并指定整體顯示,是否移動(dòng)。I/D=0:減量方式,S=1:移位,S=0:不移位;d.顯示狀態(tài):D指設(shè)置整體顯示開關(guān);C指設(shè)置光標(biāo)顯示開關(guān);B指設(shè)置光標(biāo)的字符閃耀;e.光標(biāo)畫面滾動(dòng):R/L指右移或左移;S/C指移動(dòng)總體或光標(biāo);f.功能設(shè)置:D

19、L接口數(shù)位,L指顯示行數(shù),F(xiàn)顯示字型;g.CGRAM地址設(shè)制:相當(dāng)于一個(gè)數(shù)據(jù)庫,可以在其中選擇所需要的符號(hào);h.DDRAM地址設(shè)制:顯示定位;i.讀BF和AC:B為最高位忙的標(biāo)志,F(xiàn)為標(biāo)志位;j.寫數(shù)據(jù):將數(shù)據(jù)按要求寫入到對(duì)應(yīng)的單元;k.讀數(shù)據(jù):讀相應(yīng)單元內(nèi)的數(shù)據(jù)。表2-3命令字指令名稱控制信號(hào)控制代碼RSRWD7D6D5D4D3D2D1D0清屏0000000001歸HOME位000000001*輸入方式設(shè)制00000001I/DS顯示狀態(tài)設(shè)制0000001DCB無標(biāo)畫面滾動(dòng)000001S/CRL*功能設(shè)置00001DLNF*CGRAM地址設(shè)制0001A5A4A3A2A1A0DDRAM地址設(shè)制

20、001A6A5A4A3A2A1A0讀BF和AC01BFAC6AC5AC4AC3AC2AC1AC0寫數(shù)據(jù)10數(shù) 據(jù)讀數(shù)據(jù)11數(shù) 據(jù)2)如圖2-13為寫命令字的流程圖。寫命令字讀入狀態(tài)字AAC.7=0?不忙嗎?延時(shí)R/W=0RS=0E=1命令字A,AP1E=0RS=0返回圖2-13寫命令字流程圖3)定義光標(biāo)位置把顯示數(shù)據(jù)要某個(gè)位置,就是把顯示數(shù)據(jù)寫在相應(yīng)的DDRAM地址中,DDRAM地址占7位。SetDDRAMaddress命令如表2-3所示。光標(biāo)定位,寫入一個(gè)顯示字符后,DDRAM地址會(huì)自動(dòng)加1或減1,加或減由輸入方式設(shè)置。表2-4SetDDRAMaddress命令RSR/WDB7DB6DB5D

21、B4DB3DB2DB1DB0001AC6AC5AC4AC3AC2AC1AC0第1行DDRAM地址與第2行DDRAM地址并不連續(xù)。如表2-4所示。表2-5DDRAM地址row12345141516line180H81H82H83H84H8dH8eH8fHline20c0H0c1H0c2H0c3H0c4H0cdH0ceH0cfH4)LCD初始化從通電開始通過延時(shí),先經(jīng)過判忙后再進(jìn)行功能設(shè)置,過一段時(shí)間后可以設(shè)制顯示狀態(tài)(如設(shè)置行、位或陣列)再經(jīng)過延時(shí)后清屏后再可以設(shè)置輸入方式,具體如圖2-14所示。上電延時(shí)20ms功能設(shè)置延時(shí)37us顯示狀態(tài)設(shè)置清屏延時(shí)1.52ms輸入方式設(shè)置返回圖2-14LCD

22、初始化流程圖2.LCD顯示程序設(shè)計(jì)LCD顯示程序的設(shè)計(jì)一般先要確定LCD的初始化、光標(biāo)定位、確定顯示字符后,LCD就可以按如圖2-15顯示。開始LCD初始化光標(biāo)定位顯示字符返回圖2-15LCD顯示程序流程圖第3章軟件設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì)可以分為幾個(gè)部分,首先編寫各個(gè)模塊的底層驅(qū)動(dòng)程序,而后是系統(tǒng)聯(lián)機(jī)調(diào)試,編寫上層系統(tǒng)程序。本系統(tǒng)軟件程序主要包括:液晶LCD1602的底層驅(qū)動(dòng)模塊、時(shí)鐘芯片DS1307的底層驅(qū)動(dòng)模塊、鍵盤掃描及鍵值處理模塊、鬧鐘模塊等。3.1系統(tǒng)流程圖系統(tǒng)的軟件主流程圖如圖3-1所示。開始初始化讀取時(shí)間信息液晶實(shí)時(shí)顯示是否有按鍵鍵值處理啟動(dòng)鬧鈴鬧鈴工作NNY圖3-1主程序流程圖3.

23、2鍵盤處理模塊流程圖系統(tǒng)設(shè)制了四個(gè)按鍵,分別是功能設(shè)置、定值上升、定值下降和返回鍵。整個(gè)系統(tǒng)的軟件設(shè)計(jì)均采用C語言開發(fā),采用查詢的方式對(duì)按鍵狀態(tài)進(jìn)行掃描,確保系統(tǒng)的實(shí)時(shí)性。因此這些器件的底層程序均可以移植到其它系統(tǒng)中,這就是采用C語言開發(fā)的最大的優(yōu)點(diǎn)。鍵盤處理流程圖分別如圖3-2、3-3、3-4、3-5所示。設(shè)置日狀態(tài):+、不變實(shí)時(shí)顯示鍵掃描KEY4-ON計(jì)數(shù)值減1計(jì)數(shù)完畢計(jì)數(shù)完畢KEY2-ONKEY1-ONKEY1-ONKEY3-ON重裝初值實(shí)時(shí)顯示鍵掃描KEY2-ONKEY3-ONKEY4-ON計(jì)數(shù)值減1重裝初值調(diào)用設(shè)置小時(shí)函數(shù)YYYNNNNNNNNNYYYYYYY返回YNYY鍵掃描KEY

24、1-ONKEY4-ONKEY1-ONKEY2-ONKEY3-ON計(jì)數(shù)完畢計(jì)數(shù)值減1返回實(shí)時(shí)顯示鍵掃描KEY1-ONKEY4-ONKEY2-ONKEY3-ON計(jì)數(shù)值減1計(jì)數(shù)完畢重裝初值返回鍵掃描顯示設(shè)置日期返回YYYNNNNNNNN顯示設(shè)置時(shí)間鍵盤掃描/處理開始YYYYYN設(shè)置時(shí)狀態(tài):+、不變?cè)O(shè)置分狀態(tài):+、不變圖3-2時(shí)間設(shè)置模塊設(shè)置日態(tài):+、不變實(shí)時(shí)顯示鍵掃描KEY4-ON計(jì)數(shù)值減1計(jì)數(shù)完畢計(jì)數(shù)完畢KEY2-ONKEY1-ONKEY1-ONKEY3-ON重裝初值實(shí)時(shí)顯示鍵掃描KEY2-ONKEY3-ONKEY4-ON計(jì)數(shù)值減1重裝初值調(diào)用設(shè)置年函數(shù)YYYNNNNNNNNNYYYYYYY返回Y

25、NYY鍵掃描KEY1-ONKEY4-ONKEY1-ONKEY2-ONKEY3-ON計(jì)數(shù)完畢計(jì)數(shù)值減1返回實(shí)時(shí)顯示鍵掃描KEY1-ONKEY4-ONKEY2-ONKEY3-ON計(jì)數(shù)值減1計(jì)數(shù)完畢重裝初值返回鍵掃描顯示設(shè)置星期返回YYYNNNNNNNN顯示設(shè)置時(shí)間上接顯示日期YYYYYN設(shè)置年態(tài):+、不變?cè)O(shè)置月態(tài):+、不變圖3-3日期設(shè)置流程圖鍵掃描KEY4-ONKEY1-ONKEY2-ONKEY3-ON計(jì)數(shù)完畢計(jì)數(shù)值減1返回實(shí)時(shí)顯示鍵掃描KEY1-ONKEY4-ONKEY2-ONKEY3-ON計(jì)數(shù)值減1計(jì)數(shù)完畢重裝初值設(shè)置星期YYYYNNNNNNNNNY上接顯示星期YYY重裝初值NNY返回Y設(shè)置

26、星期狀態(tài):+、不變圖3-4星期設(shè)置流程圖Y A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y Y A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y Y A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y N A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y N A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y N A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y N A Y Y Y Y Y N N N N N N N N N N N N N N N N N N N Y Y Y Y A Y Y Y Y Y N N N N N N N N N N N N N N

溫馨提示

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