基于單片機的簡易時鐘設(shè)計_第1頁
基于單片機的簡易時鐘設(shè)計_第2頁
基于單片機的簡易時鐘設(shè)計_第3頁
基于單片機的簡易時鐘設(shè)計_第4頁
基于單片機的簡易時鐘設(shè)計_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

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

2、模塊 9 鵝婭盡損鵪慘歷蘢鴛賴。3.2 數(shù)碼管動態(tài)掃描模塊 10 籟叢媽羥為贍僨蟶練淨(jìng)。3.3 當(dāng)前時間計時模塊 11 預(yù)頌圣鉉儐歲齦訝驊糴。3.4 鬧鐘輸入輸出模塊 12 滲釤嗆儼勻諤鱉調(diào)硯錦。3.5 當(dāng)前時間調(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 蠟變黲癟報倀鉉錨鈰贅。4.1.2 復(fù)位電路的調(diào)試 16 買鯛鴯譖曇膚遙閆擷凄。4.1.3 顯示電路的調(diào)試 16 綾鏑鯛駕櫬鶘蹤韋轔糴。4.1.4 整個系統(tǒng)的聯(lián)調(diào)

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

4、示 的計時裝置, 由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用, 使得數(shù)字 鐘的精度,遠遠超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便, 而且大大地擴展了鐘表的報時功能。 數(shù)字鐘已成為人們?nèi)粘I钪械谋匦杵罚?廣 泛應(yīng)用于家庭、車站、碼頭、劇院、辦公室等場所,給人們的生活、學(xué)習(xí)、工作 帶來極大的方便 4 。不僅如此,在現(xiàn)代化的進程中,也離不開電子鐘的相關(guān)功能 和原理,比如機械手的控制、家務(wù)的自動化、定時自動報警、按時自動打鈴、時 間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚 至各種定時電氣的自動啟用等, 所有這些, 都是以鐘表數(shù)字化為基礎(chǔ)的。 而且是

5、 控制的核心部分。因此,研究數(shù)字鐘及擴大其應(yīng)用,有著非?,F(xiàn)實的意義。 凍鈹 鋨勞臘鍇癇婦脛糴。電子鐘在工業(yè)控制和日常生活中是很重要的, 它不僅可以用于計時、 提醒又 可用于對機器的控制, 在自動化的過程中必然有電子鐘的參與, 因此電子鐘的應(yīng) 用會越來越廣泛。而且向著精確、低功耗、多功能發(fā)展?;趩纹瑱C設(shè)計的數(shù)字 鐘精確度較高, 因為在程序的執(zhí)行過程中, 任何指令都不影響定時器的正常計 數(shù),即便程序很長也不會影響中斷的時間。 從而, 使數(shù)字鐘的精度僅僅取決于單 片機的產(chǎn)生機器周期電路和定時器硬件電路的精確度。 另外,程序較為簡潔, 具 有可靠性和較好的可讀性。 如果我們想將它應(yīng)用于實時控制之中,

6、 只要對上述程 序和硬件電路稍加修改, 便可以得到實時控制的實用系統(tǒng), 從而應(yīng)用到實際工作 與生產(chǎn)中去。 恥諤銪滅縈歡煬鞏鶩錦。數(shù)字電子鐘的設(shè)計方法有多種,例如,可用中小規(guī)模集成電路組成電子鐘, 也可以利用專用的電子鐘芯片配以顯示電路及其所需要的外圍電路組成電子鐘 還可以利用單片機來實現(xiàn)電子鐘等等。這些方法都各有特點, 其中,利用單片 機實現(xiàn)的電子鐘具有編程靈活, 便于功能擴充, 精確度高等特點。 鯊腎鑰詘褳鉀溈懼統(tǒng)庫。2.整體設(shè)計思路這部分主要介紹工作安排和整體設(shè)計的思想。工作過程規(guī)劃如下:圖 2.1 整體設(shè)計思路針對要實現(xiàn)的功能,擬采用 AT89C51單片機進行設(shè)計, AT89C51 單片

