基于單片機(jī)的簡易時(shí)鐘設(shè)計(jì)_第1頁
基于單片機(jī)的簡易時(shí)鐘設(shè)計(jì)_第2頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、廣西理工職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文)說明書目:簡易電子時(shí)鐘設(shè)計(jì)系別:電氣工程系專業(yè)班級(jí):1111 機(jī)電 2 2姓名:黃止武錦學(xué)號(hào):20112323指導(dǎo)教師:黎有好二0三年七月二十四日1目錄1.概論.2矚慫潤厲釤瘞睞櫪廡賴。2.整體設(shè)計(jì)思路 .3聞創(chuàng)溝燴鐺險(xiǎn)愛氌譴凈。2.1硬件各部分所能完成的功能.4殘騖樓諍錈瀨濟(jì)溆塹籟。2.2系統(tǒng)工作原理.5釅錒極額閉鎮(zhèn)檜豬訣錐。2.3時(shí)鐘各功能分析及圖解 .6彈貿(mào)攝爾霽斃攬磚鹵廡。2.4.1電路各功能圖解分析.6謀養(yǎng)摶篋飆鐸懟類蔣薔。2.4.2電路功能使用說明 .8廈礴懇蹣駢時(shí)盡繼價(jià)騷。3.軟件設(shè)計(jì)思路.9煢楨廣鰳鯡選塊網(wǎng)羈淚。3.1主程序模塊.9鵝婭盡損鶴

2、慘歷蘢鴛賴。3.2數(shù)碼管動(dòng)態(tài)掃描模塊.10籟叢媽羥為贍債蟶練淨(jìng)。3.3當(dāng)前時(shí)間計(jì)時(shí)模塊.11預(yù)頌圣鉉儐歲齦訝驊糴。3.4鬧鐘輸入輸出模塊 .12滲釤嗆儼勻諤鱉調(diào)硯錦。3.5當(dāng)前時(shí)間調(diào)整模塊 .14鐃誅臥瀉噦圣騁貺頂廡。3.6復(fù)位模塊 .15擁締鳳襪備訊顎輪爛薔。4.系統(tǒng)的調(diào)試和性能分析.16贓熱俁閫歲匱閶鄴鎵騷。4.1系統(tǒng)的調(diào)試方法 .16壇搏鄉(xiāng)囂懺蔞鍥鈴氈淚。4.1.1輸入按鍵的調(diào)試 .16蠟變黲癟報(bào)倀鉉錨鈰贅。4.1.2復(fù)位電路的調(diào)試 .16買鯛鴯譖曇膚遙閆擷凄。4.1.3顯示電路的調(diào)試 .16綾鏑鯛駕櫬鶘蹤韋轔糴。4.1.4整個(gè)系統(tǒng)的聯(lián)調(diào) .16驅(qū)躓髏彥浹綏譎飴憂錦。4.2心得體會(huì).17

3、貓蠆驢繪燈鮒誅髏貺廡。參考文獻(xiàn).17鍬籟饗逕瑣筆襖鷗婭薔。附錄.18構(gòu)氽頑黌碩飩薺齦話騖。附錄A系統(tǒng)原理圖.18輒嶧陽檉籪癤網(wǎng)儂號(hào)澩。附錄B程序源代碼.19堯側(cè)閆繭絳闕絢勵(lì)蜆贅。電氣信息學(xué)院課程設(shè)計(jì)評(píng)分表.30識(shí)饒鎂錕縊灩筧嚌儼淒。21.概論單片機(jī)系統(tǒng)作為一種典型的嵌入式系統(tǒng),其系統(tǒng)設(shè)計(jì)包括硬件電路設(shè)計(jì)和軟 件編程設(shè)計(jì)兩個(gè)方面,其調(diào)試過程一般分為軟件調(diào)試、硬件測試、系統(tǒng)調(diào)試3個(gè)過程。如果采用單片機(jī)系統(tǒng)的虛擬仿真軟件一一Proteus,則不用制作具體的電 路板也能夠完成以上工作。數(shù)字鐘是采用數(shù)字電路實(shí)現(xiàn)對(duì)時(shí),分,秒,數(shù)字顯示 的計(jì)時(shí)裝置,由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字

4、鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便, 而且大大地?cái)U(kuò)展了鐘表的報(bào)時(shí)功能。 數(shù)字鐘已成為人們?nèi)粘I钪械谋匦杵罚?廣 泛應(yīng)用于家庭、車站、碼頭、劇院、辦公室等場所,給人們的生活、學(xué)習(xí)、工作 帶來極大的方便。不僅如此,在現(xiàn)代化的進(jìn)程中,也離不開電子鐘的相關(guān)功能 和原理,比如機(jī)械手的控制、家務(wù)的自動(dòng)化、定時(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ù)字鐘及擴(kuò)大其應(yīng)用,有著非?,F(xiàn)實(shí)的意義。凍鈹鋨勞臘錯(cuò)癇婦脛糴。電子

