版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、沈陽工程學(xué)院課 程 設(shè) 計(jì)設(shè)計(jì)題目:多功能時(shí)鐘程序設(shè)計(jì) 系 別: 自控系 班級: 測控本101 學(xué)生姓名: 鞠智恒 學(xué)號: 2010312140 指導(dǎo)老師: 呂勇軍 職稱: 教 授 起止日期:2013年1月6日至2013年1月18日37 / 38文檔可自由編輯打印沈陽工程學(xué)院課程設(shè)計(jì)任務(wù)書課程設(shè)計(jì)題目: 多功能時(shí)鐘程序設(shè)計(jì)系 別 自控系 班級 測控本101 學(xué)生姓名 鞠智恒 學(xué)號 2010312140 指導(dǎo)教師 呂勇軍 職稱 教授 課程設(shè)計(jì)進(jìn)行地點(diǎn): 實(shí)訓(xùn)F422 任 務(wù) 下 達(dá) 時(shí) 間: 13年 1月6日 起止日期:13年1月6日起至13年1月18日止 教研室主任 年 月 日批準(zhǔn)多功能時(shí)鐘程
2、序設(shè)計(jì)成績評定表指導(dǎo)教師評審意見評價(jià)內(nèi)容具體要求權(quán)重評分加權(quán)分論 證獨(dú)立查閱文獻(xiàn),制定課程設(shè)計(jì)方案和日程安排。0.15432工作能力態(tài)度工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好,能夠獨(dú)立完成設(shè)計(jì)工作。0.25432工作量按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿, 0.25432說明書的質(zhì)量說明書立論正確,論述充分,文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,書寫工整規(guī)范。0.55432指導(dǎo)教師評審成績(加權(quán)分合計(jì)乘以12)分加權(quán)分合計(jì)指導(dǎo)教師簽名:年 月 日評閱教師評審意見評價(jià)內(nèi) 容具體要求權(quán)重評分加權(quán)分查文獻(xiàn)查閱文獻(xiàn)有廣泛性,有綜合歸納資料的能力0.25432工作量工作量飽滿,難度適中0.55432說明
3、書的質(zhì)量說明書立論正確,論述充分,文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,書寫工整規(guī)范。0.35432評閱教師評審成績(加權(quán)分合計(jì)乘以8)分加權(quán)分合計(jì)評閱教師簽名:年 月 日課程設(shè)計(jì)總評成績分系部:自控系 班級:測控本101 學(xué)生姓名:鞠智恒中文摘要時(shí)鐘,自從它發(fā)明的那天起,就成為人類的朋友,但隨著時(shí)間的推移,科學(xué)技術(shù)的不斷發(fā)展,人們對時(shí)間計(jì)量的精度要求越來越高,應(yīng)用越來越廣。怎樣讓時(shí)鐘更好的為人民服務(wù),怎樣讓我們的老朋友煥發(fā)青春呢?這就要求人們不斷設(shè)計(jì)出新型時(shí)鐘。 電子時(shí)鐘主要是采用先進(jìn)的當(dāng)代電子技術(shù),使用微型時(shí)鐘芯片的時(shí)鐘,與傳統(tǒng)的機(jī)械鐘相比,它的時(shí)鐘精度,顯示直觀,無機(jī)械傳動(dòng)裝置,廣泛應(yīng)用于人
4、們的生活環(huán)境之中。此外,人們在生活和工業(yè)、農(nóng)業(yè)生產(chǎn)中對時(shí)鐘的功能的也提出了許多更高的要求如:鬧鐘,日歷,所以需要具有多種功能的新型電子時(shí)鐘。 根據(jù)人們的不同需求,我們就需要設(shè)計(jì)一種具有可以正常顯示時(shí)鐘/日歷并具有定時(shí)報(bào)時(shí)功能的多功能電子鐘。通過采集各種電子鐘發(fā)展的相關(guān)資料,對比分析后決定利用單片機(jī)技術(shù),實(shí)現(xiàn)多功能電子鐘的各項(xiàng)設(shè)計(jì)。 該數(shù)字鐘采用液晶顯示屏顯示其時(shí)間與定時(shí)時(shí)間,即采用P6口輸入,P7口輸出,由R0輸入需顯示的時(shí)間,再通過延時(shí)程序?qū)r(shí)間穩(wěn)定的顯示在液晶屏上。校準(zhǔn)時(shí)間由外部中斷4及開關(guān)按鍵控制;定時(shí)時(shí)間由外部中斷3及開關(guān)按鍵控制 ,KEY3、KEY4鍵每按一次其時(shí)分秒的數(shù)字增加一。
5、關(guān)鍵字: 單片機(jī), 數(shù)字鐘, 校時(shí), 定時(shí)器, 日歷目錄多功能時(shí)鐘程序設(shè)計(jì)成績評定表2中文摘要31課程設(shè)計(jì)要求51.1設(shè)計(jì)主要內(nèi)容及要求51.2對設(shè)計(jì)論文撰寫內(nèi)容、格式及字?jǐn)?shù)的要求51.3時(shí)間進(jìn)度安排52課程設(shè)計(jì)思路62.1計(jì)時(shí)62.2校時(shí)62.3鬧鈴63設(shè)計(jì)流程圖74各模塊設(shè)計(jì)84.1時(shí)鐘部分84.2定時(shí)部分104.3校時(shí)部分124.4顯示部分145工作過程分析205.1時(shí)鐘程序分析205.2定時(shí)程序分析205.3校時(shí)程序分析215.4顯示程序分析216主要元器件介紹22總結(jié)24致謝25參考文獻(xiàn)26附錄271 課程設(shè)計(jì)要求1.1 設(shè)計(jì)主要內(nèi)容及要求1) 編寫多功能時(shí)鐘程序2) 能夠顯示時(shí)、分
6、、秒的時(shí)鐘程序。3) 具有鬧鐘功能。4) 能夠進(jìn)行時(shí)間調(diào)整。1.2 對設(shè)計(jì)論文撰寫內(nèi)容、格式及字?jǐn)?shù)的要求1) 課程設(shè)計(jì)論文是體現(xiàn)和總結(jié)課程設(shè)計(jì)成果的載體,一般不應(yīng)少于 3000字。2) 學(xué)生應(yīng)撰寫時(shí)應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。3) 論文要求打印,打印時(shí)按沈陽工程學(xué)院畢業(yè)設(shè)計(jì)(論文)撰寫規(guī)范的要求4) 課程設(shè)計(jì)論文裝訂順序?yàn)椋悍饷妗⑷蝿?wù)書、成績評審意見表、中文摘要和關(guān)鍵詞、目錄、正文、參考文獻(xiàn)。1.3 時(shí)間進(jìn)度安排順序階段日期計(jì) 劃 完 成 內(nèi) 容地址11月2日教師講解題目,學(xué)生查閱相關(guān)資料實(shí)訓(xùn)F42221月3日查閱相關(guān)資料、進(jìn)行方案論證實(shí)訓(xùn)F42231月4日確定鬧鐘設(shè)置時(shí)
7、間調(diào)整方法實(shí)訓(xùn)F42241月5、6、9日編寫程序?qū)嵱?xùn)F42251月10、11日調(diào)試程序?qū)嵱?xùn)F42261月12日撰寫論文實(shí)訓(xùn)F42271月13日論文答辯實(shí)訓(xùn)F4222 課程設(shè)計(jì)思路 本文主要介紹用單片機(jī)編程來實(shí)現(xiàn)多功能時(shí)鐘的方法,本設(shè)計(jì)由單片機(jī)C8051F芯片、開關(guān)K1K8、LED燈及液晶顯示屏為核心,編輯一個(gè)程序使他們構(gòu)成了一個(gè)單片機(jī)數(shù)字時(shí)鐘。與傳統(tǒng)時(shí)鐘相比,它具有走時(shí)精確,顯示直觀等特點(diǎn)。它的計(jì)時(shí)周期為24小時(shí),顯滿刻度為“23時(shí)59分59秒”,另外具有校時(shí)、日期、星期、鬧鐘等功能等特點(diǎn)。2.1 計(jì)時(shí)當(dāng)T0進(jìn)入中斷后,先給T0計(jì)時(shí)1s,再計(jì)時(shí)60s;當(dāng)秒計(jì)數(shù)滿60s后開始分的計(jì)數(shù),同時(shí)將秒清
8、零,否則返回程序繼續(xù)執(zhí)行;同理當(dāng)分計(jì)數(shù)到60min,開始時(shí)的計(jì)時(shí)并共計(jì)數(shù)24次,與此同時(shí)分、秒清零。當(dāng)完成24小時(shí)的計(jì)時(shí)后,開始日期計(jì)數(shù)與時(shí)分計(jì)數(shù)原理相同結(jié)束計(jì)時(shí)后返回主程序。2.2 校時(shí)校時(shí)就是對時(shí)間進(jìn)行調(diào)整,當(dāng)時(shí)鐘時(shí)刻不準(zhǔn)時(shí)可以進(jìn)行校時(shí)。通過開關(guān)K1K4來選擇調(diào)整時(shí)分秒,并用KEY3進(jìn)行加一調(diào)整。2.3 鬧鈴定時(shí)程序?qū)崉t就是讓系統(tǒng)設(shè)定一個(gè)鬧鈴時(shí)間,并使LED燈在到達(dá)時(shí)間時(shí)亮燈。先判斷星期是否相等,不等跳出鬧鈴程序,相等則繼續(xù)判斷時(shí)是否相等,不等跳出,相等繼續(xù)向下判斷分和秒。當(dāng)系統(tǒng)設(shè)定的秒、分、時(shí)、星期與顯示的時(shí)間都相等時(shí)跳到程序TSR使LED亮。定時(shí)的時(shí)刻由K1、K2、K3、K4來選擇時(shí)分
9、秒和星期的調(diào)整并用KEY4來進(jìn)行加一調(diào)整。3 設(shè)計(jì)流程圖主程序定時(shí)1s顯示秒加一判斷是否為60s校時(shí)分加一定時(shí)判斷是否為60分時(shí)加一判斷是否相等判斷是否為24h燈亮返回主程序4 各模塊設(shè)計(jì)4.1 時(shí)鐘部分主程序主要是使各端口使能,保證各端口正常使用(主程序請參考附錄)。T0工作于定時(shí)方式1,進(jìn)行16位計(jì)數(shù)。其中秒的地址為30H,分的地址為31H,小時(shí)的地址為32H,星期地址為33H,日的地址為34H,月的地址為35H,年的地址為36H。當(dāng)T0進(jìn)入中斷后,先給T0賦初值3CB0,定時(shí)50ms,循環(huán)7次計(jì)時(shí)1s,再跳入加一子程序JIA1中實(shí)現(xiàn)秒加一,循環(huán)60次計(jì)時(shí)60s;當(dāng)秒計(jì)數(shù)滿60s后開始分的
10、計(jì)數(shù),同時(shí)將秒清零重新計(jì)時(shí),否則返回程序繼續(xù)執(zhí)行;同理當(dāng)分計(jì)數(shù)到60min,程序開始時(shí)的計(jì)時(shí)并共計(jì)數(shù)24次,同理計(jì)時(shí)日期。即時(shí)結(jié)束后返回主程序等待。在時(shí)鐘程序里還加了一個(gè)判定K8口的開關(guān)來控制計(jì)時(shí)暫停和繼續(xù)。$INCLUDE(C8051F020.INC)ORG 0000H AJMP MAIN ORG 000BH AJMP TINT0 ORG 0093HLJMP KEY3ORG 009BHLJMP KEY4ORG 0100HMAIN: MOV WDTCN,#0DEH ;關(guān)看門狗 MOV WDTCN,#0ADH MOV OSCICN,#05H ;內(nèi)部振蕩4MHz MOV P1MDOUT,#0FFH
11、 ;設(shè)置P1的輸出方式 MOV P74OUT, #0F0H ;端口6、端口7輸出方式為推挽輸出 MOV CKCON,#00H ;T0定時(shí)器12分頻 MOV TMOD,#01H ;T0處于工作方式一,16位 MOV TCON,#10H ;TR0=1,允許T0計(jì)數(shù) MOV XBR2,#40H ;交叉開關(guān)總使能 MOV EIE2,#30H ;中斷6、中斷7使能 MOV P3IF,#0CH ;中斷7上升沿觸發(fā) MOV TH0,#00H ;賦初值 MOV TL0,#00H MOV 30H,#00H ;秒存儲(chǔ)地址 MOV 31H,#00H ;分存儲(chǔ)地址 MOV 32H,#00H ;時(shí)存儲(chǔ)地址 MOV 33
12、H,#01H ;星期存儲(chǔ)地址 MOV 34H,#01H ;日存儲(chǔ)地址 MOV 35H,#01H ;月存儲(chǔ)地址 MOV 36H,#00H ;年存儲(chǔ)地址 MOV 40H,#00H ;定時(shí)秒存儲(chǔ)地址 MOV 41H,#00H ;定時(shí)分存儲(chǔ)地址 MOV 42H,#00H ;定時(shí)時(shí)存儲(chǔ)地址 MOV 43H,#01H ;定時(shí)星期存儲(chǔ)地址 MOV R1,#07H ;1s循環(huán)次數(shù) MOV IE,#82H ;中斷使能 AJMP $TINT0:MOV TL0,#00H ;定時(shí)50ms MOV TH0,#00H DJNZ R1,X ;計(jì)時(shí)1s MOV R1,#07H MOV 20H,P5 ;開關(guān)JNB 07H,LO
13、P_1 ;計(jì)時(shí)開關(guān) LCALL JIA1 ;跳轉(zhuǎn)到計(jì)時(shí)程序 LOP_1: JNB 06H,LOP_2 ;定時(shí)開關(guān) LCALL DING ;跳轉(zhuǎn)到定時(shí)程序LOP_2: LCALL TIME ;跳轉(zhuǎn)到顯示程序 X: RETI JIA1: MOV A,30H ;計(jì)時(shí)程序 ADD A,#01H ;秒加1 DA A ;做十進(jìn)制調(diào)整 MOV 30H,A CJNE A,#60H,Y ;是否等于60s?若不是,則跳至Y MOV 30H,#00H ;若是,則30H清零 MOV A,31H ADD A, #01H ;分加1 DA A ;做十進(jìn)制調(diào)整 MOV 31H,A CJNE A,#60H,Y ;是否等于60s
14、?若不是,則跳至Y MOV 31H,#00H ;若是,則31H清零 MOV A,32H ADD A,#01H ;時(shí)加1 DA A ;做十進(jìn)制調(diào)整 MOV 32H,A CJNE A,#24H,Y ;是否等于60s?若不是,則跳至Y MOV 32H,#00H ;若是,則32H清零 MOV A,34HADD A,#1DA AMOV 34H,ACJNE A,#32H,YBMOV 34H,#01HMOV A,#35HADD A,#1DA A MOV 35H,ACJNE A,#13H,YBMOV 35H,#01HMOV A,36HINC ADA A MOV 36H,A YB:MOV A,33HADD A,
15、#1 DA A MOV 33H,ACJNE A,#08H,YMOV 33H,#01H Y: RET4.2 定時(shí)部分定時(shí)程序?qū)崉t就是人為設(shè)定一個(gè)鬧鈴時(shí)間,并使LED燈在到達(dá)時(shí)間時(shí)亮。將時(shí)鐘的星期、時(shí)、分、秒先后賦值給A,判斷是否與設(shè)定的鬧鈴時(shí)間一致,不等則跳出子程序返回主程序繼續(xù)執(zhí)行下一步,相等則跳轉(zhuǎn)到TSR子程序。定時(shí)時(shí)間由外部中斷4控制,每按一下,其值增加一,時(shí)、分、秒、星期由開關(guān)按鍵K1,K2,K3,K4控制。將P5給20H判斷位00H、01H、02H、03H是否為0,不為0跳轉(zhuǎn)到時(shí)分秒程序中。在43H、42H、41H、40H中存放星期、時(shí)、分、秒。當(dāng)系統(tǒng)設(shè)定的秒、分、時(shí)、星期與顯示的時(shí)間
16、都相等時(shí)LED燈亮,表示鬧鈴時(shí)間到。期間時(shí)間會(huì)繼續(xù)顯示,但LED燈依舊亮,閉合K1、K2、K3、K4按下KEY4鍵可熄滅LED燈。定時(shí)功能還可以通過K7來控制關(guān)閉K7則顯示器顯示DINGSHI OFF 提示定時(shí)功能關(guān)閉。DING: MOV A,33H ;判斷鬧鐘是否啟動(dòng)CJNE A,43H,NMOV A,32H CJNE A,42H,NMOV A,31HCJNE A,41H,NMOV A,30HCJNE A,40H,NLJMP TSR N: RETTSR: MOV P1,#00H ;LED燈循環(huán)閃爍 RETKEY4: LCALL T2 LCALL TIME ;顯示 MOV P3IF,#00H
17、RETIT2: MOV 20H,P5 ;定時(shí)程序 JNB 00H,SHI1 JNB 01H,FEN1 JNB 02H,MIAO1 JNB 03H,XQ1 MOV P1,#0FFH ;關(guān)閉鬧鐘 RET SHI1: MOV A,42H ADD A,#1 DA A MOV 42H,A CJNE A,#24H,MB MOV 42H,#00H RETFEN1: MOV A,41H ADD A,#1 DA A MOV 41H,A CJNE A,#60H,MB MOV 41H,#00H RETMIAO1:MOV A,40H ADD A,#1 DA A MOV 40H,A CJNE A,#60H,MB MOV
18、 40H,#00H RETXQ1: MOV A,43H ADD A,#1 DA A MOV 43H,A CJNEA,#08H,MB MOV 43H,#01HMB: RET4.3 校時(shí)部分校時(shí)部分就是在系統(tǒng)時(shí)間不準(zhǔn)確的情況下,給系統(tǒng)賦定值,使系統(tǒng)時(shí)間可以從該值開始變化,使用外部中斷KEY3,先給30H、31H、32H賦所需時(shí)間,然后調(diào)用程序?qū)⑵滹@示。其中進(jìn)入中斷后調(diào)用子程序T1可以由KEY3鍵設(shè)置所定時(shí)間每按一次KEY3鍵值增加一,是調(diào)整時(shí)還是分或秒,可由開關(guān)量輸入鍵K1、K2、K3分別控制。其主程序中加入了外不中斷的有關(guān)指令.但需注意的是,在調(diào)解時(shí)除打開時(shí)、分、秒控制鍵外還需打開K11鍵。 K
19、EY3: ;KEY3中斷程序 LCALL T1 LCALL TIME ;顯示 MOV P3IF,#00H RETIT1: MOV 20H,P5 ;時(shí)間校準(zhǔn)程序 JNB 04H,RQ ;選擇修改時(shí)間/日期 JNB 00H,SHI JNB 01H,FEN JNB 02H,MIAO JNB 03H,XQ RETRQ: JNB 00H,NIAN JNB 01H,YUEJNB 02H,RI1JNB 03H,XINGQIRET SHI:MOV A,32H ADD A,#1 DA A MOV 32H,A CJNE A,#24H,M MOV 32H,#0 RETFEN: MOV A,31H ADD A,#1
20、DA A MOV 31H,A CJNE A,#60H,M MOV 31H,#0 RET MIAO:MOV A,30H ADD A,#1 DA A MOV 30H,A CJNE A,#60H,M MOV 30H,#0XQ: MOV A,33H ADD A,#1 DA A MOV 33H,ACJNE A,#08H,M MOV 33H,#01H M: RETNIAN:MOV A,36H ;日期校準(zhǔn) INC A DA A MOV 36H,A RETYUE: MOV A,35H ADD A,#1 DA A MOV 35H,A CJNE A,#13H,ASD MOV 35H,#01H RETRI1:MOV
21、 A,34H ADD A,#1 DA A MOV 34H,A CJNE A,#32H,ASD MOV 34H,#01HRETXINGQI: MOV A,33H ADD A,#1DA AMOV 33H,ACJNE A,#08H,ASDMOV 33H,#01H ASD: RET 4.4 顯示部分顯示程序就是將程序中的時(shí)分秒顯示在液晶顯示屏上使其看起來更直觀、方便。其中第一行顯示系統(tǒng)運(yùn)行時(shí)間,第二行顯示定時(shí)時(shí)間。通過K6來控制第一行顯示時(shí)間和日期。該程序主要根據(jù)老師所給程序改編,利用子程序LINE設(shè)定顯示屏的主要參數(shù).讓時(shí)間顯示在上一行且只顯示一個(gè)時(shí)分秒,如“23:28:20”,不造成顯示多個(gè)的后果
22、。NCD為常函數(shù)表,將0-9數(shù)字依次存放到以左邊標(biāo)號為起始地址的存儲(chǔ)單元中。TIME中就是將時(shí)分秒的十位、各位分別賦予R0,然背后調(diào)用查表程序?qū)⑵滹@示在液晶屏上。值得注意的是:時(shí)與分、分與秒之間需將冒號也顯示出來。同理,定時(shí)時(shí)間的顯示在第二行,由TIME1控制。TIME: CLR A ;液晶顯示程序 MOV XBR0, A LCALL LCD MOV DPTR,#NCD MOV 20H,P5 JNB 05H,LP1 ;選擇顯示時(shí)間/日期 MOV A,32H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,32H LCALL LINE1 LCALL
23、DELAY MOV R0,#10 LCALL LINE1 LCALL DELAY MOV A,31H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,31H LCALL LINE1 LCALL DELAY MOV R0,#10 LCALL LINE1 LCALL DELAY MOV A,30H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,30H LCALL LINE1 LCALL DELAY LJMP LP2 LP1: MOV R0,#2 LCALL LINE1 LCALL DELAY MOV R0
24、,#0 LCALL LINE1 LCALL DELAYMOV A,36H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,36H LCALL LINE1 LCALL DELAY MOV R0,#11 LCALL LINE1 LCALL DELAY MOV A,35H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,35H LCALL LINE1 LCALL DELAY MOV R0,#11 LCALL LINE1 LCALL DELAY MOV A,34H SWAP A MOV R0,A LCALL L
25、INE1 LCALL DELAY MOV R0,34H LCALL LINE1 LCALL DELAYLP2: MOV R0,#11 ;NAOZHONG LCALL LINE1 LCALL DELAY MOV R0,#12 ;NAOZHONG LCALL LINE1 LCALL DELAY MOV R0,#13 ;NAOZHONG LCALL LINE1 LCALL DELAYMOV R0,33H ;NAOZHONG LCALL LINE1 LCALL DELAY MOV R0,#11 ;NAOZHONG LCALL LINE1 LCALL DELAY JB P1.0,LOP1 MOV R0,
26、#15 ;NAOZHONG LCALL LINE1 LCALL DELAY MOV R0,#0 ;NAOZHONG LCALL LINE1 LCALL DELAY MOV R0,#14 ;NAOZHONG LCALL LINE1 LCALL DELAYLOP1:MOV 20H,P5 JNB 06H,LP3 ;關(guān)閉定時(shí)顯示 MOV DPTR,#NED MOV P7,#0C0H MOV P6,#1H MOV P6,#0H MOV R0,#11 LCALL LINE1 LCALL DELAY MOV A,42H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV
27、R0,42H LCALL LINE1 LCALL DELAY MOV R0,#10 LCALL LINE1 LCALL DELAY MOV A,41H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,41H LCALL LINE1 LCALL DELAY MOV R0,#10 LCALL LINE1 LCALL DELAY MOV A,40H SWAP A MOV R0,A LCALL LINE1 LCALL DELAY MOV R0,40H LCALL LINE1 LCALL DELAY MOV R0,#11 ;NAOZHONG LCALL LI
28、NE1 LCALL DELAY MOV R0,#12 ;NAOZHONG LCALL LINE1 LCALL DELAY MOV R0,#13 ;NAOZHONG LCALL LINE1 LCALL DELAYMOV R0,43H ;NAOZHONG LCALL LINE1 LCALL DELAY RETLP3: MOV DPTR,#NFD MOV P7,#0C0H MOV P6,#1H MOV P6,#0H MOV R0,#11 LCALL LINE1 LCALL DELAY MOV R0,#0 LCALL LINE1 LCALL DELAY MOV R0,#1 LCALL LINE1 LC
29、ALL DELAY MOV R0,#2 LCALL LINE1 LCALL DELAY MOV R0,#3 LCALL LINE1 LCALL DELAY MOV R0,#4 LCALL LINE1 LCALL DELAY MOV R0,#5 LCALL LINE1 LCALL DELAY MOV R0,#6 LCALL LINE1 LCALL DELAY MOV R0,#10 LCALL LINE1 LCALL DELAY MOV R0,#7 LCALL LINE1 LCALL DELAY MOV R0,#8 LCALL LINE1 LCALL DELAY MOV R0,#9 LCALL L
30、INE1 LCALL DELAY RETLINE1: MOV A,R0 ANL A,#0FH MOVC A,A+DPTR MOV P7,A MOV P6,#05H MOV P6,#04H RETLCD: LCALL DELAY MOV P7,#38H MOV P6,#01H MOV P6,#00H LCALL DELAY MOV P7,#0EH MOV P6,#01H MOV P6,#00H LCALL DELAY MOV P7,#06H MOV P6,#01H MOV P6,#00H LCALL DELAY MOV P7,#01H MOV P6,#01H MOV P6,#00H LCALL
31、DELAY RETDELAY: MOV R6,#50DELAY0: MOV R5,#50 DJNZ R5,$ DJNZ R6,DELAY0 RET DELAY1: MOV R4,#35DELAY2: MOV R3,#150DELAY3: MOV R2,#250 DJNZ R2,$ DJNZ R3,DELAY3 DJNZ R4,DELAY2 RET NCD : DB 0,1,2,3,4,5,6,7,8,9,:, ,X,Q,),(, NED : DB 0,1,2,3,4,5,6,7,8,9,:, ,X,Q, ;常數(shù)表NFD : DB D,I,N,G,S,H,I,O,F,F, , END5 工作過程
32、分析5.1 時(shí)鐘程序分析在設(shè)計(jì)時(shí)分秒的程序時(shí),首先定時(shí)1s,然后循環(huán)60次,則計(jì)時(shí)60秒,再判斷是否循環(huán)60次,沒有則繼續(xù)執(zhí)行以完成秒的計(jì)時(shí),若完成60次循環(huán)則分加一,同理當(dāng)分計(jì)數(shù)滿60時(shí),時(shí)加一,在判斷是否計(jì)數(shù)滿24次,滿24次則日加一,同時(shí)清零時(shí)計(jì)數(shù),日計(jì)數(shù)滿32則月計(jì)數(shù)加一同時(shí)日計(jì)數(shù)置1,月計(jì)數(shù)滿13,則年計(jì)數(shù)加一同時(shí)月計(jì)數(shù)置1。以此完成時(shí)分秒和日期的計(jì)算并據(jù)此編寫程序。5.2 定時(shí)程序分析將時(shí)鐘的星期、時(shí)、分、秒先后賦值給A,判斷是否與設(shè)定的鬧鈴時(shí)間一致,不等則跳出子程序返回主程序繼續(xù)執(zhí)行下一步,相等則跳轉(zhuǎn)到TSR子程序。定時(shí)時(shí)間由外部中斷4控制,每按一下,其值增加一,時(shí)、分、秒、星期
33、由開關(guān)按鍵K1,K2,K3,K4控制。將P5給20H判斷位00H、01H、02H、03H是否為0,不為0跳轉(zhuǎn)到時(shí)分秒程序中。在43H、42H、41H、40H中存放星期、時(shí)、分、秒。當(dāng)系統(tǒng)設(shè)定的秒、分、時(shí)、星期與顯示的時(shí)間都相等時(shí)LED燈亮,表示鬧鈴時(shí)間到。期間時(shí)間會(huì)繼續(xù)顯示,但LED燈依舊亮,閉合K1、K2、K3、K4按下KEY4鍵可熄滅LED燈。定時(shí)功能還可以通過K7來控制關(guān)閉K7則顯示器顯示DINGSHI OFF 提示定時(shí)功能關(guān)閉。DING: MOV A,33H ;判斷鬧鐘是否啟動(dòng) CJNE A,43H,N ;判斷 星期是否相同MOV A,32H CJNE A,42H,N ;判斷時(shí)是否相同
34、 MOV A,31H CJNE A,41H,N ;判斷分是否相同 MOV A,30H CJNE A,40H,N ;判斷秒是否相同 LJMP TSR ;都相同時(shí)跳到TSR N: RET ;有一個(gè)不相同則返回主程序TSR: MOV P1,#00H ;LED燈循環(huán)閃爍 RET 由于定時(shí)時(shí)間到的時(shí)候燈亮不能自主熄滅所以 設(shè)定當(dāng)K1、K2、K3、K4都關(guān)閉時(shí)用KEY4來關(guān)閉指示燈。KEY4: LCALL T2 LCALL TIME ;顯示 MOV P3IF,#00H RETIT2: MOV 20H,P5 ;定時(shí)程序 JNB 00H,SHI1 JNB 01H,FEN1 JNB 02H,MIAO1JNB 0
35、3H,XQ1 MOV P1,#0FFH ;關(guān)閉鬧鐘RET 5.3 校時(shí)程序分析校時(shí)程序包括時(shí)分秒和日期的校時(shí),由于控制開關(guān)不是很多所以我用了K5來先選擇對時(shí)分秒校時(shí)和對日期校時(shí)。當(dāng)K5關(guān)閉時(shí)通過開關(guān)K1、K2、K3、K4來選擇對時(shí)分秒的時(shí)位分位秒位和星期位的校準(zhǔn)并通過按KEY3來進(jìn)行加一調(diào)整。當(dāng)K5打開時(shí)同理調(diào)整日期實(shí)現(xiàn)對日期的校準(zhǔn)。5.4 顯示程序分析該部分主要是將隨時(shí)變化的時(shí)間及定時(shí)時(shí)間顯示到液晶顯示屏上,因此我設(shè)計(jì)以下的程序。先定義各端口的用途,關(guān)看門狗,確定端口輸出方式等先將秒分時(shí)轉(zhuǎn)換成ASCII碼,存儲(chǔ)在40H,41H中,再將其賦予R4進(jìn)行顯示,。 將秒的各位和十位分別賦給R0,在調(diào)
36、用子程序LINE1利用查表將其顯示。程序雖然正確但還是無法顯示動(dòng)態(tài)值。將時(shí)賦予A,使其高四位與低四位交換,再跳轉(zhuǎn)到子程序屏蔽高四位,顯示低四位值;再將時(shí)賦予R0,跳入子程序屏蔽高四位顯示低四位,。同理顯示分、秒需注意的是:再將時(shí)分秒賦予R0時(shí),需將其轉(zhuǎn)換為十進(jìn)制,以便其顯示的是十進(jìn)制數(shù)。TIME: CLR A ;液晶顯示程序 MOV XBR0, A LCALL LCD MOV DPTR,#NCD MOV 20H,P5 JNB 05H,LP1 ;選擇顯示時(shí)間/日期。通過判斷K5來跳入不同的 程序來顯示日期和時(shí)間LOP1:MOV 20H,P5 JNB 06H,LP3 ;關(guān)閉定時(shí)顯示。通過K6來控制
37、定時(shí)鬧鐘功能的開關(guān)在這里判斷K5的狀態(tài)跳入不同的程序顯示不同的內(nèi)容。 LP3: MOV DPTR,#NFD MOV P7,#0C0H ;以下部分程序?yàn)榱孙@示“DINGSHI OFF” 6 主要元器件介紹C8051F系列單片機(jī)是cygnal出的一種混合信號系統(tǒng)級單片機(jī)。片內(nèi)含CIP51的CPU內(nèi)核,其指令系統(tǒng)與MCS51完全兼容。而C8051F020單片機(jī)是該系列中一個(gè)比較有代表性的型號,它是完全集成的混合信號系統(tǒng)級SCM芯片,含有64kB片內(nèi)Flash程序存儲(chǔ)器,4352B的RAM、8個(gè)IO端口共64根IO口線、一個(gè)12位AD轉(zhuǎn)換器和一個(gè)8位AD轉(zhuǎn)換器以及一個(gè)雙12位DA轉(zhuǎn)換器、2個(gè)比較器、5
38、個(gè)16位通用定時(shí)器、5個(gè)捕捉比較模塊的可編程計(jì)數(shù)定時(shí)器陣列、看門狗定時(shí)器、VDD監(jiān)視器和溫度傳感器等部分。C8051F020單片機(jī)支持雙時(shí)鐘。其工作電壓范圍為2736V(端口I/O,RST和JTAG引腳的耐壓為5V)。與以前的51系列單片機(jī)相比,C8051F020增添了許多功能,同時(shí)其可靠性和速度也有了很大提高。其原理圖如下圖所示:圖6.1液晶顯示屏(LCD)用于數(shù)字型鐘表和許多便攜式計(jì)算機(jī)的一種顯示器類型。LCD顯示使用了兩片極化材料,在它們之間是液體水晶溶液。電流通過該液體時(shí)會(huì)使水晶重新排列,以使光線無法透過它們。因此,每個(gè)水晶就像百葉窗,既能允許光線穿過又能擋住光線。液晶顯示器(LCD)
39、目前科技信息產(chǎn)品都朝著輕、薄、短、小的目標(biāo)發(fā)展,在計(jì)算機(jī)周邊中擁有悠久歷史的顯示器產(chǎn)品當(dāng)然也不例外。在便于攜帶與搬運(yùn)為前題之下,傳統(tǒng)的顯示方式如CRT映像管顯示器及LED顯示板等等,皆受制于體積過大或耗電量甚巨等因素,無法達(dá)成使用者的實(shí)際需求。而液晶顯示技術(shù)的發(fā)展正好切合目前信息產(chǎn)品的潮流,無論是直角顯示、低耗電量、體積小、還是零輻射等優(yōu)點(diǎn),都能讓使用者享受最佳的視覺環(huán)境。液晶顯示器,依驅(qū)動(dòng)方式來分類可分為靜態(tài)驅(qū)動(dòng)(Static)、單純矩陣驅(qū)動(dòng)(Simple Matrix)以及主動(dòng)矩陣驅(qū)動(dòng)(Active Matrix)三種。其中,被動(dòng)矩陣型又可分為扭轉(zhuǎn)式向列型(Twisted Nematic;TN)、超扭轉(zhuǎn)式向列型(Super Twisted Nematic;STN)及其它被動(dòng)矩陣驅(qū)動(dòng)液晶顯示器;而主動(dòng)矩陣型大致可區(qū)分為薄膜式晶體管型(Thin Film Transistor;TFT)及二端子二極管型(Metal/Insulator/Metal;MIM
溫馨提示
- 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)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025合同模板從業(yè)人員退職酬勞金運(yùn)用及支配辦法范本
- 2025墻體廣告制作合同范文
- 課題申報(bào)參考:綠色轉(zhuǎn)型下“綠天鵝”風(fēng)險(xiǎn)傳染網(wǎng)絡(luò)效應(yīng)研究:實(shí)證識(shí)別與政策協(xié)同
- 課題申報(bào)參考:聯(lián)合國教科文組織STEM一類中心建設(shè)研究
- 課題申報(bào)參考:考慮農(nóng)戶異質(zhì)性的農(nóng)產(chǎn)品直播電商平臺(tái)供應(yīng)鏈合作模式與運(yùn)營決策研究
- 設(shè)計(jì)未來辦公體驗(yàn)科技創(chuàng)新的視角
- 科技助力下的現(xiàn)代家庭急救體系
- 2024年會(huì)議電視圖像保密機(jī)項(xiàng)目資金籌措計(jì)劃書
- 游戲化學(xué)習(xí)在小學(xué)科普教育中的重要性研究
- 河北省石家莊市正定縣2024-2025學(xué)年八年級上學(xué)期1月期末道德與法治試題(含答案)
- 2023-2024學(xué)年度人教版一年級語文上冊寒假作業(yè)
- 2024醫(yī)療銷售年度計(jì)劃
- 稅務(wù)局個(gè)人所得稅綜合所得匯算清繳
- 人教版語文1-6年級古詩詞
- 上學(xué)期高二期末語文試卷(含答案)
- 職業(yè)發(fā)展展示園林
- 七年級下冊英語單詞默寫表直接打印
- 2024版醫(yī)療安全不良事件培訓(xùn)講稿
- 中學(xué)英語教學(xué)設(shè)計(jì)PPT完整全套教學(xué)課件
- 移動(dòng)商務(wù)內(nèi)容運(yùn)營(吳洪貴)項(xiàng)目五 運(yùn)營效果監(jiān)測
- 比較思想政治教育學(xué)
評論
0/150
提交評論