7、機是一 款低功耗,高性能 CMOS8位單片機,片內(nèi)含 4KB在線可編程( ISP)的可反復(fù)擦 寫1000次的Flash只讀程序存儲器,器件采用高密度、非易失性存儲技術(shù)制造, 兼容標(biāo)準(zhǔn)MCS- 51指令系統(tǒng)及 80C51引腳結(jié)構(gòu)7 。這樣,既能做到經(jīng)濟合理又能 實現(xiàn)預(yù)期的功能。 碩癘鄴頏謅攆檸攜驤蘞。在程序方面, 采用分塊設(shè)計的方法, 這樣既減小了編程難度、 使程序易于理 解,又能便于添加各項功能。程序可分為顯示程序、調(diào)時顯示運用這種方法,關(guān) 鍵在于各模塊的兼容和配合,若各模塊不匹配會出現(xiàn)意想不到的錯誤。 閿擻輳嬪諫 遷擇楨秘騖。本電子鐘設(shè)計主要是依照圖 2.1 中的流程做出來的,時間分配比較均

8、勻。首 先,在編程之前必須了解硬件結(jié)構(gòu)尤其是各引腳的用法, 以及內(nèi)部寄存器、 存儲 單元的用法,否則,編程無從下手,電路也無法設(shè)計。這是前期準(zhǔn)備工作。第二 部分是硬件部分: 依據(jù)想要的功能分塊設(shè)計設(shè)計, 比如輸入需要開關(guān)電路, 輸出 需要顯示驅(qū)動電路和液晶電路等。第三部分是軟件部分:先學(xué)習(xí)理解C語言的編程方法再根據(jù)設(shè)計的硬件電路進行分塊的編程調(diào)試, 最終完成程序設(shè)計。 第四部 分是軟件畫圖部分: 設(shè)計好電路后進行畫圖, 包括電路圖和仿真圖的繪制。 第五 部分是軟件仿真部分: 軟硬件設(shè)計好后將軟件載入芯片中進行仿真, 仿真無法完 成時檢查軟件程序和硬件電路并進行修改直到仿真成功。 第六部分是硬件