5、鐘在工業(yè)控制和日常生活中是很重要的, 它不僅可以用于計(jì)時(shí)、提醒又 可用于對(duì)機(jī)器的控制,在自動(dòng)化的過程中必然有電子鐘的參與, 因此電子鐘的應(yīng) 用會(huì)越來越廣泛。而且向著精確、低功耗、多功能發(fā)展。基于單片機(jī)設(shè)計(jì)的數(shù)字 鐘精確度較高,因?yàn)樵诔绦虻膱?zhí)行過程中,任何指令都不影響定時(shí)器的正常計(jì)數(shù),即便程序很長也不會(huì)影響中斷的時(shí)間。 從而,使數(shù)字鐘的精度僅僅取決于單 片機(jī)的產(chǎn)生機(jī)器周期電路和定時(shí)器硬件電路的精確度。另外,程序較為簡潔,具有可靠性和較好的可讀性。如果我們想將它應(yīng)用于實(shí)時(shí)控制之中,只要對(duì)上述程 序和硬件電路稍加修改,便可以得到實(shí)時(shí)控制的實(shí)用系統(tǒng),從而應(yīng)用到實(shí)際工作 與生產(chǎn)中去。恥諤銪滅縈歡煬鞏鶩錦

6、。數(shù)字電子鐘的設(shè)計(jì)方法有多種,例如,可用中小規(guī)模集成電路組成電子鐘,也可以利用專用的電子鐘芯片配以顯示電路及其所需要的外圍電路組成電子鐘 還可以利用單片機(jī)來實(shí)現(xiàn)電子鐘等等。這些方法都各有特點(diǎn),其中,利用單片機(jī)實(shí)現(xiàn)的電子鐘具有編程靈活,便于功能擴(kuò)充, 精確度高等特點(diǎn)。鯊腎鑰詘漣鉀溈3懼統(tǒng)庫。2.整體設(shè)計(jì)思路這部分主要介紹工作安排和整體設(shè)計(jì)的思想。工作過程規(guī)劃如下:4圖2.1整體設(shè)計(jì)思路針對(duì)要實(shí)現(xiàn)的功能,擬采用AT89C51單片機(jī)進(jìn)行設(shè)計(jì),AT89C51單片機(jī)是一 款低功耗,高性能CMOS8位單片機(jī),片內(nèi)含4KB在線可編程(ISP)的可反復(fù)擦 寫1000次的Flash只讀程序存儲(chǔ)器,器件采用高密度

7、、非易失性存儲(chǔ)技術(shù)制造, 兼容標(biāo)準(zhǔn)MCS- 51指令系統(tǒng)及80C51引腳結(jié)構(gòu)。這樣,既能做到經(jīng)濟(jì)合理又能 實(shí)現(xiàn)預(yù)期的功能。碩癘鄴頏謅攆檸攜驤蘞。在程序方面,采用分塊設(shè)計(jì)的方法,這樣既減小了編程難度、使程序易于理 解,又能便于添加各項(xiàng)功能。程序可分為顯示程序、調(diào)時(shí)顯示運(yùn)用這種方法,關(guān) 鍵在于各模塊的兼容和配合,若各模塊不匹配會(huì)出現(xiàn)意想不到的錯(cuò)誤。閿擻輳嬪諫遷擇植秘騖。本電子鐘設(shè)計(jì)主要是依照?qǐng)D2.1中的流程做出來的,時(shí)間分配比較均勻。首 先,在編程之前必須了解硬件結(jié)構(gòu)尤其是各引腳的用法,以及內(nèi)部寄存器、存儲(chǔ)單元的用法,否則,編程無從下手,電路也無法設(shè)計(jì)。這是前期準(zhǔn)備工作。第二 部分是硬件部分:依據(jù)

