電子信息工程畢業(yè)設(shè)計(jì)---基于at89s51單片機(jī)的數(shù)字萬年歷設(shè)計(jì)_第1頁
已閱讀1頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  基于AT89S51單片機(jī)的數(shù)字萬年歷設(shè)計(jì)</p><p>  摘要:本設(shè)計(jì)以數(shù)字集成電路技術(shù)為基礎(chǔ),單片機(jī)技術(shù)為核心。軟件設(shè)計(jì)采用模塊化結(jié)構(gòu),匯編語言編程。系統(tǒng)通過LCD顯示數(shù)據(jù),可以顯示公歷日期(年、月、日、時(shí)、分、秒)以及星期。在內(nèi)容安排上首先描述系統(tǒng)硬件工作原理,著重介紹了各硬件接口技術(shù)和各個(gè)接口模塊的功能;其次,詳細(xì)的闡述了程序的各個(gè)模塊和實(shí)現(xiàn)過程。</p><p

2、>  關(guān)鍵詞:單片機(jī);萬年歷;DS1302;LCM1602</p><p>  Design of digital calendar based on MCU AT89S51</p><p>  Abstract: The design is based on digital integrate circuit, microcontroller technology is the c

3、ore of the system. The software design uses module structure and adapts microcontroller assemble language. The system can display calendar date, including year, month, week, hour, minute, second and week. The work princi

4、ple of the system is discussed in this paper, hardware interface and module function are reported primarily in the system. Every module of program is described explicitly. </p><p>  Keywords: MCU ; Calendar

5、; DS1302; LCM1602</p><p>  基于AT89S51單片機(jī)的數(shù)字萬年歷設(shè)計(jì)</p><p><b>  摘要1</b></p><p><b>  1 設(shè)計(jì)要求2</b></p><p>  2 方案論證與設(shè)計(jì)2</p><p>  2.1 用可編

6、程邏輯器件設(shè)計(jì)2</p><p>  2.1.1控制器部分3</p><p>  2.2 顯示部分的方案選擇3</p><p>  2.3 系統(tǒng)設(shè)計(jì)3</p><p>  2.3.1 晶體振蕩器電路………………………………………………………………………………..3</p><p>  2.3.2 分頻器電路

7、………………………………………………………………………………..3</p><p>  2.3.3 時(shí)間計(jì)數(shù)器電路…………………………………………………………………………..3</p><p>  2.3.4 時(shí)鐘電路……………………………………………………………………………………..4</p><p>  2.3.5 復(fù)位電路 …………………………………………

8、…………………………………………. 4</p><p>  2.3.6復(fù)位電路的可靠性設(shè)計(jì)………………………………………………………………………...4</p><p>  2.3.7 按鍵部分………………………………………………………………………………………..5</p><p>  2.3.8蜂鳴器電路………………………………………………………………………………

9、……5 </p><p>  3.3.9 根據(jù)各模塊的功能互相連接成電子萬年歷的控制電路……………………………………5</p><p><b>  3各硬件介紹6</b></p><p>  3.1 AT89S51的引腳說明7</p><p>  3.2 發(fā)光二極管指示電路設(shè)計(jì)…………………………………………………

10、…………………………8</p><p>  3.3 蜂鳴器電路設(shè)計(jì)…………………………………………………………………………8</p><p>  3.3.1 蜂鳴器的介紹………………………………………………………………………..9</p><p>  3.3.2 蜂鳴器的結(jié)構(gòu)原理…………………………………………………………………..9</p><

11、p>  3.4 LCM1602簡介…………………………………………………………………………9 </p><p>  3.5 DS1302 簡介10</p><p>  4 系統(tǒng)硬件設(shè)計(jì)所需的器材……………………………………………………………….11</p><p>  5 系統(tǒng)軟件總體設(shè)計(jì)11</p><p>  6 系統(tǒng)功能介紹

12、……………………………………………………………………………. 12</p><p>  6.1 按鍵介紹13</p><p>  6.2星期計(jì)算13</p><p>  7 主程序流程圖14</p><p>  8 安裝制作 ……………………………………………………………………………….14</p><p> 

13、 9 調(diào)試與檢測安全 ……………………………………………………………………….14</p><p><b>  10結(jié)束語15</b></p><p><b>  前言</b></p><p>  電子萬年歷是實(shí)現(xiàn)對年,月,日,時(shí),分,秒數(shù)字顯示的計(jì)時(shí)裝置,廣泛用于個(gè)人家庭,車站, 碼頭,辦公室,銀行大廳等場所,成為人

14、們?nèi)粘I钪械谋匦杵?。?shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度遠(yuǎn)遠(yuǎn)超過老式鐘表。鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,在此基礎(chǔ)上完成的萬年歷精度高,功能易于擴(kuò)展??蓴U(kuò)展成為諸如定時(shí)自動(dòng)報(bào)警、按時(shí)自動(dòng)打鈴、時(shí)間程序自動(dòng)控制、定時(shí)廣播、自動(dòng)起閉路燈、定時(shí)開關(guān)烘箱、通斷動(dòng)力設(shè)備、甚至各種定時(shí)電氣的自動(dòng)啟用等電路。所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究數(shù)字時(shí)鐘及擴(kuò)大其應(yīng)用有著非常現(xiàn)實(shí)的意義。本設(shè)計(jì)就是數(shù)字時(shí)鐘