9、實現(xiàn)部 分:連接電路并導(dǎo)入程序檢查電路, 若與設(shè)計的完全一樣一般能實現(xiàn)想要的功能。 氬嚕躑竄貿(mào)懇彈瀘頷澩。2.1 硬件各部分所能完成的功能(1)單片機發(fā)送的信號通過程序控制最終在數(shù)碼管上顯示出來。(2)單片機通過輸出各種電脈沖信號來驅(qū)動控制各部分正常工作。(3)為使時鐘走時與標(biāo)準(zhǔn)時間一致,校時電路是必不可少的,鍵盤用來校 正數(shù)碼管上顯示的時間。(4)單片機通過控制鬧鈴電路來完成定時鬧鐘的功能。(5)單片機通過程序?qū)︳[鈴信號燈進行控制,可方便我們對鬧鈴的開關(guān)以及是否在鬧鈴進行觀察。(6)由于要設(shè)置定時功能,所以配置了對鬧鐘設(shè)置的鍵盤。2.2 系統(tǒng)工作原理設(shè)計的電路主要由四模塊構(gòu)成:時間顯示電路、

10、 信號顯示電路、 鍵盤控制電路、外設(shè)鬧鈴電路以及核心控制電路詳細電路功能圖如圖 2-2:圖 2-2 詳細電路功能圖本設(shè)計采用匯編語言程序設(shè)計,使單片機控制數(shù)碼管顯示時、分、秒,當(dāng)秒 計數(shù)計滿 60 時就向分進位, 分計數(shù)器計滿 60 后向時計數(shù)器進位, 小時計數(shù)器按 “23 翻 0”規(guī)律計數(shù)。時、分、秒的計數(shù)結(jié)果經(jīng)過數(shù)據(jù)處理可直接送顯示器顯示。 設(shè)計采用的是時、分、秒顯示,單片機對數(shù)據(jù)進行處理同時在數(shù)碼管上顯示。 釷 鵒資贏車贖孫滅獅贅。2.3 時鐘各功能分析及圖解2.4.1 電路各功能圖解分析( 1) 時鐘運行圖仿真開始運行時,或按下 K7 鍵時,時鐘從 00:00:00 開始運行,其中按下

11、 K1 鍵可進入當(dāng)前時間調(diào)節(jié), K2和K3分別負責(zé)加一和減一, K5鍵為確認鍵。 慫闡譜 鯪逕導(dǎo)嘯畫長涼。時鐘運行圖如圖 2-3 所示:圖 2-3 時鐘運行圖( 2) 鬧鐘開關(guān)指示圖當(dāng)按下 K4 鍵后,可進入鬧鐘設(shè)時控制,設(shè)置完后按確認,按下 K6 ,即開 鬧鐘,信號顯示區(qū)得開 /關(guān)鬧鐘信號燈點亮,表示當(dāng)時間到達鬧鐘的時間時,鬧 鈴響;再次按下鬧鈴,為關(guān)鬧鈴,此時的信號顯示區(qū)得開 /關(guān)鬧鐘信號燈熄滅。 如下圖 2-4: 諺辭調(diào)擔(dān)鈧諂動禪瀉類。圖 2-4 鬧鐘開關(guān)指示圖鬧鐘指示燈(3)鬧鈴運行圖 當(dāng)時間到達鬧鐘設(shè)置的時間時, 蜂鳴器會按每秒兩次的頻率響,也會閃爍。如下圖 2-5:圖 2-5 鬧鈴

12、運行圖7該數(shù)字鐘是用一片 AT89C51 單片機通過編程去驅(qū)動 8 個數(shù)碼管實現(xiàn)的。通 過 7 個開關(guān)控制 ,從上到下 7 個開關(guān) K1-K7 的功能分別為: 嘰覲詿縲鐋囁偽純鉿錈。K1:設(shè)置當(dāng)前時間時 /分/秒K2:加一按鍵K3:減一按鍵K4:設(shè)置鬧鐘時間時 /分/秒K5: 確認 /關(guān)閉鬧鈴K6:開/關(guān)鬧鐘K7: 復(fù)位控制鍵分別與 P1.0P1.6口連接,通過 P2口和 P3口去控制數(shù)碼管的顯示如 圖所示 P2 口接數(shù)碼管的 ag 端,是控制輸出編碼 ,P3 口接數(shù)碼管的 1 8 端 ,是控制動態(tài)掃描輸出 熒紿譏鉦鏌觶鷹緇機庫。從 P3.6 輸出一個信號使二極管發(fā)光,二極管在設(shè)置的鬧鐘時間到

13、了時候發(fā) 光, P3.7 接一個蜂鳴器,若有樂曲可以去驅(qū)動揚聲器實現(xiàn)。 鶼漬螻偉閱劍鯫腎邏蘞。2.4.2電路功能使用說明(1)各個控制鍵的功能:可對時間進行校準(zhǔn)調(diào)節(jié)(只能加) ;按下設(shè)置鍵 數(shù)字時鐘進入鬧鐘設(shè)置狀態(tài), 設(shè)置鬧鐘的時間; 時加、 分加鍵是在校準(zhǔn)時間 時或設(shè) 置鬧鐘時間對小時數(shù)或分鐘數(shù)調(diào)節(jié)而設(shè)置的;按下秒切換鍵就可以進入 秒表模式,同時秒表也開始計時,按下秒表暫停、復(fù)位鍵就暫停、歸零,如果要 重新對秒計時則可以按秒表開始、復(fù)位;清零鍵可以對鬧鐘清零。 紂憂蔣氳頑薟驅(qū)藥 憫騖。(2)AT89C51單片機,通過編寫程序?qū)?shù)碼顯示進行控制。(3)八個 7 段數(shù)碼管顯示時鐘信號。3. 軟件

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

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

16、下圖 3-2 為顯示子程序的程序框圖。 擠貼綬電麥結(jié)鈺贖嘵類。10圖 3-2 顯示子程序3.3 當(dāng)前時間計時模塊本軟件中的當(dāng)前時間計時模塊實際上是 T0 定時器的中斷服務(wù)程序,我們將 T0 定時器工作在方式一中,并讓它每 50MS 產(chǎn)生一次中斷。 賠荊紳諮侖驟遼輩襪錈。每產(chǎn)生一次中斷,進入中斷服務(wù)程序后, T0 定時器重新轉(zhuǎn)載初始值。 MS50 (它是對 50MS 中斷次數(shù)統(tǒng)計的存儲單元地址標(biāo)號)就會自加一,接著對 MS50 進行判斷,如果 MS50 沒有到達 20 次(即一秒的時間),就返回到主程序。如果 到達20次,MS50將清零,并將MIAO(MIAO 是對秒進行計數(shù)的存儲單元地址 標(biāo)號

17、)將自加一。接著判斷 MIAO 是否到達 60 次,沒到就返回,到了 60 秒, MIAO 將被清零, FEN(FEN 是對分進行計數(shù)的存儲單元地址標(biāo)號)自加一。再 判斷 FEN,過程與判斷 MIAO 相識,也是到達 60 分就進 1 時并對分清零,時的 寄存器地址標(biāo)號是 SHI,因為一天只有 24小時,所以,如果SHI計數(shù)到了 24時, 它將對 SHI、FEN、 MIAO 同時清零。 塤礙籟饈決穩(wěn)賽釙冊庫。下圖 3-3 為該中斷服務(wù)的程序框圖113.4 鬧鐘輸入輸出模塊由于鬧鐘輸入輸出模塊要實現(xiàn)的功能較多, 所以它是我們該軟件中設(shè)計耗時 最長的一個模塊, 也是最復(fù)雜的一個模塊。 而我們對其采