8、想要的功能分塊設(shè)計(jì)設(shè)計(jì),比如輸入需要開關(guān)電路,輸出 需要顯示驅(qū)動(dòng)電路和液晶電路等。第三部分是軟件部分:先學(xué)習(xí)理解C語言的編程方法再根據(jù)設(shè)計(jì)的硬件電路進(jìn)行分塊的編程調(diào)試,最終完成程序設(shè)計(jì)。第四部 分是軟件畫圖部分:設(shè)計(jì)好電路后進(jìn)行畫圖,包括電路圖和仿真圖的繪制。第五 部分是軟件仿真部分:軟硬件設(shè)計(jì)好后將軟件載入芯片中進(jìn)行仿真, 仿真無法完 成時(shí)檢查軟件程序和硬件電路并進(jìn)行修改直到仿真成功。第六部分是硬件實(shí)現(xiàn)部分:連接電路并導(dǎo)入程序檢查電路,若與設(shè)計(jì)的完全一樣一般能實(shí)現(xiàn)想要的功能。氬嚕躑竄貿(mào)懇彈濾頷澩。2.1 硬件各部分所能完成的功能(1) 單片機(jī)發(fā)送的信號(hào)通過程序控制最終在數(shù)碼管上顯示出來。(2

9、) 單片機(jī)通過輸出各種電脈沖信號(hào)來驅(qū)動(dòng)控制各部分正常工作。(3) 為使時(shí)鐘走時(shí)與標(biāo)準(zhǔn)時(shí)間一致,校時(shí)電路是必不可少的,鍵盤用來校 正數(shù)碼管上顯示的時(shí)間。(4) 單片機(jī)通過控制鬧鈴電路來完成定時(shí)鬧鐘的功能。5(5)單片機(jī)通過程序?qū)︳[鈴信號(hào)燈進(jìn)行控制,可方便我們對(duì)鬧鈴的開關(guān)以6及是否在鬧鈴進(jìn)行觀察。(6)由于要設(shè)置定時(shí)功能,所以配置了對(duì)鬧鐘設(shè)置的鍵盤。2.2 系統(tǒng)工作原理路、外設(shè)鬧鈴電路以及核心控制電路詳細(xì)電路功能圖如圖2-2::_LT圖 2-2 詳細(xì)電路功能圖本設(shè)計(jì)采用匯編語言程序設(shè)計(jì),使單片機(jī)控制數(shù)碼管顯示時(shí)、分、秒,當(dāng)秒計(jì)數(shù)計(jì)滿60時(shí)就向分進(jìn)位,分計(jì)數(shù)器計(jì)滿60后向時(shí)計(jì)數(shù)器進(jìn)位,小時(shí)計(jì)數(shù)器按“

10、23翻0”規(guī)律計(jì)數(shù)。時(shí)、分、秒的計(jì)數(shù)結(jié)果經(jīng)過數(shù)據(jù)處理可直接送顯示器顯示。設(shè)計(jì)采用的是時(shí)、分、秒顯示,單片機(jī)對(duì)數(shù)據(jù)進(jìn)行處理同時(shí)在數(shù)碼管上顯示。釷鵒資贏車贖孫滅獅贅。設(shè)計(jì)的電路主要由四模塊構(gòu)成:時(shí)間顯示電路、信號(hào)顯示電路、鍵盤控制電MikUXTAIZRJBT 口IVAUPEI.瞅恫 陽2TADZPOJAH 圖A恤VnJVAU口pamorPHO*胸FJ-1MPZAfflPZAtlMEPZ.tfAG耳;PZSAia旳電小 桎取pin FP.1F3HRXXF3.irnFI2FIJI*3nrrrPl.4-PKTUPi P1J5PZILSFF1.TP3T/WAdi:Tt/Ti-11 r1.-.-LEP-TE

11、I-LW4 . VI RF1 ;出*;is3131口FizF14F -ra-IF72.3 時(shí)鐘各功能分析及圖解2.4.1電路各功能圖解分析(1)時(shí)鐘運(yùn)行圖仿真開始運(yùn)行時(shí),或按下K7鍵時(shí),時(shí)鐘從00:00:00開始運(yùn)行,其中按下K1鍵可進(jìn)入當(dāng)前時(shí)間調(diào)節(jié),K2和K3分別負(fù)責(zé)加一和減一,K5鍵為確認(rèn)鍵。慫闡譜 鯪逕導(dǎo)嘯畫長涼。時(shí)鐘運(yùn)行圖如圖2-3所示:圖 2-3 時(shí)鐘運(yùn)行圖(2)鬧鐘開關(guān)指示圖當(dāng)按下K4鍵后,可進(jìn)入鬧鐘設(shè)時(shí)控制,設(shè)置完后按確認(rèn),按下K6,即開鬧鐘,信號(hào)顯示區(qū)得開/關(guān)鬧鐘信號(hào)燈點(diǎn)亮,表示當(dāng)時(shí)間到達(dá)鬧鐘的時(shí)間時(shí),鬧 鈴響;再次按下鬧鈴,為關(guān)鬧鈴,此時(shí)的信號(hào)顯示區(qū)得開/關(guān)鬧鐘信號(hào)燈熄滅。女

12、口下圖2-4:諺辭調(diào)擔(dān)鈧諂動(dòng)禪瀉類。8圖 2-5 鬧鈴運(yùn)行圖OLJOOSSXTAL2ROTTZ7M13-F3 nr RM lbHl電4耳詠LSI1._ -Jr_ | |J圖 2-4 鬧鐘開關(guān)指示圖(3)鬧鈴運(yùn)行圖當(dāng)時(shí)間到達(dá)鬧鐘設(shè)置的時(shí)間時(shí),蜂鳴器會(huì)按每秒兩次的頻率響, 也會(huì)閃爍。如下圖2-5:鬧鐘指示燈007 防皿 口14APDDZ陽3DHgggPQ7MDTF3口皤F3.1W3FZZ*A1DIFZaAllPZ4M12FZJTA13PZKAIaP3-7|M1FF3JHXIH.mhFJJTTIFMWRi:rTALFJ JIBTTTFATliTTr3iFU iZM口p口* 口SDGrtJJDTrzm

13、BP2.infr!lZ3-zNzr;Biz J Q DD盼藍(lán)KHU I-IL tec na-rii-ruiw-BrAMfEUblHri ArmXTALZRBT9該數(shù)字鐘是用一片AT89C51單片機(jī)通過編程去驅(qū)動(dòng)8個(gè)數(shù)碼管實(shí)現(xiàn)的。通 過7個(gè)開關(guān)控制,從上到下7個(gè)開關(guān)K1-K7的功能分別為:嘰覲詿縲鐋囁偽純鉿錈。K1:設(shè)置當(dāng)前時(shí)間時(shí)/分/秒K2:加一按鍵K3:減一按鍵K4:設(shè)置鬧鐘時(shí)間時(shí)/分/秒K5:確認(rèn)/關(guān)閉鬧鈴K6:開/關(guān)鬧鐘K7:復(fù)位控制鍵分別與P1.0P1.6口連接,通過P2口和P3口去控制數(shù)碼管的顯示如 圖所示P2口接數(shù)碼管的ag端,是控制輸出編碼,P3口接數(shù)碼管的18端,是控制動(dòng)態(tài)掃描

14、輸出.熒紿譏鉦鏌觶鷹緇機(jī)庫。從P3.6輸出一個(gè)信號(hào)使二極管發(fā)光,二極管在設(shè)置的鬧鐘時(shí)間到了時(shí)候發(fā) 光,P3.7接一個(gè)蜂鳴器,若有樂曲可以去驅(qū)動(dòng)揚(yáng)聲器實(shí)現(xiàn)。鶼漬螻偉閱劍鯫腎邏蘞。2.4.2電路功能使用說明(1)各個(gè)控制鍵的功能:可對(duì)時(shí)間進(jìn)行校準(zhǔn)調(diào)節(jié)(只能加1);按下設(shè)置鍵數(shù)字時(shí)鐘進(jìn)入鬧鐘設(shè)置狀態(tài),設(shè)置鬧鐘的時(shí)間;時(shí)加1、分加1鍵是在校準(zhǔn)時(shí)間 時(shí)或設(shè) 置鬧鐘時(shí)間對(duì)小時(shí)數(shù)或分鐘數(shù)調(diào)節(jié)而設(shè)置的;按下秒切換鍵就可以進(jìn)入 秒表模式,同時(shí)秒表也開始計(jì)時(shí),按下秒表暫停、復(fù)位鍵就暫停、歸零,如果要 重新對(duì)秒計(jì)時(shí)則可以按秒表開始、復(fù)位;清零鍵可以對(duì)鬧鐘清零。紂憂蔣氳頑薟驅(qū)藥憫騖。(2)AT89C51單片機(jī),通過編

15、寫程序?qū)?shù)碼顯示進(jìn)行控制。(3) 八個(gè)7段數(shù)碼管顯示時(shí)鐘信號(hào)。103.軟件設(shè)計(jì)思路根據(jù)設(shè)計(jì)的要求與內(nèi)容,我們將該軟件設(shè)計(jì)成七個(gè)模塊,他們包括:主程序、 數(shù)碼管動(dòng)態(tài)掃描模塊、當(dāng)前時(shí)間計(jì)時(shí)模塊、鬧鐘輸入輸出模塊、當(dāng)前時(shí)間調(diào)整模 塊、數(shù)制轉(zhuǎn)換模塊以及復(fù)位模塊。穎芻莖峽餑億頓裊賠瀧。3.1 主程序模塊主程序模塊是單片機(jī)最先編譯運(yùn)行的模塊, 所以在這個(gè)模塊里,我們要設(shè)置 主程序和各個(gè)中斷服務(wù)程序的入口地址、各種初始化以及開關(guān)掃描等。濫驂膽閉驟羥闈詔寢賻。MCS-51系列單片機(jī)復(fù)位后,(PC)=0000H,而0003H002BH分別為各中斷 的入口地址。所以,編程時(shí)應(yīng)在0000H處寫一條跳轉(zhuǎn)指令。當(dāng)CPU