15、簡單的擴(kuò)展應(yīng)用。</p><p><b>  1 設(shè)計(jì)要求</b></p><p>  本設(shè)計(jì)準(zhǔn)備實(shí)現(xiàn)的功能: </p><p>  (1) 顯示公歷日期功能(年、月、日、時(shí)、分、秒以及星期) </p><p>  (2) 可通過按鍵切換年、月、日及時(shí)、分、秒的顯示狀態(tài)</p><p>  (3)

16、 可隨時(shí)調(diào)校年、月、日或時(shí)、分、秒</p><p>  (4) 可每次增減一進(jìn)行時(shí)間調(diào)節(jié)</p><p>  (5) 可動(dòng)態(tài)完整顯示年份,實(shí)現(xiàn)真正的萬年歷顯示</p><p><b>  2 方案論證與設(shè)計(jì)</b></p><p>  2.1控制器部分方案論證 </p><p>  方案一:可采用

17、ALTERA公司的FLEX10K系列PLD器件。設(shè)計(jì)起來結(jié)構(gòu)清晰,各個(gè)模塊,從硬件上設(shè)計(jì)起來相對簡單,控制與顯示的模塊間的連接也會比較方便。但是考慮到本設(shè)計(jì)的特點(diǎn),EDA在功能擴(kuò)展上比較受局限,而且EDA占用的資源也相對多一些。從成本上來講,用可編程邏輯器件來設(shè)計(jì)也沒有什么優(yōu)勢。</p><p>  方案二:凌陽16位單片機(jī)有豐富的中斷源和時(shí)基。它的準(zhǔn)確度相當(dāng)高,并且C語言和匯編兼容的編程環(huán)境也很方便來實(shí)現(xiàn)一些遞

18、歸調(diào)用。I/O口功能也比較強(qiáng)大,方便使用。用凌陽16位單片機(jī)做控制器最有特色的就是它的可編程音頻處理,可完成語音的錄制播放和識別。這些都方便對設(shè)計(jì)進(jìn)行擴(kuò)展,使設(shè)計(jì)更加完善。成本也相對低一些。但是,在控制與顯示的結(jié)合上有些復(fù)雜,顯示模組資源相對有限,而且單片機(jī)的穩(wěn)定性不是很高,而且就需要完成萬年歷這個(gè)不太復(fù)雜的設(shè)計(jì)可以不必用凌陽16位單片機(jī)來完成,采用51單片機(jī)既能夠?qū)崿F(xiàn)既定功能,成本也不高。綜合考慮最后選擇用51單片機(jī)來作為中心控制器件

19、。</p><p>  硬件控制電路主要用了AT89S51芯片處理器、LCD顯示器等。根據(jù)各自芯片的功能互相連接成電子萬年歷的控制電路。軟件控制程序主要有主控程序、電子萬年歷的時(shí)間控制程序、時(shí)間顯示及星期顯示程序等組成。主控程序中對整個(gè)程序進(jìn)行控制,進(jìn)行了初始化程序及計(jì)數(shù)器、還有鍵盤功能程序、以及顯示程序等工作,時(shí)間控制程序是電子萬年歷中比較重要的部分。時(shí)間控制程序體現(xiàn)了年、月、日、時(shí)、分、秒及星期的計(jì)算方法。時(shí)

