LED電子鐘設(shè)計(jì)_第1頁
LED電子鐘設(shè)計(jì)_第2頁
LED電子鐘設(shè)計(jì)_第3頁
LED電子鐘設(shè)計(jì)_第4頁
LED電子鐘設(shè)計(jì)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、LED電子鐘設(shè)計(jì)*大學(xué)課程設(shè)計(jì)任務(wù)書課程單片機(jī)課程設(shè)計(jì)題目LED電子鐘設(shè)計(jì)專業(yè) 測控技術(shù)與儀器姓名 *學(xué)號*一、任務(wù)設(shè)計(jì)一款基于AT89C51單片機(jī)的LED電子鐘,實(shí)現(xiàn)鐘表的時(shí)、分、秒顯示功能。二、設(shè)計(jì)要求1 利用單片機(jī)AT89C51和LED數(shù)碼管設(shè)計(jì)一個(gè)數(shù)字時(shí)鐘。2 在6位數(shù)碼管上顯示當(dāng)前時(shí)間。顯示格式“時(shí)時(shí)分分秒秒”。3 同樣,在數(shù)碼管上顯示出當(dāng)前日期。顯示格式“年年(后兩位)月月日日” 用按鍵在時(shí)間顯示和日期顯示之間切換。4 實(shí)現(xiàn)年月日,時(shí)分秒的調(diào)整。三、參考資料1 萬光毅單片機(jī)實(shí)驗(yàn)與實(shí)踐教程M.北京航空航天大學(xué)出版社,2005.1.2 張毅剛.單片機(jī)原理及應(yīng)用M.高等教育出版社,200

2、3:160-190.3 Philips .74HC595 .datasheet.Philips Semiconductors .2003 Jun 25.4 李光飛.單片機(jī)課程設(shè)計(jì)指導(dǎo)M.北京:北京航空航天大學(xué)出版社,2007. 金炯泰,金奎煥.如何使用KEIL編譯器M.北京航空航天大學(xué)出版社,2002.完成期限指導(dǎo)教師 專業(yè)負(fù)責(zé)人*30年*月*目錄第1章緒論3.1.1 LED電子鐘概述 3.1.2 LED電子時(shí)鐘技術(shù)狀況3.1.3本設(shè)計(jì)任務(wù)4.第2章總體方案論證與設(shè)計(jì)5.2.1 LED顯示電子時(shí)鐘設(shè)計(jì)思路 5.2.2 時(shí)鐘系統(tǒng)方案論證5.2.3元件清單6.第3章系統(tǒng)硬件設(shè)計(jì) 7.3.1 單片機(jī)

3、控制系統(tǒng) 7.3.2 各部分功能的實(shí)現(xiàn)7.第4章系統(tǒng)的軟件設(shè)計(jì)104.1 軟件主要完成功能 104.2 程序設(shè)計(jì)104.3軟件設(shè)計(jì)的主要流程.0第5章系統(tǒng)調(diào)試與測試結(jié)果分析135.1 系統(tǒng)調(diào)試135.2 測試結(jié)果14結(jié)論15參考文獻(xiàn)16附錄1程序17附錄2仿真效果圖 25第1章緒論在電子技術(shù)飛速發(fā)展的推動(dòng)下,現(xiàn)代電子產(chǎn)品幾乎滲透了社會(huì)的各個(gè)領(lǐng)域, 有力地推動(dòng)了社會(huì)生產(chǎn)力的發(fā)展和社會(huì)信息化程度的提高,同時(shí)也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快。電子鐘已成為人們?nèi)粘I?活中必不可少的必需品,廣泛用于個(gè)人家庭以及辦公室等公共場所, 給人們的生 活、學(xué)習(xí)、工作、娛樂帶來極大的方便

4、。特別是基于LED光源設(shè)計(jì)的電子鐘更是得到蓬勃發(fā)展。LED光源因具有節(jié)能、環(huán)保、長壽命、安全、響應(yīng)快、體積 小、色彩豐富、發(fā)光效率高、可控性好等優(yōu)點(diǎn),被認(rèn)為是節(jié)電降能耗的最佳實(shí)現(xiàn) 途徑。并廣泛的應(yīng)用于公交汽車,商店,學(xué)校和銀行等公共場合的時(shí)間顯示、定 時(shí)、計(jì)時(shí)等。1.1 LED電子鐘概述1957年,世界上第一個(gè)電子表問世,從而奠定了電子鐘的基礎(chǔ),電子鐘開 始迅速發(fā)展起來。現(xiàn)代的電子鐘是基于單片機(jī)的一種計(jì)時(shí)工具, 采用延時(shí)程序產(chǎn) 生一定的時(shí)間中斷,用于一秒的定義,通過計(jì)數(shù)方式進(jìn)行滿六十秒分鐘進(jìn)一, 滿 六十分小時(shí)進(jìn)一,滿二十四小時(shí)小時(shí)清零。從而達(dá)到計(jì)時(shí)的功能,是人們?nèi)粘I?活不可缺少的工具。采用