16、接受到中斷 請(qǐng)求信號(hào)并予以相應(yīng)后,CPU把當(dāng)前的PC內(nèi)容壓入棧中進(jìn)行保護(hù),然后轉(zhuǎn)入相 應(yīng)的只能中斷服務(wù)程序入口處執(zhí)行。一般應(yīng)在相應(yīng)的中斷服務(wù)程序入口處寫一條 跳轉(zhuǎn)指令,并以跳轉(zhuǎn)指令的目標(biāo)地址作為中斷服務(wù)程序的起始地址進(jìn)行編程。銚銻縵嚌鰻鴻鋟謎諏涼。初始化,是對(duì)將要用到的MCS-51系列單片機(jī)內(nèi)部部件或擴(kuò)展芯片進(jìn)行初始 工作狀態(tài)設(shè)定。下圖3-1是我們?cè)O(shè)計(jì)該主程序模塊的程序框圖。113.2 數(shù)碼管動(dòng)態(tài)掃描模塊在數(shù)碼管動(dòng)態(tài)掃描模塊里,包含了兩個(gè)子程序,一個(gè)是顯示子程序,另一個(gè) 是顯示延時(shí)1MS子程序。其中顯示延時(shí)1MS子程序是用軟件延時(shí)的方法進(jìn)行的, 過程較簡單,這里就不畫出它的程序框圖,下圖3-2