20、間控制程序主要是定時(shí)器0計(jì)時(shí)中斷程序每隔10ms中斷一次當(dāng)作一個(gè)計(jì)數(shù),每中斷一次則計(jì)數(shù)加1,當(dāng)計(jì)數(shù)100次時(shí),則表示1秒到了,秒變量加1,同理再判斷是否1分鐘到了,再判斷是否1小時(shí)到了,再判斷是否1天到了,再判斷是否1月到了,再判斷是否1年到了,若計(jì)數(shù)到了則相關(guān)變量清除0。先給出一般年份的每月天數(shù)。如果是閏年,第二個(gè)月天數(shù)不為28天,而是29天。再用公式s=v-1 +〔(y-1/4〕-〔(y-1/100〕+〔(y-1/400〕+ d計(jì)算

21、當(dāng)前顯示日期是星期幾,當(dāng)調(diào)節(jié)日期時(shí),星期自動(dòng)的調(diào)整過來。閏年的判斷規(guī)則為,如果該年份是4或100的整數(shù)倍或者是400的整數(shù)倍,則為閏年;否則為非閏年。在我們的這個(gè)設(shè)計(jì)中</p><p>  圖1 單片機(jī)控制電路</p><p>  Fig.1 SCM Control circuit </p><p>  2.2 顯示部分的方案論證</p><p

22、>  方案一:采用8段數(shù)碼管雖經(jīng)濟(jì)實(shí)惠,但操作比液晶顯示來說略顯繁瑣。</p><p>  方案二:液晶顯示方式。液晶顯示效果出眾,可以運(yùn)用菜單項(xiàng)來方便操作,比較簡單,所以,最后選擇液晶顯示方案。</p><p><b>  圖2 液晶顯示電路</b></p><p>  Fig.2 lcm1602 circuit</p>

23、<p><b>  2.3 系統(tǒng)設(shè)計(jì)</b></p><p>  2.3.1 晶體振蕩器電路 </p><p>  晶體振蕩器電路給數(shù)字鐘提供一個(gè)頻率穩(wěn)定準(zhǔn)確的32768Hz的方波信號,可保證數(shù)</p><p>  字鐘的走時(shí)準(zhǔn)確及穩(wěn)定。不管是指針式的電子鐘還是數(shù)字顯示的電子鐘都使用了晶體</p><p>&

24、lt;b>  蕩器電路。</b></p><p>  圖3 DS1302電路</p><p>  Fig.3 ds1302 circuit</p><p>  2.3.2 分頻器電路</p><p>  分頻器電路將高頻方波信號經(jīng)分頻后得到1Hz的方波信號供秒計(jì)數(shù)器進(jìn)行計(jì)數(shù),分頻器實(shí)際上也就是計(jì)數(shù)器。</p>

25、<p>  2.3.3 時(shí)間計(jì)數(shù)器電路 </p><p>  時(shí)間計(jì)數(shù)電路由秒個(gè)位和秒十位計(jì)數(shù)器,分個(gè)位和分十位計(jì)數(shù)器及時(shí)個(gè)位和時(shí)十位計(jì)數(shù)器電路構(gòu)成,其中秒個(gè)位和秒十位計(jì)數(shù)器,分個(gè)位和分十位計(jì)數(shù)器為60進(jìn)制計(jì)數(shù)器而根據(jù)設(shè)計(jì)要求,時(shí)個(gè)位和時(shí)十位計(jì)數(shù)器為12進(jìn)制計(jì)數(shù)器。</p><p>  2.3.4 時(shí)鐘電路</p><p>  內(nèi)部時(shí)鐘電路如圖所示,在X

26、TAL1和XTAL2引腳上外接定時(shí)元件,內(nèi)部振蕩電路就產(chǎn)生自激振蕩。定時(shí)元件通常石英晶體和電容組成的并聯(lián)諧振回路,晶體振蕩器選擇12MHZ,電容采用30PF。</p><p><b>  圖4 時(shí)鐘電路</b></p><p>  Fig.4 Clock circuit</p><p>  2.3.5 復(fù)位電路 影響單片機(jī)系統(tǒng)運(yùn)行穩(wěn)

27、定性的因素可大體分為外因和內(nèi)因兩部分: (1)外因 射頻干擾,它是以空間電磁場的形式傳遞在機(jī)器內(nèi)部的導(dǎo)體(引線或零件引腳)感生出相應(yīng)的干擾,可通過電磁屏蔽和合理的布線/器件布局衰減該類干擾; 電源線或電源內(nèi)部產(chǎn)生的干擾,它是通過電源線或電源內(nèi)的部件耦合或直接傳導(dǎo),可通過電源濾波、隔離等措施來衰減該類干擾 。</p><p> ?。?)內(nèi)因 振蕩源的穩(wěn)定性,主要由起振時(shí)間頻率穩(wěn)定度和占

28、空比穩(wěn)定度決定 起振時(shí)間可由電路參數(shù)整定穩(wěn)定度受振蕩器類型溫度和電壓等參數(shù)影響復(fù)位電路的可靠性。2.3.6復(fù)位電路的可靠性設(shè)計(jì)</p><p>  復(fù)位是單片機(jī)的初始化操作。單片機(jī)啟運(yùn)運(yùn)行時(shí),都需要先復(fù)位,其作用是使CPU和系統(tǒng)中其他部件處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。因而,復(fù)位是一個(gè)很重要的操作方式。但單片機(jī)本身是不能自動(dòng)進(jìn)行復(fù)位的,必須配合相應(yīng)的外部電路才能實(shí)現(xiàn)。 復(fù)位電路的基本功能是

29、:系統(tǒng)上電時(shí)提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時(shí)才撤銷復(fù)位信號,以防電源開 關(guān)或電源插頭分-合過程中引起的抖動(dòng)而影響復(fù)位。</p><p>  圖5 RC復(fù)位電路</p><p>  Fig.5 RC Reset Circuit </p><p>  2.3.7 按鍵部分</p><p

30、>  本設(shè)計(jì)總的用了四個(gè)按扭開關(guān)作為鍵盤,其中一個(gè)是復(fù)位鍵,另三個(gè)中的其中兩個(gè)是調(diào)整時(shí)間增加、減少的鍵,第三個(gè)是切換年、月、日及時(shí)、分、秒的顯示狀態(tài)并在所切換的顯示狀態(tài)下配合加減兩個(gè)鍵調(diào)整時(shí)間。</p><p><b>  圖6 按鍵電路</b></p><p>  Fig.6 Key circuit</p><p>  2.3.8蜂鳴

31、器電路</p><p>  利用AT89S51單片機(jī)的IO口控制一個(gè)8550的三極管,三極管控制蜂鳴器的電源通斷。從而實(shí)現(xiàn)輸出聲音。</p><p><b>  圖7 蜂鳴器電路</b></p><p>  Fig.7 Buzzer circuit </p><p>  3.3.9 根據(jù)各模塊的功能互相連接成電子萬年歷的

32、控制電路</p><p>  圖8 控制模塊示意圖</p><p>  Fig.8 Control Module Sketch</p><p><b>  3各硬件介紹</b></p><p>  3.1 AT89S51的引腳說明</p><p>  AT89S51系列單片機(jī)中有PDIP,PL

33、CC,TQFP多種封裝形式。本設(shè)計(jì)采用的是PDIP封裝40管腳的單片機(jī),各引腳如圖2-2所示。</p><p>  圖9 AT89S51的PDIP封裝引腳圖</p><p>  Fig.9 AT89S51</p><p>  40個(gè)引腳中, 4組8位共32個(gè)I/O口,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,現(xiàn)在對這些引腳的功能加以說明:</p>

34、<p> ?。?)Pin9:RESET/Vpd復(fù)位信號復(fù)用腳,當(dāng)AT89S51通電,時(shí)鐘電路開始工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)開始復(fù)位。而RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址單元開始執(zhí)行程序。</p><p>  (2)Pin29:PESN當(dāng)訪問外部程序存儲器時(shí),此腳輸出負(fù)脈沖選通信號,外部程序存儲器則把指令數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行。<

