數(shù)字式電子鐘_第1頁(yè)
數(shù)字式電子鐘_第2頁(yè)
數(shù)字式電子鐘_第3頁(yè)
數(shù)字式電子鐘_第4頁(yè)
數(shù)字式電子鐘_第5頁(yè)
已閱讀5頁(yè),還剩9頁(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、遼 寧 工 業(yè) 大 學(xué)課程設(shè)計(jì)(論文)題目: 數(shù)字式電子鐘院(系): 信息科學(xué)與工程學(xué)院專業(yè)班級(jí): 測(cè)控 041學(xué) 號(hào): 040301009學(xué)生姓名: 史純陽(yáng)指導(dǎo)教師:教師職稱:起止時(shí)間:2007-06-042007-06-15課程設(shè)計(jì)(論文)任務(wù)及評(píng)語(yǔ)目 錄第1章 課程設(shè)計(jì)目的與要求 . 11.1 課程設(shè)計(jì)目的 . 11.2 課程設(shè)計(jì)的預(yù)備知識(shí) . 11.3 課程設(shè)計(jì)任務(wù) . 11.4 課程設(shè)計(jì)要求 . 1第2章 課程設(shè)計(jì)內(nèi)容 . 22.1元件方案論證: . 22.2 總體方案: . 22.3 主程序設(shè)計(jì) : . 32.3.1主程序有關(guān)說(shuō)明: . 42.3.2軟件部分: . 42.4鍵盤輸入

2、程序設(shè)計(jì) . 52.5顯示程序設(shè)計(jì) . 6參考文獻(xiàn) . 7第1章 課程設(shè)計(jì)目的與要求1.1 課程設(shè)計(jì)目的本課程的課程設(shè)計(jì)實(shí)際是測(cè)控技術(shù)及儀器專業(yè)學(xué)生學(xué)習(xí)完單片機(jī)與接口技術(shù)課程后,進(jìn)行的一次全面的綜合訓(xùn)練,其目的在于加深對(duì)單片機(jī)、單片機(jī)最小系統(tǒng)和單片機(jī)接口技術(shù)的認(rèn)識(shí)、理解和應(yīng)用,掌握單片機(jī)的應(yīng)用技術(shù)。1.2 課程設(shè)計(jì)的預(yù)備知識(shí)熟悉掌握單片機(jī)的原理及接口技術(shù)和相關(guān)的數(shù)字電路、模擬電路的知識(shí)。1.3 課程設(shè)計(jì)任務(wù)以單片機(jī)為核心,利用時(shí)鐘芯片DS1302作為實(shí)時(shí)時(shí)鐘的存儲(chǔ),設(shè)計(jì)單片機(jī)最小系統(tǒng),構(gòu)成數(shù)字式電子鐘,能夠?qū)崿F(xiàn)實(shí)時(shí)時(shí)鐘的顯示。1.4 課程設(shè)計(jì)要求1,實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘的顯示,12位顯示分為年,月,日

3、時(shí),分,秒;2,利用8279作為顯示驅(qū)動(dòng)器;3,設(shè)計(jì)2位鍵盤,能夠?qū)崿F(xiàn)修改時(shí)鐘參數(shù);4,設(shè)計(jì)單片機(jī)主程序,鍵盤輸入程序,顯示程序等;5,盡可能降低成本;6,課程設(shè)計(jì)字?jǐn)?shù)4000字;7,嚴(yán)禁相互抄襲;1第2章 課程設(shè)計(jì)內(nèi)容2.1 元件方案論證:在我的設(shè)計(jì)中我利用:(1)AT89C51作為核心部件,它將8031,8051等的ROM改為Flash使其具有改寫和掉電不丟失數(shù)據(jù)的功能這保證了數(shù)字鐘的工作可靠性。 (2)利用時(shí)鐘芯片DS1302其特點(diǎn):連線簡(jiǎn)單,DS1302與單片機(jī)之間能簡(jiǎn)單地利用SPI同步步的方式進(jìn)行通信。僅需要三根信號(hào)線。RES,I_,SCLK即可。顯示功能較全,它能顯示秒,分,時(shí),月