17、為顯示子程序的程序框圖。擠貼綬電麥結(jié)鈺贖嘵類。設(shè)耳中斷*| 了訶鐘子梅j孚關(guān)圖 3-1 主程序設(shè)計(jì)框圖屮包蒞手刮君12圖 3-2 顯示子程序3.3 當(dāng)前時(shí)間計(jì)時(shí)模塊本軟件中的當(dāng)前時(shí)間計(jì)時(shí)模塊實(shí)際上是TO定時(shí)器的中斷服務(wù)程序,我們將TO定時(shí)器工作在方式一中,并讓它每50MS產(chǎn)生一次中斷。賠荊紳諮侖驟遼輩襪錈。每產(chǎn)生一次中斷,進(jìn)入中斷服務(wù)程序后,TO定時(shí)器重新轉(zhuǎn)載初始值。MS50(它是對(duì)50MS中斷次數(shù)統(tǒng)計(jì)的存儲(chǔ)單元地址標(biāo)號(hào))就會(huì)自加一,接著對(duì)MS50進(jìn)行判斷,如果MS50沒有到達(dá)20次(即一秒的時(shí)間),就返回到主程序。如果 到達(dá)20次,MS50將清零,并將MIAO(MIAO是對(duì)秒進(jìn)行計(jì)數(shù)的存儲(chǔ)單

18、元地址 標(biāo)號(hào))將自加一。接著判斷MIAO是否到達(dá)60次,沒到就返回,到了60秒,MIAO將被清零,F(xiàn)EN(FEN是對(duì)分進(jìn)行計(jì)數(shù)的存儲(chǔ)單元地址標(biāo)號(hào))自加一。再 判斷FEN,過程與判斷MIAO相識(shí),也是到達(dá)60分就進(jìn)1時(shí)并對(duì)分清零,時(shí)的 寄存器地址標(biāo)號(hào)是SHI,因?yàn)橐惶熘挥?4小時(shí),所以,如果SHI計(jì)數(shù)到了24時(shí), 它將對(duì)SHI、FEN、MIAO同時(shí)清零。塤礙籟饈決穩(wěn)賽釙冊(cè)庫。下圖3-3為該中斷服務(wù)的程序框圖133.4 鬧鐘輸入輸出模塊由于鬧鐘輸入輸出模塊要實(shí)現(xiàn)的功能較多, 所以它是我們?cè)撥浖性O(shè)計(jì)耗時(shí) 最長的一個(gè)模塊,也是最復(fù)雜的一個(gè)模塊。而我們對(duì)其采取再分子模塊策略, 我 們對(duì)該模塊劃分了6個(gè)

19、子模塊:設(shè)置鬧鐘時(shí)間子模塊、鬧鐘開關(guān)子模塊、檢查鬧 鐘子模塊、鬧鐘指示燈亮子模塊、鬧鐘轉(zhuǎn)換子模塊、蜂鳴器子模塊。下面將逐個(gè) 說明各個(gè)子模塊的功能。裊樣祕(mì)廬廂顫諺鍘羋藺。設(shè)置鬧鐘時(shí)間子模塊:該模塊實(shí)現(xiàn)的功能是,當(dāng)設(shè)置鬧鐘時(shí)間的鍵盤被按下 時(shí),則進(jìn)入該子模塊,通過對(duì)各個(gè)指定按鍵的操作來實(shí)現(xiàn)鬧鐘時(shí)間的設(shè)置。倉嫗盤紲囑瓏詁鍬齊驚。鬧鐘開關(guān)子模塊:該模塊實(shí)現(xiàn)的功能是,對(duì)鬧鐘的工作狀態(tài)進(jìn)行開關(guān),當(dāng)為 開時(shí),鬧鐘時(shí)間到后,鬧鐘指示燈會(huì)亮以及蜂鳴器會(huì)響;當(dāng)為關(guān)時(shí),即便鬧鐘時(shí) 間到了,鬧鐘指示燈不會(huì)亮以及蜂鳴器不會(huì)響。綻萬璉轆娛閬蟶鬮綰瀧。14檢查鬧鐘子模塊:該模塊實(shí)現(xiàn)的功能是,它是在主程序中被循環(huán)調(diào)用的,每

20、調(diào)用一次,它會(huì)把當(dāng)前時(shí)間與鬧鐘時(shí)間進(jìn)行比較,如果當(dāng)前時(shí)間與鬧鐘時(shí)間相同15且鬧鐘開關(guān)為開,則調(diào)用鬧鐘指示燈亮子模塊和蜂鳴器子模塊; 否則繼續(xù)運(yùn)行主 程序。驍顧燁鶚巰瀆蕪領(lǐng)鱺賻。鬧鐘指示燈亮子模塊:該模塊的功能是,當(dāng)時(shí)間到時(shí),它將使鬧鐘指示燈以 每秒兩次的頻率閃爍,閃爍三十秒后熄滅?,嶀暈R曖惲錕縞馭篩涼。蜂鳴器子模塊:該模塊的功能是,當(dāng)時(shí)間到時(shí),它將使鬧鐘指示燈以每秒兩 次的頻率響,響三十秒后停止響聲。鬧鐘轉(zhuǎn)換子模塊:由于在寄存器中存儲(chǔ)的是十六進(jìn)制的數(shù),不能存儲(chǔ)十進(jìn)制 的數(shù),且我們用的LED燈是共陽極的,所以在要輸出顯示鬧鐘的時(shí)間前,要進(jìn) 行鬧鐘數(shù)制轉(zhuǎn)換。故該模塊的功能是實(shí)現(xiàn)對(duì)鬧鐘時(shí)間寄存器中的