35、/p><p> ?。?)Pin30:ALE/PROG 地址鎖存允許信號端。單片機(jī)上電后,ALE引腳不斷向外輸出正脈沖信號, ALE信號可以用作對外輸出時(shí)鐘或定時(shí)信號。</p><p>  (4)Pin31:EA/Vpp程序存儲器的內(nèi)外部選通線,89S51單片機(jī),內(nèi)置有4kB的程序存儲器,當(dāng)EA為高電平并且程序地址小于4kB時(shí),讀取內(nèi)部程序存儲器指令數(shù)據(jù),而超過4kB地址則讀取外部指令數(shù)據(jù)。如E

36、A為低電平,則不管地址大小,一律讀取外部程序存儲器指令。</p><p>  3.2 發(fā)光二極管指示電路設(shè)計(jì)</p><p>  發(fā)光二極管簡稱為LED。由鎵(Ga)與砷(AS)、磷(P)的化合物制成的二極管,當(dāng)電子與空穴復(fù)合時(shí)能輻射出可見光,因而可以用來制成發(fā)光二極管, 在電路及儀器中作為指示燈,或者組成文字或數(shù)字顯示。磷砷化鎵二極管發(fā)紅光,磷化鎵二極管發(fā)綠光,碳化硅二極管發(fā)黃光?! ?/p>

37、它是半導(dǎo)體二極管的一種,可以把電能轉(zhuǎn)化成光能;常簡寫為LED。發(fā)光二極管與普通二極管一樣 是由一個(gè)PN結(jié)組成,也具有單向?qū)щ娦?。?dāng)給發(fā)光二極管加上正向電壓后,從P區(qū)注入到N區(qū)的空穴和由N區(qū)注入到P區(qū)的電子,在PN結(jié)附近數(shù)微米內(nèi)分別與N 區(qū)的電子和P區(qū)的空穴復(fù)合,產(chǎn)生自發(fā)輻射的熒光。不同的半導(dǎo)體材料中電子和空穴所處的能量狀態(tài)不同。當(dāng)電子和空穴復(fù)合時(shí)釋放出的能量多少不同,釋放出的能 量越多,則發(fā)出的光的波長越短。常用的是發(fā)紅光、綠光或黃光的

38、二極管。</p><p>  設(shè)計(jì)中,我使用了1個(gè)發(fā)光二極管作為電源的指示。為了避免供給發(fā)光二極管的電流過大,使用1K的電阻進(jìn)行限流。</p><p>  3.3 蜂鳴器電路設(shè)計(jì)</p><p>  3.3.1 蜂鳴器的介紹  1.蜂鳴器的作用 蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計(jì)算機(jī)、打印機(jī)、復(fù)印機(jī)、報(bào)警器、電子玩具、汽車電子設(shè)備、

39、電話機(jī)、定時(shí)器等電子產(chǎn)品中作發(fā)聲器件?! ?.蜂鳴器的分類 蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。  3.蜂鳴器的電路圖形符號 蜂鳴器在電路中用字母“H”或“HA”(舊標(biāo)準(zhǔn)用“FM”、“LB”、“JD”等)表示。3.3.2 蜂鳴器的結(jié)構(gòu)原理  1.壓電式蜂鳴器 壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。有的壓電式蜂鳴器外殼上還裝有發(fā)光二極管?! 《嘀C振蕩器由晶體管或集成電路構(gòu)成。當(dāng)接