4、,日,年的信息。功耗底。因此選用它最加。(3)選用一片4-16譯碼器比選用兩片3-8譯碼器性價(jià)比高,降低了成本。2.2 總體方案:首先利用AT89C51作為單片機(jī)的核心,通過(guò)CLK數(shù)據(jù)線,地址線與時(shí)鐘芯片8279相連。但由于P0口數(shù)據(jù)線與地址線復(fù)用的需要。需用鎖存器74LS373將地址低8位鎖存起來(lái)。然后再與8279相連。這里用到了8279的SL0-SL3引腳。并用一個(gè)4-16譯碼器74LS154相連。獲得一12位的顯示器用于顯示結(jié)果。在8079的OUTA0-OUTB4端口接一驅(qū)動(dòng)電路并用RL0,RL1作為兩位鍵盤的輸入端口。其RL1作為自加1功能鍵,RL0作為循環(huán)選擇鍵。并以DS1302作為

5、時(shí)鐘芯片.圖2.2-1是AT89C51與DS1302相連示意圖. 圖2.1-2為總體框圖.1011302939383736353433322122232425262728圖2.2-12圖2.2-22.3 主程序設(shè)計(jì)主程序流程圖:32.3.1主程序有關(guān)說(shuō)明:(1)8279命令/狀態(tài)口地址:7FFFH(2)鍵盤采用中斷方式(3)LED的段選碼放在AT89C51內(nèi)RAM的30H-3CH(4)12個(gè)鍵值讀出后放在40H-4CH單元中。2.3.2軟件部分:主程序:MAIN:MOV SP,#63H ;設(shè)棧底MOV DPTR,#7FFFH ;指向命令/狀態(tài)口 MOV A,#0D1H ;清除命令MOVX DP

6、TR,A ;送入命令字WAIT:MOVX A,DPTR ;讀入狀態(tài)字JB ACC.7,WAIT ;等待清除MOV A,#2AH ;置分頻命令字 MOVX DPTR,A ;送入命令字MOV IE,#84H ;開(kāi)中斷LCALL DIR ;調(diào)用顯示子程序42.4鍵盤輸入程序設(shè)計(jì)在鍵盤輸入部分我采用的是中斷方式服務(wù)程序。通過(guò)外部中斷使CPU響應(yīng)并執(zhí)行相關(guān)功能。從而達(dá)到修改顯示器的顯示內(nèi)容。由于設(shè)計(jì)要求中要求運(yùn)用兩位鍵盤來(lái)控制修改顯示參數(shù)這一功能在KEY1子程序中實(shí)現(xiàn)。實(shí)現(xiàn)過(guò)程如圖2.3-2所示。鍵盤輸入中斷程序流程圖如圖2.4-1所示。鍵盤輸入中斷程序流程圖圖2.4-1軟件部分:鍵輸入中斷服務(wù)子程序如

7、下: KEY:PUSH PSW PUSH AMOV A,#40 MOV DPTR,#7FFFH MOVX DPTR,A MOV DPTR,#7FFEH MOVX A,DPTR LJMP KEY1KEYI:MOV n,#11B MOV A,0MOC R0,#29 MOV H,1圖2.4-2 FIFO RAM命令字 /狀態(tài)口/狀態(tài)口RAM的顯示值地址的前一位地址 H表高電平5;保護(hù)現(xiàn)場(chǎng);設(shè)置讀;指向命令;送入命令字;指向命令;讀入鍵值;轉(zhuǎn)鍵值處理程序;移位鍵移總次數(shù);存放在內(nèi);CJNE RL0,H,ST1 ;判斷移位鍵RL0是否需要修改CJNE RL1,H,ST2 ;判斷移位鍵RL1是否需要修改L

8、OOP:NOP ;若RL0,RL1鍵不改則單片機(jī)繼續(xù)查詢SJMP LOOP ;等待RL0或RL1的輸入ST1:INC AINC R0 ;指向存放在內(nèi)RAM的顯示值地址的首地址SJMP $ ;等待移位鍵或自加1鍵的輸入CJNE n,A,ST ;1判斷是否改完ST2:MOV B,A ;暫存A的內(nèi)容INC A ;在原值基礎(chǔ)上加1MOV R0,A ;將修改值從新復(fù)給R0MOV A,B ;送回原A值RET2.5顯示程序設(shè)計(jì)在次循環(huán)中通過(guò)對(duì)鍵入數(shù)值的修改使顯示器得到預(yù)期的顯示值。工作流程圖如圖2.4-1。圖2.5-1軟件部分:顯示子程序如下:DIR:MOV DPTR,#7FFFH ;指向命令/狀態(tài)口MOV