21、內(nèi)容進(jìn)行數(shù)制轉(zhuǎn) 換。鎦詩涇艷損樓紲鯗餳類。對(duì)鬧鐘設(shè)計(jì)成六個(gè)子模塊,使我們更容易得設(shè)計(jì)出鬧鐘所要實(shí)現(xiàn)的功能, 這 也就是模塊化的好處,將一個(gè)大型的問題劃分為若干個(gè)小問題, 對(duì)這若干小問題 進(jìn)行設(shè)計(jì),最好通過參數(shù)把這些小模塊連成一個(gè)大的模塊, 從而解決問題。下圖3-4是對(duì)這六個(gè)模塊之間的聯(lián)系的描述。按鍵圖 3-4 鬧鐘輸入輸出模塊鬧鐘開關(guān)鬧鐘指示燈亮鬧鐘轉(zhuǎn)換檢有鬧鐘蜂鳴器鬧鐘時(shí)間寄療器設(shè)置163.5 當(dāng)前時(shí)間調(diào)整模塊當(dāng)前時(shí)間調(diào)整模塊是用來按用戶的需要對(duì)當(dāng)前所顯示的時(shí)間進(jìn)行設(shè)置, 本軟 件的設(shè)計(jì)思路是通過對(duì)相關(guān)的時(shí)間設(shè)置按鍵的掃描進(jìn)行時(shí)間設(shè)置。 具體思路如下 圖3-5:轡燁棟剛殮攬瑤麗鬮應(yīng)。圖 3-

22、5 時(shí)間調(diào)整模塊173.6 復(fù)位模塊復(fù)位模塊是對(duì)當(dāng)前時(shí)間和鬧鐘時(shí)間進(jìn)行復(fù)位, 復(fù)位后的結(jié)果是當(dāng)前時(shí)間變?yōu)?0-00-00,鬧鐘時(shí)間變?yōu)?0-00-00。由于該模塊較為簡單,就不展示其設(shè)計(jì)思路 了。就將其結(jié)果仿真圖展示如下圖3-6。峴揚(yáng)爛滾澗輻灄興渙藺。圖 3-6 復(fù)位結(jié)果圖184.系統(tǒng)的調(diào)試和性能分析4.1 系統(tǒng)的調(diào)試方法整個(gè)系統(tǒng)調(diào)試的主要思想是:先每個(gè)模塊進(jìn)行調(diào)試,然后整個(gè)系統(tǒng)一起調(diào)試。 先軟硬件分開調(diào)試,然后一起調(diào)試。遵循先部分后整體的原則。詩叁撻訥燼憂毀厲鋨驁。系統(tǒng)的在調(diào)試過程中要注意以下幾點(diǎn):(1) 硬件電路焊完之后,在上電之前一定要先用萬用表檢測電源和地之間 是否短路。(2) 上電之

23、后要用示波器觀察信號(hào)的在電路中變化的情況,與設(shè)計(jì)當(dāng)初的 情況相比較,找出差別,并進(jìn)行分析。(3) 軟件調(diào)試過程中可以使用斷點(diǎn)、單步執(zhí)行等常用的方法。(4) 軟硬件聯(lián)調(diào)時(shí),要注意軟件部分要一個(gè)功能一個(gè)功能的調(diào)試。4.1.1輸入按鍵的調(diào)試輸入按鍵的調(diào)試,只要按鍵按下去時(shí),按鍵有相應(yīng)的反應(yīng)就行,通過程序來 判斷,單片機(jī)I/O是否能夠識(shí)別出。4.1.2復(fù)位電路的調(diào)試當(dāng)電源剛接通時(shí),接通電源就完成了系統(tǒng)的初始化4.1.3顯示電路的調(diào)試在本設(shè)計(jì)中,顯示電路只需完成,當(dāng)輸入數(shù)字時(shí)能正確顯示數(shù)字。4.1.4整個(gè)系統(tǒng)的聯(lián)調(diào)在系統(tǒng)各個(gè)部分都調(diào)試完畢之后,即可以進(jìn)行整個(gè)系統(tǒng)的調(diào)試。由于前面各 個(gè)部分的調(diào)試做的都比較

24、充分,所以在實(shí)際調(diào)試過程中,能夠較順利的實(shí)現(xiàn)整個(gè) 系統(tǒng)預(yù)期的功能。則鯤愜韋瘓賈暉園棟瀧。194.2心得體會(huì)課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問題,鍛 煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程隨著科學(xué) 技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域,在生活中可以說得是無處不在。因此作為二十一世紀(jì)的大學(xué)來說掌握單片機(jī)的開發(fā) 技術(shù)是十分重要的。脹鏝彈奧秘孫戶孿釔賻。回顧起此次單片機(jī)課程設(shè)計(jì),我仍感慨頗多,的確,從選題到定稿,從理論 到實(shí)踐,在這兩個(gè)星期的日子里,可以說得是苦多于甜,但是可以學(xué)到很多的東 西,同時(shí)不僅可以鞏固了以前所學(xué)

25、過的知識(shí), 而且學(xué)到了很多在書本上所沒有學(xué) 到過的知識(shí)。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得 出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。 在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會(huì)遇 到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,比如說不懂一些元器件的使用方法, 對(duì)單片機(jī)匯編語言掌握得不好通過這次課程設(shè)計(jì)之后,一定把以前所學(xué)過的知識(shí)重新溫故。鰓躋峽禱紉誦幫廢掃減。這次課程設(shè)計(jì)終于順利完