5、單片機(jī)為中心的電子鐘編程靈活, 便于電子鐘功能的擴(kuò)充,即可用該電 子鐘發(fā)出各種控制信號,精確度高等特點(diǎn),同時(shí)可以用該電子鐘發(fā)出各種控制信 號。1.2 LED電子時(shí)鐘技術(shù)狀況為了將時(shí)間在LED數(shù)碼管上顯示,可采用靜態(tài)顯示法和動(dòng)態(tài)顯示法,由于 靜態(tài)顯示法需要譯碼器,數(shù)據(jù)鎖存器等較多硬件,所以可采用動(dòng)態(tài)顯示法實(shí)現(xiàn) LED顯示,通過對每位數(shù)碼管的依次掃描,使對應(yīng)數(shù)碼管亮,同時(shí)向該數(shù)碼管送 對應(yīng)的字碼,使其顯示數(shù)字。由于數(shù)碼管掃描周期很短,由于人眼的視覺暫留效 應(yīng),使數(shù)碼管看起來總是亮的,從而實(shí)現(xiàn)了各種顯示。除此之外,時(shí)分顯示采用 動(dòng)態(tài)掃描,以降低對單片機(jī)端口數(shù)的要求,同時(shí)也降低系統(tǒng)的功耗。1.2.1

6、LED動(dòng)態(tài)顯示的原理數(shù)碼管的動(dòng)態(tài)顯示利用視覺暫留作用,使得人眼看到的是靜態(tài)的不變的顯示,視覺暫留時(shí)間約為0.01秒,因而每次顯示的時(shí)間間距要比較短。首先向LED顯示器數(shù)據(jù)端口發(fā)送第一個(gè)8位數(shù)據(jù)。此時(shí)只有一位低電平而其 他口都為高電平,因此只有LED數(shù)碼管顯示該數(shù)碼,讓其顯示1ms。然后可以發(fā) 送第二個(gè)數(shù)據(jù),同時(shí)應(yīng)使其對應(yīng)的位碼為低電平且保證其他位為高電平。依次類推,對各顯示器進(jìn)行掃描,顯示器分時(shí)輪流工作。雖然只有一個(gè)顯示器顯示,但 由于人的視覺暫留現(xiàn)象我們?nèi)詴?huì)感覺所有的顯示器都在同時(shí)顯示。它的優(yōu)點(diǎn)是硬件電路簡單,占用較少的I/O 口,但其傳送速度相對較慢。采用此方法,除了單 片機(jī)以外,沒用到其

7、他芯片。由數(shù)碼管的顯示原理,再考慮到數(shù)碼管上顯示的數(shù)字對應(yīng)與一個(gè)八位的二進(jìn) 制數(shù),09 共十個(gè),把顯示這些數(shù)對應(yīng)的數(shù)碼管段信息存到程序存儲器的 TABLE表中,將DPTR乍為指針,用程序分配的地址單元分別存儲實(shí)際的時(shí)分秒、 年月日的數(shù)字,把存儲的數(shù)字用 DIV指令分出高低位,作為偏移量,這樣,程 序中通過查表,就把實(shí)際的數(shù)字和數(shù)碼管中顯示的數(shù)字對應(yīng)起來了。1.3本設(shè)計(jì)任務(wù)利用單片機(jī)AT89C51和7段LED數(shù)碼管設(shè)計(jì)一個(gè)數(shù)字時(shí)鐘。(2) 在6位數(shù)碼管上顯示當(dāng)前時(shí)間。顯示格式“時(shí)時(shí)分分秒秒”。(3) 在6位數(shù)碼管上顯示當(dāng)前日期。顯示格式“年年(后兩位)月月日日” 。用按鍵在時(shí)間顯示和日期顯示之間