9、 A,#90H ;寫顯示命令字MOVX DPTR,A ;命令字送入MOV R0,#30H ;段選碼存放單元首址6MOV R7,#0CH ;置顯示12位的初值MOV DPTR,#7FFEH ;指向數(shù)據(jù)口地址LOOP:MOV A,R0 ;取顯示數(shù)據(jù)MOVX DPTR,A ;段選碼送顯示RAMINC R0 ;指向下一個(gè)段選碼 DJNZ R7,LOOP ;12個(gè)段選碼送完否RET ;子程序返回參考文獻(xiàn)1葉雨.單片機(jī)實(shí)用與實(shí)例.哈爾濱工業(yè)大學(xué)出版社,2003.42齊中英.單片機(jī)實(shí)用電路.北京:中國(guó)科技大學(xué)版社,2004.2。3 張先.單片機(jī)實(shí)例500.高等教育出版社,1999.44徐祥.單片機(jī)應(yīng)用.高等

10、教育出版社2006.55 黃合,陳華光.單片機(jī)應(yīng)用舉例.哈爾濱工業(yè)大學(xué)出版社2006.57附錄:Void DS1302Initial(void) ;DS1302初始化(在C語(yǔ)言下).Uchar ds1302st; ;ds1302的狀態(tài),0x55時(shí)不能進(jìn)行初始化 TIMERCLK=0; ;將同步時(shí)鐘SCLK置低TIMERRST=0; ;禁止對(duì)DS1302的讀寫訪問(wèn)DS1302st=readDS1302(0x0c1); ;讀取DS1302的RAM1單元中的標(biāo)志數(shù)據(jù) If(ds1302st!=0x55) ;判斷標(biāo)志數(shù)據(jù)不是0x55,則可以進(jìn)行初始化 WDT=WDT;write DS1302(0x8e

11、,0x00);write DS1302(0x82,0x00);write DS1302(0x84,0x16);write DS1302(0x86,0x19);WDT=WDT;write DS1302(0x88,0x09);write DS1302(0x8c,0x00);WDT=WDT;write DS1302(0x90,0x0a6);write DS1302(0x0c0,0x55);化write DS1302(0x80,0x00);MAIN:ORG 0040HLJMP STARTSTART:;MOV SP,#63HMOV DPTR,#7FFFHMOV A,#0D1HMOVX DPTR,AWAI

12、T:MOVX A,DPTRJB ACC.7,WAITMOV A,#2AHMOVX DPTR,AMOV IE,#84HLCALL DIRDIR:MOV DPTR,#7FFFHMOV A,#90HMOVX DPTR,A;打開(kāi)寫保護(hù) ;預(yù)置分鐘時(shí)間為00 ;預(yù)置小時(shí),24小時(shí)制,16 ;預(yù)置日期 19 ;預(yù)置月份 9 ;預(yù)置年份 2000 ;寫充電控制寄存器,10100110,I=1mA ;RAM1單元寫入0x55,防止再次初始;啟動(dòng)時(shí)鐘 進(jìn)入主函數(shù) ;設(shè)棧底 ;指向命令/狀態(tài)口 ;清除命令 ;送入命令字 ;讀入狀態(tài)字 ;等待清除 ;置分頻命令字 ;送入命令字 ;開(kāi)中斷 ;調(diào)用顯示子程序 ;指向命令

13、/狀態(tài)口 ;寫顯示命令字 ;命令字送入 8MOV R0,#30H ;段選碼存放單元首址 MOV R7,#0CH ;置顯示12位的初值 MOV DPTR,#7FFEH ;指向數(shù)據(jù)口地址 LOOP:MOV A,R0 ;段選碼送顯示RAM INC R0 ;指向下一個(gè)段選碼 DJNZ R7,LOOP ;12個(gè)段選碼送完否 RET ;子程序返回KEY: ;鍵盤輸入PUSH PSWPUSH AMOV A,#40MOV DPTR,#7FFFHMOVX DPTR,AMOV DPTR,#7FFEHMOVX A,DPTRLJMP KEY1KEYI:MOV n,#11BMOV A,0MOC R0,#29 ;MOV H,1DJNZ RL0,H,ST1DJNZRL1,H,ST2LOOP:NOPSJMP LOOPST1:INC AINC R0SJMP $DJNZ n,A,STST2:MOV B,APUSH AMOV A,BINC AMOV R0,APOP APOP PSWRETIEND;保護(hù)現(xiàn)場(chǎng) ;設(shè)置讀FIFO RAM命令字 ;指向命令/狀態(tài)口 ;送入命令字

溫馨提示

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