40、通電源后(1.5~15V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5kHZ的音頻信號,阻抗匹配器推動(dòng)壓電蜂鳴片發(fā)聲?! 弘姺澍Q片由鋯鈦酸鉛或鈮鎂酸鉛壓電陶瓷材料制成。在陶瓷片的兩面鍍上銀電極,經(jīng)極化和老化處理后,再與黃銅片或不銹鋼片粘在一起?! ?.電磁式蜂鳴器 電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動(dòng)膜片及外殼等組成?! 〗油娫春?,振蕩器產(chǎn)生的音頻信號電流通過電磁線圈,</p><p>  3

41、.4 LCM1602簡介 </p><p>  圖11 LCM1602</p><p>  Fig.11 LCM1602</p><p>  LCM1602采用標(biāo)準(zhǔn)的16腳接口,其中: 第1腳:VSS為地電源 第2腳:VDD接5V正電源 第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地電源時(shí)對比最高,對比度過高時(shí)會產(chǎn)生“鬼影”,使用時(shí)可以

42、通過一個(gè)10K的電位器調(diào)整對比度 第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。 第5腳:RW為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RSRW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可讀忙信號,當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù).第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。 第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。 第15~16腳

43、:空腳 </p><p>  3.5 DS1302 簡介</p><p>  DS1302是美國DALLAS公司推出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)RAM,采用SPI三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號和RAM數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年,一個(gè)月小與31天時(shí)可以自動(dòng)調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬達(dá)2.5~5.

44、5V。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對后背電源進(jìn)行涓細(xì)電流充電的能力。DS1302的外部引腳分配如圖1所示及內(nèi)部結(jié)構(gòu)如圖2所示。DS1302用于數(shù)據(jù)記錄,特別是對某些具有特殊意義的數(shù)據(jù)點(diǎn)的記錄上,能實(shí)現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時(shí)間同時(shí)記錄,因此廣泛應(yīng)用于測量系統(tǒng)中。</p><p>  圖12  DS1302的外部引腳分配</p><p>  Fig

45、.12 DS1302 external pin assignment </p><p>  圖13   DS1302的內(nèi)部結(jié)構(gòu)</p><p>  Fig.13 The internal structure of the DS1302</p><p><b>  各引腳的功能為:</b></p>&

46、lt;p>  Vcc1:主電源;Vcc2:備份電源。當(dāng)Vcc2>Vcc1+0.2V時(shí),由Vcc2向DS1302供電,當(dāng)Vcc2< Vcc1時(shí),由Vcc1向DS1302供電。SCLK:串行時(shí)鐘,輸入; I/O:三線接口時(shí)的雙向數(shù)據(jù)線;CE:輸入信號,在讀、寫數(shù)據(jù)期間,必須為高。該引腳有兩個(gè)功能:第一,CE開始控制字訪問移位寄存器的控制邏輯;其次,CE提供結(jié)束單字節(jié)或多字節(jié)數(shù)據(jù)傳輸?shù)姆椒ā?lt;/p>

47、<p>  4 系統(tǒng)硬件設(shè)計(jì)所需的器材</p><p>  5V電源 3V電源</p><p>  AT89S51單片機(jī)1個(gè)</p><p><b>  液晶顯示器1個(gè)</b></p><p>  DS1302 1個(gè)</p><p>  電阻 1 K的2個(gè)、4.7K的2個(gè)4.7歐排

48、阻</p><p><b>  8550三極管</b></p><p>  晶振12M的一個(gè) 32768K的一個(gè)</p><p>  電容(30P的兩個(gè))</p><p><b>  蜂鳴器1個(gè)</b></p><p><b>  LED二極管1個(gè)</b>

49、;</p><p><b>  22μf電容1個(gè)</b></p><p><b>  輕觸開關(guān)5個(gè)</b></p><p>  5 系統(tǒng)軟件總體設(shè)計(jì) </p><p>  系統(tǒng)的軟件設(shè)計(jì)采用匯編語言,對單片機(jī)進(jìn)行編程實(shí)現(xiàn)各項(xiàng)功能。程序在WindowsXP環(huán)境下采用LCA51軟件編寫。軟件控制程序主要

50、有主控程序、電子萬年歷的時(shí)間控制程序組成。主控程序中對整個(gè)程序進(jìn)行控制,進(jìn)行了初始化程序及計(jì)數(shù)器、還有鍵盤功能程序、以及顯示程序和時(shí)間控制程序是電子萬年歷中比較重要的部分。時(shí)間控制程序體現(xiàn)了年、月、日、時(shí)、分、秒及星期的計(jì)算方法。時(shí)間控制程序主要是定時(shí)器0計(jì)時(shí)中斷程序每隔10ms中斷一次當(dāng)作一個(gè)計(jì)數(shù),每中斷一次則計(jì)數(shù)加1,當(dāng)計(jì)數(shù)100次時(shí),則表示1秒到了,秒變量加1,同理再判斷是否1分鐘到了,再判斷是否1小時(shí)到了,再判斷是否1天到了,再