8、切換。(4) 實(shí)現(xiàn)年月日,時(shí)分秒的調(diào)整。第2章總體方案論證與設(shè)計(jì)本系統(tǒng)采用單片機(jī)AT89C51為LED顯示屏的控制核心,系統(tǒng)主要包括LED 驅(qū)動(dòng)模塊、按鍵輸入模塊等。下面對各模塊的設(shè)計(jì)逐一進(jìn)行論證比較。2.1 LED顯示電子時(shí)鐘設(shè)計(jì)思路按照系統(tǒng)的設(shè)計(jì)功能要求,本時(shí)鐘系統(tǒng)的設(shè)計(jì)必須采用單片機(jī)軟件系統(tǒng)實(shí) 現(xiàn),用單片機(jī)的自動(dòng)控制能力配合按鍵控制,來控制時(shí)鐘的調(diào)整及顯示。2.2時(shí)鐘系統(tǒng)方案論證2.2.1單片機(jī)的選擇對于單片機(jī)的選擇,如果用8031系列,由于它沒有內(nèi)部RAM,系統(tǒng)又需要 大量內(nèi)存存儲數(shù)據(jù),因而不可用;51系列單片機(jī)的ROM為4K,對于我們設(shè)計(jì) 的系統(tǒng)可能有點(diǎn)?。?2系列單片機(jī)與51系列的

9、結(jié)構(gòu)一樣,而ROM擴(kuò)大為8K, 對我們設(shè)計(jì)系統(tǒng)提供充足的空間進(jìn)行功能的擴(kuò)展。 再有51系列單片機(jī)與52系列 的單片機(jī)價(jià)格差不多。但此次 51的內(nèi)存足夠我們使用了,因此,我們選擇 51 系列的單片機(jī)。2.2.2顯示系統(tǒng)方案比較方案1:用液晶1602顯示。方案2:用LED數(shù)碼管顯示。時(shí)鐘和溫度的顯示可以用LED,價(jià)格便宜。而且LED數(shù)碼管能顯示簡單的 設(shè)計(jì)的系統(tǒng),與我們設(shè)計(jì)要求相符,因此我們選擇方案2。2.2.3鍵盤控制方案的選擇方案1:購買集成鍵盤,采用矩陣形式連接。方案2:購買單個(gè)復(fù)位開關(guān)做成鍵盤。I/O 口對于我們的設(shè)計(jì)綽綽有余。通常我們選用價(jià)格便宜單個(gè)復(fù)位開關(guān)做成 鍵盤。在本系統(tǒng)的電路設(shè)計(jì)

10、方框圖如圖2-1所示,它由三部分組成(1) 控制部分主芯片采用單片機(jī) AT89C51。(2) 顯示部分采用LED數(shù)碼管實(shí)現(xiàn)時(shí)鐘顯示。(3) 時(shí)鐘調(diào)節(jié)部分使用按鍵來控制。圖2-1系統(tǒng)總原理圖2.3元件清單電子鐘元件清單如表2-1所示。表2-1電子鐘元器件清單元件名稱規(guī)格型號數(shù)量(個(gè))單片機(jī)AT89C511時(shí)鐘芯片DS130216位一體的共陰LED顯示器7SEG-MPX6-CC-BLUE1晶振12MHz2電容30pF2電容22 g F1按鍵BUTTON6電阻3001電阻1K1LED燈LED-RED1排阻RESPACK-81第3章系統(tǒng)硬件設(shè)計(jì)3.1單片機(jī)控制系統(tǒng)本次智能儀器設(shè)計(jì)時(shí)鐘電路,使用了 AT

11、C89C51單片機(jī)芯片控制電路和單片 機(jī)DS1302時(shí)鐘芯片,單片機(jī)控制電路簡單且省去了很多復(fù)雜的線路,使得電路 簡明易懂,使用鍵盤鍵上的按鍵來調(diào)整時(shí)鐘的時(shí)、分、秒,年、月、日同時(shí)使用 匯編語言程序來控制整個(gè)時(shí)鐘顯示,使得編程變得更容易,這樣通過三個(gè)模塊: 鍵盤、芯片、顯示屏即可滿足設(shè)計(jì)要求。3.2各部分功能的實(shí)現(xiàn)3.2.1 控制部分(AT89C51)單片機(jī)采用51系列單片機(jī)。由ATMEL公司生產(chǎn)的AT89C51是一種低功耗、 高性能CMOS8位微控制器,具有4K在系統(tǒng)可編程Flash存儲器。單片機(jī)的可 擦除只讀存儲器可以反復(fù)擦除100次。使用Atmel公司咼密度非易失性存儲器 技術(shù)制造,與工