18、取再分子模塊策略, 我 們對該模塊劃分了 6 個子模塊:設(shè)置鬧鐘時間子模塊、 鬧鐘開關(guān)子模塊、 檢查鬧 鐘子模塊、鬧鐘指示燈亮子模塊、鬧鐘轉(zhuǎn)換子模塊、蜂鳴器子模塊。下面將逐個 說明各個子模塊的功能。 裊樣祕廬廂顫諺鍘羋藺。設(shè)置鬧鐘時間子模塊: 該模塊實現(xiàn)的功能是, 當(dāng)設(shè)置鬧鐘時間的鍵盤被按下 時,則進入該子模塊,通過對各個指定按鍵的操作來實現(xiàn)鬧鐘時間的設(shè)置。 倉嫗 盤紲囑瓏詁鍬齊驁。鬧鐘開關(guān)子模塊: 該模塊實現(xiàn)的功能是, 對鬧鐘的工作狀態(tài)進行開關(guān), 當(dāng)為 開時,鬧鐘時間到后,鬧鐘指示燈會亮以及蜂鳴器會響;當(dāng)為關(guān)時,即便鬧鐘時 間到了,鬧鐘指示燈不會亮以及蜂鳴器不會響。 綻萬璉轆娛閬蟶鬮綰瀧。檢

19、查鬧鐘子模塊: 該模塊實現(xiàn)的功能是, 它是在主程序中被循環(huán)調(diào)用的, 每 調(diào)用一次, 它會把當(dāng)前時間與鬧鐘時間進行比較, 如果當(dāng)前時間與鬧鐘時間相同12且鬧鐘開關(guān)為開, 則調(diào)用鬧鐘指示燈亮子模塊和蜂鳴器子模塊; 否則繼續(xù)運行主 程序。 驍顧燁鶚巰瀆蕪領(lǐng)鱺賻。鬧鐘指示燈亮子模塊: 該模塊的功能是, 當(dāng)時間到時, 它將使鬧鐘指示燈以 每秒兩次的頻率閃爍,閃爍三十秒后熄滅。 瑣釙濺曖惲錕縞馭篩涼。蜂鳴器子模塊: 該模塊的功能是, 當(dāng)時間到時, 它將使鬧鐘指示燈以每秒兩 次的頻率響,響三十秒后停止響聲。鬧鐘轉(zhuǎn)換子模塊: 由于在寄存器中存儲的是十六進制的數(shù), 不能存儲十進制 的數(shù),且我們用的 LED 燈是

20、共陽極的,所以在要輸出顯示鬧鐘的時間前,要進 行鬧鐘數(shù)制轉(zhuǎn)換。故該模塊的功能是實現(xiàn)對鬧鐘時間寄存器中的內(nèi)容進行數(shù)制轉(zhuǎn) 換。 鎦詩涇艷損樓紲鯗餳類。對鬧鐘設(shè)計成六個子模塊, 使我們更容易得設(shè)計出鬧鐘所要實現(xiàn)的功能, 這 也就是模塊化的好處, 將一個大型的問題劃分為若干個小問題, 對這若干小問題 進行設(shè)計,最好通過參數(shù)把這些小模塊連成一個大的模塊, 從而解決問題。 下圖 3-4 是對這六個模塊之間的聯(lián)系的描述。 櫛緶歐鋤棗鈕種鵑瑤錟。圖 3-4 鬧鐘輸入輸出模塊133.5 當(dāng)前時間調(diào)整模塊當(dāng)前時間調(diào)整模塊是用來按用戶的需要對當(dāng)前所顯示的時間進行設(shè)置, 本軟 件的設(shè)計思路是通過對相關(guān)的時間設(shè)置按鍵的