51、判斷是否1月到了,再判斷是否1年到了,若計(jì)數(shù)到了則相關(guān)變量清除0。先給出一般年份的每月天數(shù)。如果是閏年,第二個(gè)月天數(shù)不為28天,而是29天。閏年的判斷規(guī)則為,如果該年份是4或100的整數(shù)倍或者是400的整數(shù)倍,則為閏年;否則為非閏年。 </p><p>  5.1 公歷與星期的換算方法</p><p>  在現(xiàn)行公歷中,歷年的長度365天(平年)或者366天(閏年)都不是七的整數(shù)倍,所以日

52、期與星期之間沒有明顯的對應(yīng)關(guān)系。一般情況下,不看日歷牌就無法知道某月某日是星期幾。不過,它們之間還是有一定規(guī)律可循的,只要經(jīng)過簡單計(jì)算,或者查找表格,就可以知道與任何日期相對應(yīng)的星期數(shù)。這里列出兩種方法供讀者選用。 </p><p> ?。?)公式法:設(shè)y麥?zhǔn)竟陻?shù),d表示從1月1日起算的日數(shù)。</p><p>  首先求出1月0日(即上一年12月31日)的星期序數(shù),然后與日數(shù)d相加,其

53、和用7除,余數(shù)就是答案。為了推導(dǎo)公式,我們想一想,第一年1月0日的星期序數(shù)與第二年1月0日的星期序數(shù)有什么關(guān)系?平年365天,等于52個(gè)星期零1天,所以第二年1月0日的星期序數(shù)比第一年的多l(xiāng),但這個(gè)l已包含在y中了,因?yàn)榈诙甑哪陻?shù)y比第一年大1;閏年366天,等于52個(gè)星期零二天,所以第二年1月0日的星期序數(shù)等于第一年(閏年)的星期序數(shù)加2,除了y中包含的1外,還需加修正值1。根據(jù)這些道理我們可以推得三個(gè)公式,將式中S用7除,余數(shù)就表

54、示星期幾。</p><p>  從公元1900年1月1日到公元210I年1月1日之間這201年,可用公式:</p><p>  S = y-1900 + [(y-1901)/4] + d 方括號表示取商的整數(shù)部分,對于1900年~1904年這五年方括號值為0。這個(gè)公式是這樣來的:1900年1月0日(即1899年12月31日)是星期天。這年是平年,以后直到2100年前都是每隔4年一閏,閏

55、年多出的那一天,影響到下一年1月0日的星期序數(shù),并不影響閏年本身,閏年產(chǎn)生的修正值應(yīng)加到下一年上去,所以〔(y-1901)/4〕中,計(jì)算時(shí)用190l而不是1900。</p><p>  例:求2000年12月31日是星期幾?</p><p>  2000年是閏年,從1月1日算起,12月31日是第366天,所以d=366。根據(jù)公式有:</p><p>  S=2000

56、-1900 +〔(2000-1901)/4〕+ 366</p><p> ?。?00 +〔99/4〕+ 366</p><p>  =l00 + 24 + 366</p><p><b>  =490</b></p><p>  490為7的整數(shù)倍,即余數(shù)為0,所以2000年12月31日為星期日。</p>