12、業(yè) MCS-51產(chǎn)品指令和引腳完全兼容。在單芯片上,擁有靈巧 的8位CPU和在線系統(tǒng)可編程Flash,使得AT89C51為眾多嵌入式控制應(yīng)用系 統(tǒng)提供高靈活、有效的解決方案。AT89C51具有以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash, 128字節(jié)RAM,8位雙向I/O 口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電 路??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù) 工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停 止,直到下一個(gè)中斷或硬件復(fù)位為止。而且,它還具有一個(gè)看門狗(WDT)定時(shí)

13、/計(jì)數(shù)器,如果程序沒有正常工作,就會(huì)強(qiáng)制整個(gè)系統(tǒng)復(fù)位,還可以在程序陷 入死循環(huán)的時(shí)候,讓單片機(jī)復(fù)位而不用整個(gè)系統(tǒng)斷電,從而保護(hù)你的硬件電路。 AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。3.2.2 DS1302時(shí)鐘芯片DS1302為達(dá)拉斯公司的一種實(shí)時(shí)時(shí)鐘芯片,主要特點(diǎn)是采用串行數(shù)據(jù)傳輸, 可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。323單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)主要由復(fù)位電路,晶振電路,電源等幾部分組成。(1) 復(fù)位電路復(fù)位電路有兩種方式:上電復(fù)位和按鈕復(fù)位,我們主要用按鈕復(fù)位方式。如 圖3 -1所示。圖3-1 復(fù)位電路圖(2) 晶振電路單片機(jī)

14、系統(tǒng)里都有晶振,在單片機(jī)系統(tǒng)里晶振作用非常大,全程叫晶體振蕩 器,他結(jié)合單片機(jī)內(nèi)部電路產(chǎn)生單片機(jī)所需的時(shí)鐘頻率,單片機(jī)晶振提供的時(shí)鐘頻率越高,那么單片機(jī)運(yùn)行速度就越快,單片接的一切指令的執(zhí)行都是建立在單 片機(jī)晶振提供的時(shí)鐘頻率。在通常工作條件下,普通的晶振頻率絕對精度可達(dá)百 萬分之五十。高級的精度更高。有些晶振還可以由外加電壓在一定范圍內(nèi)調(diào)整頻 率,稱為壓控振蕩器(VCO)。晶振用一種能把電能和機(jī)械能相互轉(zhuǎn)化的晶體在 共振的狀態(tài)下工作,以提供穩(wěn)定,精確的單頻振蕩。單片機(jī)晶振的作用是為系統(tǒng)提供基本的時(shí)鐘信號。通常一個(gè)系統(tǒng)共用一個(gè)晶 振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,

15、 而通過 電子調(diào)整頻率的方法保持同步。晶振通常與鎖相環(huán)電路配合使用,以提供系統(tǒng)所需的時(shí)鐘頻率。如果不同子 系統(tǒng)需要不同頻率的時(shí)鐘信號,可以用與同一個(gè)晶振相連的不同鎖相環(huán)來提供。選取原則:電容取30PF,晶振為12MHz。晶振模塊如圖3-2所示。圖3-2晶振模塊原理圖(3) 電源AT89C51單片機(jī)的供電電源是+5V的直流電。(4) EA 非/Vpp 腳我們沒有用外部擴(kuò)展ROM,因此EA非/Vpp為高電平,即接+5V電源。如圖3-3所示。PSENALE圖3-3 EA腳電路圖3.2.4鍵盤控制系統(tǒng)的設(shè)計(jì)按鍵需要5個(gè),分別實(shí)現(xiàn)為時(shí)間、日期調(diào)整,時(shí)間、日期的加和時(shí)間、日期 的更換等功能。用單片機(jī)的5個(gè)

16、I/O 口接收控制信號,其電路如圖3-4所示'圖3-4 按鍵調(diào)時(shí)電路通過控制鍵來控制所要調(diào)節(jié)的是時(shí)、分、還是秒。在控制鍵按下后LED中會(huì)在相應(yīng)的位置出現(xiàn)光標(biāo),這時(shí)在通過加數(shù)鍵或減數(shù)鍵來控制時(shí)分秒的加或減。3.2.5 LED顯示電路如圖3-5所示圖3-5 顯示電路第4章系統(tǒng)的軟件設(shè)計(jì)4.1軟件主要完成功能(1)顯示時(shí)間程序用軟件調(diào)節(jié)時(shí)間,通過程序的調(diào)節(jié),最后用 LED數(shù)碼管實(shí)現(xiàn)時(shí)鐘。(2)調(diào)節(jié)時(shí)間程序按鍵調(diào)節(jié)時(shí)間,能實(shí)現(xiàn)時(shí)、分、秒,年、月、日的調(diào)節(jié)。4.2程序設(shè)計(jì)首先分配地址空間,并對程序進(jìn)行初始化。然后對按鍵動(dòng)作進(jìn)行判斷,如果 P2.3按下,顯示日期,此時(shí)若有調(diào)整鍵按 下,則對日期進(jìn)行