26、成了,在設(shè)計(jì)中遇到了很多編程問題,最后在老師 的辛勤指導(dǎo)下,終于游逆而解。同時(shí),在老師那里我學(xué)得到很多實(shí)用的知識(shí),在 次我表示感謝!稟虛嬪賑維嚌妝擴(kuò)踴糶。參考文獻(xiàn)1、單片機(jī)原理及應(yīng)用李建忠編西安電子科技大學(xué)出版社2、 單片微型計(jì)算機(jī)原理與接口技術(shù)高峰編電子工業(yè)出版社3、單片機(jī)應(yīng)用新技術(shù)教程鄒逢興編高等教育出版社4、 16位微型計(jì)算機(jī)原理接口及其應(yīng)用朱宇光 編 電子工業(yè)出版社5、微型計(jì)算機(jī)原理與接口技術(shù) 吳秀清 編 中國科學(xué)技術(shù)出版社6、微型計(jì)算機(jī)接口技術(shù) 鄧亞平編 清華大學(xué)出版社7、單片機(jī)原理及及應(yīng)用 王迎旭編機(jī)械工業(yè)出版社20附錄附錄 A系統(tǒng)原理圖21附錄 B 程序源代碼MS50 EQU 3

27、0H SHI EQU 31H FEN EQU 32H MIAO EQU 33H BUF EQU 34H HHEQU 40H FF EQU 41H MM EQU 42H DENG BIT P3.5 BIAOZ BIT P3.6 SPK BITP3.7 ALB EQU 20H.0 K1 BIT P1.0K2 BIT P1.1K3 BIT P1.2K4 BIT P1.3K5 BIT P1.4K6 BIT P1.5K7 BIT P1.6MOV SP,#60HORG 00HAJMP MAINORG 0BHAJMP TIME0MAIN:SETB DENGCLR ALBACALL CHUSHIACALL I

28、NTOLOOP:ACALL NAOPROACALLCONVACALL DISPLAY JB K6,L OOP1ACALL BIAOSJMP LOOPLOOP1: JB K1,LOOP2ACALL SETTIMESJMP LOOPLOOP2: JB K4, LOOP3ACALLSETNAOSJMP LOOP22L00P3:JB K7,L00PACALL RSTSJMP LOOP;-陽簍埡鮭罷規(guī)嗚舊巋錟。CONV:;轉(zhuǎn)換子程序MOV A,SHI;轉(zhuǎn)換小時(shí) 存到34 35HMOV B,#10DIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV BUF,AMOV A,BMOVC A,

29、A+DPTRMOV BUF+1,AMOV A,FEN;轉(zhuǎn)換分 存到37 38HMOV B,#10DIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV BUF+3,AMOV A,BMOVC A,A+DPTRMOV BUF+4,AMOV A,MIAO;轉(zhuǎn)換秒存到40 41HMOV B,#10DIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV BUF+6,AMOV A,BMOVC A,A+DPTRMOV BUF+7,AMOV BUF+2,#0BFHMOV BUF+5,#0BFHRETTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,

30、0F8H,80H,90H;陽碼表溈氣嘮戇萇鑿鑿櫧諤應(yīng)。;-鋇嵐縣緱虜榮產(chǎn)濤團(tuán)藺。DISPLAY:;顯示子程序MOV R1,#BUFMOV A,#01HMOV R2,#8;第三個(gè)位置顯示一杠;第五個(gè)位置顯示一杠23Dp1:MOV P2,APUSH ACC24MOV A,R1MOV P0,AACALL DELAYPOP ACCRL AINC R1CJNE R1,#BUF+8,DYMOV R1,#BUFDY:DJNZ R2,Dp1RET懨俠劑鈍觸樂鷴燼觶騮。BIAO: CPL ALB;鬧鐘開關(guān)CPL BIAOZBIAO1:ACALLCONVACALL DISPLAYJNB K6,BIAO1RETJS

31、ETTIME:;設(shè)置時(shí)間CLR TR0TT:ACALL DISPLAY ;設(shè)置小時(shí)TS:JNB K1,TTTSS:ACALL DISPLAYSJNB K1,TFJNB K2,JIASJNB K3,JIANSJNB K5,QUESJMP TSSJIAS:INC SHI;加時(shí)子程序MOV A,SHICJNE A,#24,K2SMOV SHI,#0K2S:ACALLCONV ACALL DISPLAYJNB K2,K2SSJMP TSSJIANS:DEC SHI;減時(shí)子程序MOV A,SHICJNE A,#255,K3SMOV SHI,#23K3S:ACALLCONV ACALL DISPLAYJN

32、B K3,K3SSJMP TSS謾飽兗爭詣繚鮐癩別濾。25QUE:ACALL BZSETB TROQQ:ACALL CONVACALL DISPLAYJNB K5,QQ LJMP LOOPJTM:ACALL DISPLAYJNB K1,TM;設(shè)置秒TMM:ACALL DISPLAYMJNB K1,TSJNB K2,JIAMJNB K3,JIANMJNB K5,QUEJMPTMMJIAM:INC MIAO;加秒MOV A,MIAOCJNE A,#60,K2MMOV MIAO,#0K2M:ACALLCONV ACALLDISPLAYJNB K2,K2MJMPTMMJIANM: DEC MIAO誠秒