21、掃描進行時間設(shè)置。 具體思路如下 圖 3-5:轡燁棟剛殮攬瑤麗鬮應(yīng)。圖 3-5 時間調(diào)整模塊143.6 復(fù)位模塊復(fù)位模塊是對當(dāng)前時間和鬧鐘時間進行復(fù)位, 復(fù)位后的結(jié)果是當(dāng)前時間變?yōu)?00-00-00,鬧鐘時間變?yōu)?00-00-00。由于該模塊較為簡單,就不展示其設(shè)計思路 了。就將其結(jié)果仿真圖展示如下圖 3-6。峴揚斕滾澗輻灄興渙藺。圖 3-6 復(fù)位結(jié)果圖154.系統(tǒng)的調(diào)試和性能分析4.1 系統(tǒng)的調(diào)試方法整個系統(tǒng)調(diào)試的主要思想是: 先每個模塊進行調(diào)試, 然后整個系統(tǒng)一起調(diào)試。 先軟硬件分開調(diào)試, 然后一起調(diào)試。 遵循先部分后整體的原則。 詩叁撻訥燼憂毀厲鋨驁。系統(tǒng)的在調(diào)試過程中要注意以下幾點:(

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

23、個系統(tǒng)的聯(lián)調(diào)在系統(tǒng)各個部分都調(diào)試完畢之后, 即可以進行整個系統(tǒng)的調(diào)試。 由于前面各 個部分的調(diào)試做的都比較充分, 所以在實際調(diào)試過程中, 能夠較順利的實現(xiàn)整個 系統(tǒng)預(yù)期的功能。 則鯤愜韋瘓賈暉園棟瀧。164.2 心得體會課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識 ,發(fā)現(xiàn) ,提出 ,分析和解決實際問題 ,鍛 煉實踐能力的重要環(huán)節(jié) ,是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程 .隨著科學(xué) 技術(shù)發(fā)展的日新日異,單片機已經(jīng)成為當(dāng)今計算機應(yīng)用中空前活躍的領(lǐng)域, 在 生活中可以說得是無處不在。 因此作為二十一世紀(jì)的大學(xué)來說掌握單片機的開發(fā) 技術(shù)是十分重要的。 脹鏝彈奧秘孫戶孿釔賻?;仡櫰鸫舜螁纹瑱C課程設(shè)計,我仍感慨

24、頗多,的確,從選題到定稿,從理論 到實踐,在這兩個星期的日子里, 可以說得是苦多于甜, 但是可以學(xué)到很多的東 西,同時不僅可以鞏固了以前所學(xué)過的知識, 而且學(xué)到了很多在書本上所沒有學(xué) 到過的知識。 通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的, 只有 理論知識是遠遠不夠的, 只有把所學(xué)的理論知識與實踐相結(jié)合起來, 從理論中得 出結(jié)論,才能真正為社會服務(wù), 從而提高自己的實際動手能力和獨立思考的能力。 在設(shè)計的過程中遇到問題, 可以說得是困難重重, 這畢竟第一次做的, 難免會遇 到過各種各樣的問題, 同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處, 對以前所學(xué) 過的知識理解得不夠深刻, 掌握得不

25、夠牢固, 比如說不懂一些元器件的使用方法, 對單片機匯編語言掌握得不好通過這次課程設(shè)計之后, 一定把以前所學(xué)過的 知識重新溫故。 鰓躋峽禱紉誦幫廢掃減。這次課程設(shè)計終于順利完成了, 在設(shè)計中遇到了很多編程問題, 最后在老師 的辛勤指導(dǎo)下,終于游逆而解。同時,在老師那里我學(xué)得到很多實用的知識,在 次我表示感謝! 稟虛嬪賑維嚌妝擴踴糶。參考文獻1、單片機原理及應(yīng)用李建忠 編 西安電子科技大學(xué)出版社2、單片微型計算機原理與接口技術(shù) 高峰 編 電子工業(yè)出版社3、單片機應(yīng)用新技術(shù)教程鄒逢興 編 高等教育出版社4、16 位微型計算機原理接口及其應(yīng)用 朱宇光 編 電子工業(yè)出版社5、微型計算機原理與接口技術(shù)

26、吳秀清 編 中國科學(xué)技術(shù)出版社6、微型計算機接口技術(shù) 鄧亞平 編 清華大學(xué)出版社7 、單片機原理及及應(yīng)用 王迎旭 編 機械工業(yè)出版社17附錄附錄 A 系統(tǒng)原理圖18附錄 B 程序源代碼MS50 EQU 30H SHI EQU 31H FEN EQU 32HMIAO EQU 33H BUF EQU 34H HH EQU 40H FF EQU 41H MM EQU 42H DENG BIT P3.5 BIAOZ BIT P3.6 SPK BIT P3.7 ALB EQU 20H.0 K1 BIT P1.0 K2 BIT P1.1 K3 BIT P1.2 K4 BIT P1.3 K5 BIT P1.

27、4 K6 BIT P1.5 K7 BIT P1.6 MOV SP,#60HORG 00HAJMP MAINORG 0BHAJMP TIME0MAIN: SETB DENG CLR ALB ACALL CHUSHI ACALL INTO LOOP: ACALL NAOPRO ACALL CONV ACALL DISPLAY JB K6,LOOP1 ACALL BIAO SJMP LOOP LOOP1: JB K1,LOOP2ACALL SETTIME SJMP LOOPLOOP2: JB K4,LOOP3 ACALL SETNAO SJMP LOOP19LOOP3: JB K7,LOOPACAL

28、L RSTSJMP LOOP; 陽簍埡鮭罷規(guī)嗚舊巋錟。CONV:;轉(zhuǎn)換子程序MOV A,SHI;轉(zhuǎn)換小時 存到 34 35HMOV B,#10DIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV BUF,AMOV A,BMOVC A,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,#TAB

29、MOVC A,A+DPTRMOV BUF+6,AMOV A,BMOVC A,A+DPTR;第三個位置顯示一杠;第五個位置顯示一杠MOV BUF+7,AMOV BUF+2,#0BFHMOV BUF+5,#0BFHRETTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H; 陽碼表 溈氣嘮戇萇鑿鑿櫧諤應(yīng)。; 鋇嵐縣緱虜榮產(chǎn)濤團藺。DISPLAY: ;顯示子程序 MOV R1,#BUF MOV A,#01H MOV R2,#8 Dp1:MOV P2,A PUSH ACC20MOV A,R1 MOV P0,A ACALL DELAY POP ACC

30、RL A INC R1 CJNE R1,#BUF+8,DY MOV R1,#BUF DY: DJNZ R2,Dp1RET懨俠劑鈍觸樂鷴燼觶騮。BIAO1:ACALL CONVACALL DISPLAYJNB K6,BIAO1RETSETTIME:;設(shè)置時間CLR TR0TT:ACALL DISPLAY ;設(shè)置小時TS:JNB K1,TTTSS:ACALL DISPLAYSJNB K1,TFJNB K2,JIASJNB K3,JIANSJNB K5,QUESJMP TSSJIAS:INC SHI ;加時子程序MOV A,SHICJNE A,#24,K2SMOV SHI,#0K2S:ACALL C

31、ONVACALL DISPLAY JNB K2,K2S SJMP TSSJIANS:DEC SHI ;減時子程序MOV A,SHICJNE A,#255,K3SMOV SHI,#23K3S:ACALL CONVACALL DISPLAY JNB K3,K3S SJMP TSSBIAO: CPL ALB;鬧鐘開關(guān)CPL BIAOZ謾飽兗爭詣繚鮐癩別瀘。21QUE: ACALL BZ SETB TR0QQ: ACALL CONV ACALL DISPLAY JNB K5,QQ LJMP LOOPTM:ACALL DISPLAYJNB K1,TM;設(shè)置秒TMM:ACALL DISPLAYMJNB K

32、1,TSJNB K2,JIAMJNB K3,JIANMJNB K5,QUEJMP TMMJIAM:INC MIAO;加秒MOV A,MIAOCJNE A,#60,K2MMOV MIAO,#0K2M:ACALL CONVACALL DISPLAY JNB K2,K2M JMP TMMJIANM: DEC MIAO;減秒MOV A,MIAOCJNE A,#255,K3MMOV MIAO,#59K3M:ACALL CONVACALL DISPLAYJNB K3,K3MJMP TMM 咼鉉們歟謙鴣餃競蕩賺。TF:ACALL DISPLAYJNB K1,TF;設(shè)置分鐘TFF:ACALL DISPLAYF

33、JNB K1,TMJNB K2,JIAFJNB K3,JIANFJNB K5,QUEJMP TFFJIAF:INC FENMOV A,FENCJNE A,#60,K2FMOV FEN,#0;加分鐘22K2F: ACALL CONVACALL DISPLAYJNB K2,K2FJIANF:;減分鐘JMP TFFDEC FENMOV A,FENCJNE A,#255,K3FMOV FEN,#59K3F: ACALL CONVACALL DISPLAYJNB K3,K3FJMP TFF; 瑩諧齷蘄賞組靄縐嚴減。DISPLAYS:;時閃子程序MOV R3,#20DISS: MOV R1,#BUF+2M

34、OV A,#04HMOV R2,#6ACALL DP1DJNZ R3,DISSMOV R3,#20DIS2: MOV R1,#BUFMOV A,#01HMOV R2,#8ACALL DP1DJNZ R3,DIS2RETDISPLAYF:;分閃子程序DISF:MOV R3,#20MOV R1,#BUF+5DISM:23MOV A,#20HMOV R2,#6ACALL DP1DJNZ R3,DISFMOV R3,#20ACALL DIS2RETDISPLAYM:;秒閃子程序MOV R3,#20MOV R1,#BUFMOV A,#01HMOV R2,#6ACALL DP1DJNZ R3,DISMMO

35、V R3,#20ACALL DIS2RETSETNAO:;設(shè)置鬧鐘時間TTN:ACALL CONVNAOACALL DISPLAY;鬧設(shè)置小時TSN:JNB K4,TTNTSSN:ACALL DISPLAYSJNB K4,TFNJNB K2,JIASNJNB K3,JIANSNJNB K5,QUEN SJMP TSSNJIASN:INC HH;鬧加時子程序MOV A,HHCJNE A,#24,K2SNMOV HH,#0K2SN:ACALL CONVNAOACALL DISPLAY JNB K2,K2SN SJMP TSSNJIANSN:DEC HH;鬧減時子程序MOV A,HHCJNE A,#

36、255,K3SNMOV HH,#23K3SN:ACALL CONVNAOACALL DISPLAYJNB K3,K3SNSJMP TSSNQUEN:ACALL BZSETB TR0LJMP LOOPTMN:ACALL CONVNAOACALL DISPLAY;鬧設(shè)置秒JNB K4,TMNTMMN:ACALL DISPLAYMJNB K4,TSNJNB K2,JIAMNJNB K3,JIANMNJNB K5,QUENJMP TMMNJIAMN:INC MM;鬧加秒24MOV A,MMCJNE A,#60,K2MNMOV MM,#0K2MN:ACALL CONVNAOACALL DISPLAY J

37、NB K2,K2MN JMP TMMNJIANMN:DEC MM;鬧減秒MOV A,MMCJNE A,#255,K3MNMOV MM,#59K3MN:ACALL CONVNAOACALL DISPLAYJNB K3,K3MNJMP TMMN 麩肅鵬鏇轎騍鐐縛縟糶。TFN:ACALL CONVNAOACALL DISPLAY;鬧設(shè)置分鐘JNB K4,TFNTFFN:ACALL DISPLAYF JNB K4,TMN JNB K2,JIAFN JNB K3,JIANFN JNB K5,QUEN JMP TFFNJIAFN:INC FF;鬧加分鐘MOV A,FFCJNE A,#60,K2FNMOV

38、FF,#0K2FN:ACALL CONVNAO ACALL DISPLAY JNB K2,K2FN JMP TFFNJIANFN:DEC FF;減分鐘MOV A,FFCJNE A,#255,K3FNMOV FF,#59K3FN:ACALL CONVNAO ACALL DISPLAY JNB K3,K3FN JMP TFFNRST:;復(fù)位MOV SHI,#025MOV FEN,#0 MOV MIAO,#0 MOV MS50,#0 RETNAOPRO:;檢查鬧鐘JB ALB,TI3RETTI3: MOV A,SHIMOV B,HH CJNE A,B,BK MOV A,FEN MOV B,FF CJNE A,B,BK MOV A,MIAO MOV B,MM CJNE A,B,BK ACALL TIMEOUT BK: RETCONVNAO:;轉(zhuǎn)換子程序MOV A,HH;轉(zhuǎn)換小時 存到 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+DPTRMOV BUF+3,AMOV A,BMOVC A,A+D

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論