17、調(diào)整,此時(shí)定時(shí)器仍在工作,只是不顯示當(dāng)前時(shí)間。循環(huán)定時(shí),秒加1,并判斷秒是否到了 60,若到了秒清零,分加1,若不到, 返回繼續(xù)循環(huán)。同理,處理分鐘和小時(shí),處理小時(shí)時(shí),把 60換成24。24小時(shí)到 了之后,DATE (日)加1,此時(shí),需要對MONTH (月份)判斷,小月時(shí),DATE 到31就進(jìn)位(即記到30),大月時(shí),DATE到32再進(jìn)位(顯示到31),對于2 月,還要判斷年份,平年到29( 28天),瑞年到30(29天)。然后是月進(jìn)位,年 加1。4.3軟件設(shè)計(jì)的主要流程4.3.1系統(tǒng)總的流程圖主要功能是負(fù)責(zé)時(shí)間的顯示,通過寫地址和寫數(shù)據(jù)來實(shí)現(xiàn)時(shí)間的調(diào)節(jié)和控制,最后通過調(diào)用顯示子程序顯示出來如

18、圖4-1所示上圖所示,為流程圖。然后根據(jù)流程圖進(jìn)行程序設(shè)計(jì),這樣的程序比較有條 理,各部的程序可以分別進(jìn)行調(diào)試和檢查。有利于后面對程序進(jìn)行修改和調(diào)試, 特別值得注意的是,程序在編寫的過程中,要有鮮明的思想,不能主次不分,主 程序與子程序混在一起,要編定出主程序, 再根據(jù)設(shè)計(jì)的要求編寫子程序,有利 于后面的調(diào)試修改。4.3.2地址分配如下SECEQU30H;當(dāng)前秒MINEQU31HHOUREQU32HDAYEQU33HMONTHEQU34HWEEK2EQU35HYEAREQU36HA_BITEQU20HB_BITEQU21HC_BITEQU22HD_BITEQU23HE_BITEQU24HF_B

19、ITEQU25HAB_BITEQU26H;秒/日CD_BITEQU27H分/月EF_BITEQU28H;時(shí)/年DS1302_ADDREQU 5EHDS1302DATAEQU 5FH4.3.3 I/O 口T_RST BIT P3.2T_CLK BIT P3.3T_IO BIT P3.4H_ADJ BIT P2.0M_ADJ BIT P2.1S_ADJ BIT P2.2DT_SET BIT P2.3STR BIT P2.4;實(shí)時(shí)時(shí)鐘復(fù)位線引腳 ;實(shí)時(shí)時(shí)鐘時(shí)鐘線引腳 ;實(shí)時(shí)時(shí)鐘數(shù)據(jù)線引腳 ;時(shí)/年調(diào)整 ;分/月調(diào)整 ;秒/日調(diào)整 ;時(shí)間/日期選擇 ;啟動(dòng)走時(shí)第5章系統(tǒng)調(diào)試與測試結(jié)果分析5.1 系統(tǒng)調(diào)

20、試根據(jù)系統(tǒng)設(shè)計(jì)方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和 軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計(jì)中采用模塊設(shè)計(jì)法, 所以方便對各電路模塊功能進(jìn) 行逐級測試。5.1.1硬件調(diào)試對各個(gè)模塊的功能進(jìn)行調(diào)試,主要調(diào)試各模塊能否實(shí)現(xiàn)指定的功能。5.1.2軟件調(diào)試軟件調(diào)試采用單片機(jī)仿真器及微機(jī), 將編好的程序進(jìn)行調(diào)試,主要是檢查語 法錯(cuò)誤。把編寫完的源程序放在 KEIL軟件中,先自行檢查下程序是否有誤,更 改有誤的部分,再創(chuàng)建工程進(jìn)行程序一個(gè)一個(gè)地調(diào)試,把調(diào)試結(jié)果顯示有誤的部分找出,檢查錯(cuò)誤的原因然后再進(jìn)行更改, 更改后再進(jìn)行調(diào)試,再找出錯(cuò)誤進(jìn)行 更改,依次循環(huán)進(jìn)行,至到程序調(diào)試成功為止。5.1.3硬件軟