33、MOV A,MIAOCJNE A,#255,K3MMOV MIAO,#59K3M:ACALLCONVACALL DISPLAYJNB K3,K3MJMPTMM-咼鉉們歟謙鴣餃競蕩賺。JTF:ACALL DISPLAYJNB K1,TF;設(shè)置分鐘TFF:ACALL DISPLAYFJNB K1,TMJNB K2,JIAFJNB K3,JIANFJNB K5,QUEJMP TFFJIAF:INC FENMOV A,FENCJNE A,#60,K2FMOV FEN,#0;加分鐘26K2F:ACALL CONVACALL DISPLAYJNB K2,K2FJMP TFFDEC FENMOV A,FEN

34、CJNE A,#255,K3FMOV FEN,#59K3F:ACALL CONVACALL DISPLAYJNB K3,K3FJMP TFF;-瑩諧齷蘄賞組靄縐嚴(yán)減。DISPLAYS:;時(shí)閃子程序MOV R3,#20DISS:MOV R1,#BUF+2MOV A,#04HMOV R2,#6ACALL DP1DJNZ R3,DISSMOV R3,#20DIS2:MOV R1,#BUFMOV A,#01H MOV R2,#8 ACALL DP1 DJNZ R3,DIS2RET;分閃子程序MOV A,#20HMOV R2,#6ACALL DP1DJNZ R3,DISFMOV R3,#20ACALL

35、DIS2RETDISPLAYM:;秒閃子程序MOV R3,#20MOV R1,#BUFMOV A,#01HMOV R2,#6ACALL DP1DJNZ R3,DISM;減分JIANF:DISPLAYF:DISF:MOV R3,#20MOV R1,#BUF+5DISM:27MOV R3,#20ACALL DIS2RETJSETNAO:;設(shè)置鬧鐘時(shí)間TTN:ACALLCONVNAOACALL DISPLAY;鬧設(shè)置小時(shí)TSN:JNB K4,TTNTSSN:ACALL DISPLAYSJNB K4,TFNJNB K2,JIASNJNB K3,JIANSNJNB K5,QUENSJMP TSSNJIA

36、SN:INC HH;鬧加時(shí)子程序MOV A,HHCJNE A,#24,K2SNMOV HH,#0K2SN:ACALLCONVNAO ACALL DISPLAY JNBK2,K2SN SJMP TSSNJIANSN:DEC HH;鬧減時(shí)子程序MOV A,HHCJNE A,#255,K3SNMOV HH,#23K3SN:ACALLCONVNAO ACALL DISPLAY JNBK3,K3SN SJMP TSSNQUEN:ACALL BZSETB TR0LJMP LOOPJTMN:ACALLCONVNAOACALL DISPLAY;鬧設(shè)置秒JNB K4,TMNTMMN:ACALL DISPLAYM

37、JNB K4,TSNJNB K2,JIAMNJNB K3,JIANMNJNB K5,QUENJMPTMMN28JIAMN:INC MM;鬧加秒29MOV A,MMCJNE A,#60,K2MNMOV MM,#0K2MN:ACALLCONVNAO ACALL DISPLAY JNB K2,K2MNJMPTMMNJIANMN:DEC MM;鬧減秒MOV A,MMCJNE A,#255,K3MNMOV MM,#59K3MN:JACALLCONVNAOACALL DISPLAYJNB K3,K3MNJMPTMMN- 麩肅鵬鏇轎騍鐐縛縟糶。TFN:ACALLCONVNAOACALL DISPLAY;鬧設(shè)

38、置分鐘JNB K4,TFNTFFN:ACALL DISPLAYFJNB K4,TMNJNB K2,JIAFNJNB K3,JIANFNJNB K5,QUENJMP TFFNJIAFN:INC FF;鬧加分鐘MOV A,FFCJNE A,#60,K2FNMOV FF,#0K2FN:ACALLCONVNAOACALL DISPLAY JNB K2,K2FNJMP TFFNJIANFN:DEC FF;減分鐘MOV A,FFCJNE A,#255,K3FNMOV FF,#59K3FN:ACALLCONVNAO ACALL DISPLAY JNB K3,K3FNJMP TFFNJRST:;復(fù)位MOV S

39、HI,#030MOV FEN,#O MOVMIAO,#0 MOVMS50,#0 RETNAOPRO:;檢查鬧鐘JB ALB,TI3RETTI3:MOV A,SHIMOV B,HHCJNE A,B,BKMOV A,FENMOV B,FFCJNE A,B,BKMOV A,MIAOMOV B,MMCJNE A,B,BKACALL TIMEOUTBK: RETCONVNAO:;轉(zhuǎn)換子程序MOV A,HH;轉(zhuǎn)換小時(shí) 存到34 35HMOV B,#10DIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV BUF,AMOV A,BMOVC A,A+DPTRMOV BUF+1,AMOV A,FF;轉(zhuǎn)換分 存到37 38HMOV B,#10DIV ABMOV DPTR,#TABMOVC A,A+DPT

溫馨提示

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