57、<p> ?。?)更普遍的公式為:</p><p>  s=v-1 +〔(y-1/4〕-〔(y-1/100〕+〔(y-1/400〕+ d</p><p>  對于這個(gè)公式,我們不妨這樣考慮:公歷400年中有97個(gè)閏年,共365x 400 + 97 =146.097天,146,097=20,871× 7,即正好是7的整數(shù)倍。這表明某年某月某日所對應(yīng)的星期序數(shù)與四百年前同月

58、同日所對應(yīng)的星期序數(shù)完全相同。前邊例中我們已算出公元2001年1月0日(即2000年12月31日)是星期日,那么,公元1601年、1201年……以及公元1年的1月0日都是星期日。假如每個(gè)歷年都是365天的話,那么,由于公元1年1月0日是星期日,只要公式S=y(tǒng)-1 + d就可以了,但實(shí)際上閏年是366天,所以我們必須根據(jù)閏年的有關(guān)規(guī)定進(jìn)行修正?!?y-1)/4〕是四年一閨產(chǎn)生的修正值。如果只取這一個(gè)修正項(xiàng),就會多修正以至造成錯(cuò)誤,這是因?yàn)?/p>

59、,根據(jù)公歷的規(guī)定,逢百之年雖然能被4整除,卻不一定是閏年,所以必須減去多修正的值,它等于〔(y-1/100)〕。如果逢百之年都是平年,只要這兩個(gè)修正項(xiàng)也就可以了??墒?,公元年數(shù)能被400整除的年(當(dāng)然也一定能被100整除)仍是閏年,所以還必須加上〔(y-1/400)〕。這個(gè)修正項(xiàng)才行。方括號中之所以用y-1而不用y,是由于修正值是加到閏年的下一</p><p><b>  6 系統(tǒng)功能介紹 </b

60、></p><p><b>  6.1 按鍵處理</b></p><p>  當(dāng)系統(tǒng)在正常顯示狀態(tài)下要進(jìn)行調(diào)整時(shí),按一下切換鍵進(jìn)入按鍵處理中斷程序,并且此時(shí)默認(rèn)的是調(diào)整年,在液晶顯示器上顯示N,此時(shí)按加或減按鈕可以進(jìn)行加減調(diào)整,若再按一下切換鍵,則跳到月上顯示Y,同樣可以調(diào)整加減,同樣的道理,進(jìn)入日(R)、時(shí)(S)、分(F)、秒(M)的調(diào)整,最后再按一下切換鍵時(shí)

61、退出中斷程序,星期系統(tǒng)自動(dòng)的調(diào)整過來。</p><p><b>  7.2星期計(jì)算</b></p><p><b>  星期計(jì)算流程框圖</b></p><p><b>  圖15 星期計(jì)算</b></p><p>  Fig.15 Weeks diagram</p>

62、;<p><b>  7 主程序流程圖</b></p><p><b>  圖16 主流程框圖</b></p><p>  Fig.16 The process flow chart </p><p><b>  8 安裝制作 </b></p><p>  8.

63、1 清理元器件,重點(diǎn)辯別認(rèn)清電阻器阻值及相應(yīng)代號,對電阻、電容、發(fā)光二極管、三極管、電源變壓器等要用萬用表一一檢測。</p><p>  8.2 安裝時(shí),電阻器、整流二極管采用臥式插裝,并近貼電路板;瓷介電容器、電解電容器、三極管等采用立式插裝,也要近貼電路板。發(fā)光二極管安裝時(shí)可不講極性,因?yàn)槠涔╇婋娐窞榻涣麟娫?,其余有極性元件:如電解電容器、整流二極管、穩(wěn)壓二極管、三極管、集成電路等必須按正確的極性插裝,否

64、則電路不會正常工作。 </p><p>  8.3 焊完元器件后,在覆銅面剪掉多余元器件的引線,工具最好用斜口鉗,可防止因剪線而使覆銅皮損壞。 </p><p>  8.4 焊接完后,請認(rèn)真對照電路原理圖、安裝圖檢查電路板上有無漏焊、錯(cuò)焊、短路、斷路等錯(cuò)誤現(xiàn)象,確認(rèn)無誤后才能通電。</p><p>  9 調(diào)試與檢測安全 </p><p&g

65、t;  調(diào)試與檢測過程中,要接觸各種電路和儀器設(shè)備,特別是各種電源及高壓電路,高壓大容量電容器等,為保護(hù)檢測人員安全,防止測試設(shè)備和檢測線路的損壞,除嚴(yán)格遵守一般安全規(guī)程外,還必須注意調(diào)試和檢測工作中制定的安全措施。</p><p>  9.1 供電安全:</p><p>  大部分故障檢測過程中都必須加電,所以調(diào)試檢測過的設(shè)備儀器,最終都要加電檢驗(yàn)。抓住供電安全就抓住了安全的關(guān)鍵。&l

66、t;/p><p> ?。?) 調(diào)試檢測場所應(yīng)有漏電變化開關(guān)和過載保護(hù)裝置,電源開關(guān),電源線及插頭插座必須符合安全用電要求,</p><p>  任何帶電導(dǎo)體不得裸露。檢測場所的總電源開關(guān),應(yīng)放在明顯且易于操作的位置,并設(shè)置相應(yīng)的指示燈。</p><p> ?。?) 注意交流調(diào)壓器的接法。檢測中往往使用交流調(diào)壓器進(jìn)行加載和調(diào)整試驗(yàn)。由于普通調(diào)壓器輸入與輸出端不隔離,必

67、須正確區(qū)分相線與零線的接法,如圖一中使用二線插頭座,容易接錯(cuò)線,使用三線插頭座則不會接錯(cuò)。</p><p>  (3) 在調(diào)試檢測場所最好裝備隔離變壓器,一方面可以保證檢測人員操作安全,另一方面防止檢測設(shè)備故障與電網(wǎng)之間相互影響。隔離變壓器之后,再接調(diào)壓器,則無論如何接線均可保證安全。</p><p>  9.2 測量儀器安全:</p><p> ?。?) 所用

68、測試儀器要定期檢查,儀器外殼及可接觸部分不應(yīng)帶電。凡金屬外殼儀器,必須使用三線插頭座,并保證外殼良好接地。電源線一般不超過2米,并具有雙重絕緣。</p><p> ?。?) 測試儀器通電時(shí)若保險(xiǎn)絲燒斷,應(yīng)更換同規(guī)格熔絲管后再通電,若第二次再燒斷則必須停機(jī)檢查。</p><p>  (3) 功耗較大的儀器(>500W)斷電后應(yīng)冷卻一段時(shí)間再通電(一般3~10分鐘,功耗越大時(shí)間越長),避免燒斷