21、件聯(lián)調(diào)將調(diào)試好的硬件和軟件進(jìn)行聯(lián)調(diào),主要調(diào)試系統(tǒng)的實(shí)現(xiàn)功能。5.1.4仿真仿真是把KEIL中生成的源程序找出,并加載到單片機(jī)內(nèi),檢查原理圖的設(shè) 計(jì)是否有誤,更改有誤的部分,然后進(jìn)行仿真,看仿真結(jié)果是否正確,如果不正 確或者不顯示結(jié)果,就再此檢查原理圖進(jìn)行更改直到能順利地仿真出結(jié)果。通過KEIL和硬件仿真平臺ProteuS勺聯(lián)合,可以將設(shè)計(jì)效果仿真出來,根據(jù) 效果,有目的的改變設(shè)計(jì),優(yōu)化程序。5.2測試結(jié)果調(diào)試結(jié)果如圖5-1圖5-1程序測試結(jié)果最終生成HE)文件,加載到單片機(jī)中。如圖5-2圖5-2 生成HEX文件經(jīng)過幾天的努力,本次課程設(shè)計(jì)的任務(wù) 一一基于單片機(jī)控制LED數(shù)碼管顯 示的電子時(shí)鐘的

22、設(shè)計(jì)已經(jīng)完成。本系統(tǒng)以AT89C51為核心部件,利用軟件編程, 通過鍵盤控制和液晶顯示實(shí)現(xiàn)了時(shí)鐘功能,能實(shí)現(xiàn)題目的基本要求。盡量做到硬件電路簡單穩(wěn)定,充分發(fā)揮軟件編程的優(yōu)點(diǎn),減小因元器件精度不夠和環(huán)境因素 引起的誤差。由于時(shí)間有限和本身知識水平的發(fā)揮,我們認(rèn)為本系統(tǒng)還有需要改 進(jìn)和提高的地方,例如選用更高精度的元器件, 硬件電路更加精確穩(wěn)定,軟件測 量算法進(jìn)一步的改進(jìn)與完善等。由于我們設(shè)計(jì)的LED電子鐘的重點(diǎn)在于軟件程序的設(shè)計(jì), 利用proteus設(shè)計(jì) 電路原理圖,利用KEIL軟件進(jìn)行程序編寫與調(diào)試。在軟件設(shè)計(jì)時(shí),由于對單片 機(jī)的中斷系統(tǒng)不是很了解,所以出現(xiàn)了許多不必要的麻煩。就拿編程來說,由

23、于沒有處理好子程序的返回和時(shí)鐘中斷程序時(shí)間就導(dǎo)致時(shí)鐘運(yùn)行到指定的時(shí)間后 不打轉(zhuǎn)而是繼續(xù)走,由于沒有把握好計(jì)數(shù)、 顯示等一些細(xì)節(jié)地方,而導(dǎo)致時(shí)鐘計(jì) 數(shù)不準(zhǔn)確、不能正常顯示時(shí)間等一系列相當(dāng)嚴(yán)重的問題。在經(jīng)過反復(fù)檢查、分析、調(diào)試之后,從中發(fā)現(xiàn)了中斷時(shí)的數(shù)值設(shè)置不太適合等一系列問題,經(jīng)過自己的反復(fù)修改、調(diào)試和驗(yàn)證,最終才得以解決達(dá)到設(shè)計(jì)的要求。在整個(gè)設(shè)計(jì)過程中,程 序的調(diào)試是其中一個(gè)非常重要的環(huán)節(jié)。 其中有一點(diǎn)是值得我們注意的:在程序設(shè) 計(jì)之前一定要知道設(shè)計(jì)要求,要清楚地知道本程序所有內(nèi)容以及程序的執(zhí)行過 程,據(jù)此畫出本程序的流程圖,然后根據(jù)流程圖進(jìn)行程序設(shè)計(jì), 這樣的程序比較 有條理,各部的程序可以

24、分別進(jìn)行調(diào)試和檢查。 有利于后面對程序進(jìn)行修改和調(diào) 試,特別值得注意的是,程序在編寫的過程中,要有鮮明的思想,不能主次不分, 主程序與子程序混在一起,不知道哪個(gè)是主,哪個(gè)是次,要編定出主程序,再根 據(jù)設(shè)計(jì)的要求編寫子程序,使整個(gè)程序嚴(yán)密,有條理。有利于后面的調(diào)試修改。參考文獻(xiàn)1 萬光毅單片機(jī)實(shí)驗(yàn)與實(shí)踐教程M.北京航空航天大學(xué)出版社,2005.1.2 張毅剛.單片機(jī)原理及應(yīng)用M.高等教育出版社,2003:160-190.3 Philips .74HC595 .datasheet.Philips Semico nductors .2003 Jun 25.4 周潤景.基于Proteus的電路與單片機(jī)

25、仿真系統(tǒng)設(shè)計(jì)與仿真M.北京航空航天 大學(xué)出版社,2005. 金炯泰,金奎煥.如何使用KEIL編譯器M.北京航空航天大學(xué)出版社,2002. 李光飛.單片機(jī)課程設(shè)計(jì)指導(dǎo)M.北京:北京航空航天大學(xué)出版社,2007.7 朱定華.單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)M.北京:北方交通大學(xué)出版社,2002.11.8 張迎新.單片微型計(jì)算機(jī)原理、應(yīng)用接口技術(shù)M.北京:國防工業(yè)出版社,2004.1.9 何利民.單片機(jī)高級教程M.北京:航空航天大學(xué)出版社,2000.8.10 謝維成.單片機(jī)原理及應(yīng)用與51程序設(shè)計(jì)M.北京:清華大學(xué)出版社,2006.8.11 余永權(quán).單片機(jī)在控制系統(tǒng)中的應(yīng)用M.北京:電子工業(yè)出版社,2003

26、.10.12 李朝青.單片機(jī)原理及接口技術(shù)M.北京:航空航天大學(xué)出版社,2000.3.13 夏繼強(qiáng).單片機(jī)實(shí)驗(yàn)與實(shí)踐教程M.北京:航空航天大學(xué)出版社,2001.11.14 侯玉寶.基于Proteus的51系列單片機(jī)的設(shè)計(jì)、調(diào)試與仿真M.電子工業(yè)出 版社,2008.270288.15 張友德.單片微型機(jī)原理應(yīng)用與實(shí)驗(yàn)M.上海:復(fù)旦大學(xué)出版社,2003.225 256.附錄1程序SEC EQU 30H;當(dāng)前秒MIN EQU 31HHOUREQU32HDAY EQU 33HMONTHEQU1 34HWEEK2EQU35HYEAREQU36HA_BITEQU20HB_BITEQU21HC_BITEQU

27、22HD_BITEQU23HE_BITEQU24HF_BITEQU25HAB_BITEQU26H;秒/日CD_BITEQU27H;分 /月EF_BITEQU 28H;時(shí)/年DS1302_ADDREQU5EHDS1302_DATAEQU5FHT_RSTBITP3.2;實(shí)時(shí)時(shí)鐘復(fù)位線引腳T_CLKBITP3.3;實(shí)時(shí)時(shí)鐘時(shí)鐘線引腳T_IO BIT P3.4;實(shí)時(shí)時(shí)鐘數(shù)據(jù)線引腳H_ADJBITP2.0;時(shí)/年調(diào)整M_ADJBITP2.1;分/月調(diào)整S_ADJBITP2.2;秒/日調(diào)整DT_SETBITP2.3;時(shí)間/日期選擇STR BIT P2.4;啟動(dòng)走時(shí)ORG 00HAJMP MAINORG 3

28、0HMAIN: MOV SP,#64HMOV YEAR,#11H;上電預(yù)置日期、時(shí)間MOV MONTH,#12H;2011 12 12 09:30:00MOV DAY,#12HMOV HOUR,#09HMOV MIN,#30HMOV SEC,#00HMAIN1:LCALL KEYJB F0,MAIN10 ;F0=1,開始走時(shí)。走時(shí)前寫,不讀。走時(shí)后讀,不寫LCALL WR1302AJMP MAIN2MAIN10:LCALL RD1302MAIN2: JB 7FH,YMDMOV EF_BIT,HOURMOV CD_BIT,MINMOV AB_BIT,SECAJMP MAIN20YMD: MOV

29、EF_BIT,YEARMOV CD_BIT,MONTHMOV AB_BIT,DAYMAIN20: MOV A,EF_BITMOV B,#10HDIV ABMOV E_BIT,BMOV F_BIT,AMOV A,CD_BITMOV B,#10HDIV ABMOV C_BIT,BMOV D_BIT,AMOV A,AB_BITMOV B,#10HDIV ABMOV A_BIT,BMOV B_BIT,ALCALL DISPAJMP MAIN1KEY: ACALL DISP;按鍵子程序KEY_SET: JB DT_SET,KEY_HACALL DISPJNB DT_SET,$-2CPL 7FHCPL P