69、保險(xiǎn)絲或儀器零件。</p><p>  9.3 幾個(gè)必須記住的安全操作觀念:</p><p> ?。?) 不通電不等于不帶電。對大容量高壓電容只有進(jìn)行放電操作后才可以認(rèn)為不帶電。</p><p> ?。?) 斷開電源開關(guān)不等于斷開電源??赡芟嚓P(guān)部分仍然帶電,只有拔下電源插頭才可認(rèn)為是真正斷開電源。</p><p> ?。?) 電氣設(shè)備

70、和材料安全工作的壽命有限。無論最簡單的電氣材料,如導(dǎo)線、插頭插座,還是復(fù)雜的電子儀器,由于材料本身老化變質(zhì)及自然腐蝕等因素,安全工作的壽命是有限的,決不可無限制使用。各種電氣材料、零部件、設(shè)備儀器安全工作的壽命不等,但一般情況下,10年以上的零部件和設(shè)備就應(yīng)該考慮檢測更換,特別是與安全關(guān)系密切的部位。</p><p><b>  10結(jié)束語</b></p><p> 

71、 通過此項(xiàng)設(shè)計(jì)設(shè)計(jì),本系統(tǒng)能完成以下功能</p><p> ?。?)顯示公歷日期功能(年、月、日、時(shí)、分、秒以及星期)</p><p>  (2)可通過按鍵切換年、月、日及時(shí)、分、秒的顯示狀態(tài)</p><p>  (3)可隨時(shí)調(diào)校年、月、日或時(shí)、分、星期</p><p> ?。?)可每次增減一進(jìn)行時(shí)間調(diào)節(jié)</p><p&g

72、t; ?。?)可動(dòng)態(tài)完整顯示年份 </p><p><b>  參考資料:</b></p><p>  [1] 余錫存,曹國華.單片機(jī)原理及接口技術(shù)[M].西安電子科技大學(xué)出版社,2004年</p><p>  [2] 張志良, 主編 :《單片機(jī)原理及控制技術(shù)》(第2版).北京:機(jī)械工業(yè)出版社,2005</p><p>

73、;  [3] 余永權(quán), MCS-51系列單片機(jī)實(shí)用接口技術(shù)[M].北京:北京航空航天大學(xué)出版,1993</p><p>  [4] 余西存, 曹國華.單片機(jī)原理及接口技術(shù)[M].西安:西安電子科技大學(xué)出版,2000年 </p><p>  [5] 求是科技,單片機(jī)典型模塊設(shè)計(jì)實(shí)例導(dǎo)航[M].北京:人民郵電出版社,2004年5月</p><p>  [6] 張振

74、榮, 晉明武.MSC-51系列單片機(jī)原理及實(shí)用技術(shù). 人民郵電出版社,2000年</p><p>  [7] 吉雷, 主編 :《Protel99從入門到精通》.西安:西安電子科技大學(xué)出版社,2004 </p><p>  [8] G.Y. Xu,Electronic design,2000年 </p><p>  [9] Microcontroller hand

75、book. Inter Corp.1986</p><p>  [10] MCS-51 Family of Single Chip Microcomputers User’s Manual. Inter Corp. 1981</p><p><b>  致謝</b></p><p>  大學(xué)四年的學(xué)習(xí)生活即將結(jié)束樂,這篇論文作為我在校期間學(xué)習(xí)的

76、最后一份答卷,敬禮給各位老師。</p><p>  在大學(xué)這四年的學(xué)習(xí)和生活,我不僅學(xué)到了豐富的專業(yè)知識,更學(xué)到了各位老師人真工作、愛崗敬業(yè)、為人師表的優(yōu)良品質(zhì)。在此,謹(jǐn)向各位老師表示深深的敬意和謝意!尤其感謝我的指導(dǎo)老師,他在畢業(yè)設(shè)計(jì)過程中給予我極大的關(guān)心和幫助。從硬件制作、調(diào)試以及論文的完成都投入了他大量的心血。在課余時(shí)間還給我們講解有關(guān)硬件的重要知識,使我們在不僅掌握了自己的所設(shè)計(jì)東西的同時(shí),還對其它的知識

77、有了更深的了解。老師對待學(xué)生有如此的態(tài)度,令人敬佩。同時(shí)也感謝在畢業(yè)設(shè)計(jì)過程中給予我精神上的鼓勵(lì)和支持的同學(xué),在我遇到困難時(shí)盡其所能地為我排憂解難。</p><p>  感謝學(xué)校提供的優(yōu)越實(shí)驗(yàn)環(huán)境,使我能全身心的投入到我的設(shè)計(jì)中。當(dāng)查閱大量參考文獻(xiàn)后設(shè)計(jì)原理圖時(shí),感謝指導(dǎo)老師xx老師給我的仔細(xì)檢查和改正。在唐正明老師的幫助下對系統(tǒng)的方案進(jìn)行了論證,并對本系統(tǒng)不足進(jìn)行了修改。當(dāng)印制電路板生成后,感謝實(shí)驗(yàn)室老師的大力

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論