30、2.5;點(diǎn)亮日期設(shè)定/顯示LEDAJMP RTKEY_H: JB H_ADJ,KEY_MACALL DISPJNB H_ADJ,$-2AJMP H_ADDKEY_M: JB M_ADJ,KEY_SACALL DISPJNB M_ADJ,$-2AJMP M_ADDKEY_S: JB S_ADJ,KEY_STACALL DISPJNB S_ADJ,$-2AJMP S_ADDKEY_ST: JB STR,RTACALL DISPJNB STR,$-2AJMP K_STRRT: RETH_ADD: JB 7FH,Y_ADD ;7FH為日期/時(shí)間切換鍵標(biāo)志。1為年月日MOV A,HOURADD A,#0

31、1HDA ACJNE A,#24H,H_ADD1MOV A,#0H_ADD1: MOV HOUR,AAJMP RTY_ADD: MOV A,YEARADD A,#01HDA ACJNE A,#20H,Y_ADD1MOV A,#0Y_ADD1: MOV YEAR,AAJMP RTM_ADD: JB 7FH,MO_ADDMOV A,MINADD A,#01HDA ACJNE A,#60H,M_ADD1MOV A,#0M_ADD1: MOV MIN,AAJMP RTMO_ADD: MOV A,MONTHADD A,#01HDA ACJNE A,#13H,MO_ADD1MOV A,#1MO_ADD1:

32、 MOV MONTH,AAJMP RTS_ADD: JB 7FH,D_ADDMOV A,SECADD A,#01HDA ACJNE A,#60H,S_ADD1S_ADD1: MOV SEC,AAJMPRTD_ADDMOV A,DAYADDA,#01HDA ACJNEA,#32H,D_ADD1MOVA,#01HD_ADD1: MOV DAY,AAJMPRTK_STRMOVDS1302_ADDR,#80H;開始振蕩MOVDS1302_DATA,#00HLCALLWRITEMOVDS1302_ADDR,#8EH;禁止寫入MOVDS1302_DATA,#80HLCALLWRITESETBF0AJMPR

33、TWR1302:MOV DS1302_ADDR,#8EHMOVDS1302_DATA,#00H;允許寫1302LCALLWRITEMOVDS1302_ADDR,#80HMOVDS1302_DATA,#80H;1302停止振蕩LCALLWRITEMOVDS1302_ADDR,#8CH;年寫入1302MOVDS1302_DATA,YEARLCALLWRITEMOVDS1302_ADDR,#88H;月寫入1302MOVDS1302_DATA,MONTHLCALLWRITEMOVDS1302_ADDR,#86H;日寫入1302MOVDS1302_DATA,DAYLCALLWRITEMOVDS1302_

34、ADDR,#84H;時(shí)寫入1302MOVDS1302_DATA,HOURLCALLWRITEMOVDS1302_ADDR,#82H;分寫入1302MOVDS1302_DATA,MINLCALLWRITEMOVDS1302_ADDR,#82H;秒寫入1302MOVDS1302_DATA,MINLCALLWRITERETWRITE:CLR T CLKNOPSETB T_RSTNOPMOV A,DS1302_ADDRMOV R4,#8WRITE1: RRC ANOP NOP CLR NOP NOP NOP MOV NOP NOP NOP SETB NOP NOP DJNZ CLR NOP MOV M

35、OVT CLKTO,CT CLKR4,WRITE1 T CLKA,DS1302_DATAR4,#8WRITE2: RRC A NOP CLRNOPNOPMOVNOPNOPNOPSETBNOPNOPDJNZCLRRETT CLKT_IO,CT CLKR4,WRITE2 T RSTRD1302:MOV DS1302_ADDR,#8DHLCALL READMOV YEAR,DS1302_DATAMOV DS1302_ADDR,#8BHLCALLREADMOVWEEK2,DS1302_DATAMOVDS1302_ADDR,#89HLCALLREADMOVMONTH,DS1302_DATAMOVDS13

36、02_ADDR,#87HLCALLREADMOVDAY,DS1302_DATAMOVDS1302_ADDR,#85HLCALLREADMOVHOUR,DS1302_DATAMOVDS1302_ADDR,#83HLCALLREADMOVMIN,DS1302_DATAMOVDS1302_ADDR,#81HLCALLREADMOVSEC,DS1302_DATARETREAD:CLR T_CLKNOPNOPSETBT_RSTNOPMOVA,DS1302_ADDRMOVR4,#8READ1: RRC AMOVTO,CNOPNOPNOPSETBT_CLKNOPNOPNOPCLR T_CLKNOPNOPDJNZR4,READ1MOVR4,#8READ2:CLR T_CLKNOPNOPNOPMOVC,T_IONOPNOPNOPNOPN

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論