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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于單片機的簡易時鐘設計PAGE1目錄TOC\o"1-3"\h\u117171.概論 196762.整體設計思路 267252.1硬件各部分所能完成的功能 3270382.2系統(tǒng)工作原理 4281442.3時鐘各功能分析及圖解 4245332.4.1電路各功能圖解分析 4194002.4.2電路功能使用說明 7185533.軟件設計思路 8165093.1主程序模塊 8161553.2數(shù)碼管動態(tài)掃描模塊 9154753.3當前時間計時模塊 944183.4鬧鐘輸入輸出模塊 10171543.5當前時間調整模塊 1264393.6復位模塊 1383774.系統(tǒng)的調試和性能分析 14182924.1系統(tǒng)的調試方法 14185944.1.1輸入按鍵的調試 1471404.1.2復位電路的調試 14145674.1.3顯示電路的調試 1430604.1.4整個系統(tǒng)的聯(lián)調 1423654.2心得體會 154100參考文獻 156653附錄 164759附錄A系統(tǒng)原理圖 1620708附錄B程序源代碼 176814電氣信息學院課程設計評分表 28基于單片機的簡易時鐘設計全文共29頁,當前為第1頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第1頁。1.概論單片機系統(tǒng)作為一種典型的嵌入式系統(tǒng),其系統(tǒng)設計包括硬件電路設計和軟件編程設計兩個方面,其調試過程一般分為軟件調試、硬件測試、系統(tǒng)調試3個過程。如果采用單片機系統(tǒng)的虛擬仿真軟件——Proteus,則不用制作具體的電路板也能夠完成以上工作。數(shù)字鐘是采用數(shù)字電路實現(xiàn)對時,分,秒,數(shù)字顯示的計時裝置,由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用,使得數(shù)字鐘的精度,遠遠超過老式鐘表,鐘表的數(shù)字化給人們生產生活帶來了極大的方便,而且大大地擴展了鐘表的報時功能。數(shù)字鐘已成為人們日常生活中的必需品,廣泛應用于家庭、車站、碼頭、劇院、辦公室等場所,給人們的生活、學習、工作帶來極大的方便[4]。不僅如此,在現(xiàn)代化的進程中,也離不開電子鐘的相關功能和原理,比如機械手的控制、家務的自動化、定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關烘箱、通斷動力設備、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎的。而且是控制的核心部分。因此,研究數(shù)字鐘及擴大其應用,有著非?,F(xiàn)實的意義。電子鐘在工業(yè)控制和日常生活中是很重要的,它不僅可以用于計時、提醒又可用于對機器的控制,在自動化的過程中必然有電子鐘的參與,因此電子鐘的應用會越來越廣泛。而且向著精確、低功耗、多功能發(fā)展。基于單片機設計的數(shù)字鐘精確度較高,因為在程序的執(zhí)行過程中,任何指令都不影響定時器的正常計數(shù),即便程序很長也不會影響中斷的時間。從而,使數(shù)字鐘的精度僅僅取決于單片機的產生機器周期電路和定時器硬件電路的精確度。另外,程序較為簡潔,具有可靠性和較好的可讀性。如果我們想將它應用于實時控制之中,只要對上述程序和硬件電路稍加修改,便可以得到實時控制的實用系統(tǒng),從而應用到實際工作與生產中去?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第2頁。數(shù)字電子鐘的設計方法有多種,例如,可用中小規(guī)模集成電路組成電子鐘,也可以利用專用的電子鐘芯片配以顯示電路及其所需要的外圍電路組成電子鐘還可以利用單片機來實現(xiàn)電子鐘等等。這些方法都各有特點,其中,利用單片機實現(xiàn)的電子鐘具有編程靈活,便于功能擴充,精確度高等特點?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第2頁。2.整體設計思路這部分主要介紹工作安排和整體設計的思想。工作過程規(guī)劃如下:熟悉硬件了解各引腳功能分塊設計各部分電路熟悉硬件了解各引腳功能分塊設計各部分電路完成整體電路圖將分塊的電路組合完成整體電路圖將分塊的電路組合認真學習單片機C語言確定編程結構和思路認真學習單片機C語言確定編程結構和思路綜合各程序完成整體程序編輯各個程序模塊綜合各程序完成整體程序編輯各個程序模塊用Proteus畫出電路圖調試程序,進行修改用Proteus畫出電路圖調試程序,進行修改對仿真中出現(xiàn)的問題進行改正畫出仿真圖進行仿真對仿真中出現(xiàn)的問題進行改正畫出仿真圖進行仿真準備器件、搭接電路準備器件、搭接電路仿真成功仿真成功軟硬件結合,完成任務書要求驗證硬件電路軟硬件結合,完成任務書要求驗證硬件電路成功對設計進行總結和分析成功對設計進行總結和分析圖2.1整體設計思路基于單片機的簡易時鐘設計全文共29頁,當前為第3頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第3頁。針對要實現(xiàn)的功能,擬采用AT89C51單片機進行設計,AT89C51單片機是一款低功耗,高性能CMOS8位單片機,片內含4KB在線可編程(ISP)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構[7]。這樣,既能做到經濟合理又能實現(xiàn)預期的功能。在程序方面,采用分塊設計的方法,這樣既減小了編程難度、使程序易于理解,又能便于添加各項功能。程序可分為顯示程序、調時顯示運用這種方法,關鍵在于各模塊的兼容和配合,若各模塊不匹配會出現(xiàn)意想不到的錯誤。本電子鐘設計主要是依照圖2.1中的流程做出來的,時間分配比較均勻。首先,在編程之前必須了解硬件結構尤其是各引腳的用法,以及內部寄存器、存儲單元的用法,否則,編程無從下手,電路也無法設計。這是前期準備工作。第二部分是硬件部分:依據(jù)想要的功能分塊設計設計,比如輸入需要開關電路,輸出需要顯示驅動電路和液晶電路等。第三部分是軟件部分:先學習理解C語言的編程方法再根據(jù)設計的硬件電路進行分塊的編程調試,最終完成程序設計。第四部分是軟件畫圖部分:設計好電路后進行畫圖,包括電路圖和仿真圖的繪制。第五部分是軟件仿真部分:軟硬件設計好后將軟件載入芯片中進行仿真,仿真無法完成時檢查軟件程序和硬件電路并進行修改直到仿真成功。第六部分是硬件實現(xiàn)部分:連接電路并導入程序檢查電路,若與設計的完全一樣一般能實現(xiàn)想要的功能。2.1硬件各部分所能完成的功能(1)單片機發(fā)送的信號通過程序控制最終在數(shù)碼管上顯示出來。(2)單片機通過輸出各種電脈沖信號來驅動控制各部分正常工作。(3)為使時鐘走時與標準時間一致,校時電路是必不可少的,鍵盤用來校正數(shù)碼管上顯示的時間。(4)單片機通過控制鬧鈴電路來完成定時鬧鐘的功能。(5)單片機通過程序對鬧鈴信號燈進行控制,可方便我們對鬧鈴的開關以及是否在鬧鈴進行觀察。(6)由于要設置定時功能,所以配置了對鬧鐘設置的鍵盤?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第4頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第4頁。2.2系統(tǒng)工作原理設計的電路主要由四模塊構成:時間顯示電路、信號顯示電路、鍵盤控制電路、外設鬧鈴電路以及核心控制電路詳細電路功能圖如圖2-2:圖2-2詳細電路功能圖本設計采用匯編語言程序設計,使單片機控制數(shù)碼管顯示時、分、秒,當秒計數(shù)計滿60時就向分進位,分計數(shù)器計滿60后向時計數(shù)器進位,小時計數(shù)器按“23翻0”規(guī)律計數(shù)。時、分、秒的計數(shù)結果經過數(shù)據(jù)處理可直接送顯示器顯示。設計采用的是時、分、秒顯示,單片機對數(shù)據(jù)進行處理同時在數(shù)碼管上顯示。2.3時鐘各功能分析及圖解2.4.1電路各功能圖解分析基于單片機的簡易時鐘設計全文共29頁,當前為第5頁。(1)時鐘運行圖基于單片機的簡易時鐘設計全文共29頁,當前為第5頁。仿真開始運行時,或按下K7鍵時,時鐘從00:00:00開始運行,其中按下K1鍵可進入當前時間調節(jié),K2和K3分別負責加一和減一,K5鍵為確認鍵。時鐘運行圖如圖2-3所示:圖2-3時鐘運行圖(2)鬧鐘開關指示圖當按下K4鍵后,可進入鬧鐘設時控制,設置完后按確認,按下K6,即開鬧鐘,信號顯示區(qū)得開/關鬧鐘信號燈點亮,表示當時間到達鬧鐘的時間時,鬧鈴響;再次按下鬧鈴,為關鬧鈴,此時的信號顯示區(qū)得開/關鬧鐘信號燈熄滅。如下圖2-4:基于單片機的簡易時鐘設計全文共29頁,當前為第6頁。基于單片機的簡易時鐘設計全文共29頁,當前為第6頁。圖2-4鬧鐘開關指示圖(3)鬧鈴運行圖當時間到達鬧鐘設置的時間時,蜂鳴器會按每秒兩次的頻率響,鬧鐘指示燈也會閃爍。如下圖2-5:圖2-5鬧鈴運行圖該數(shù)字鐘是用一片AT89C51單片機通過編程去驅動8個數(shù)碼管實現(xiàn)的。通過7個開關控制,從上到下7個開關K1-K7的功能分別為:K1:設置當前時間時/分/秒K2:加一按鍵K3:減一按鍵K4:設置鬧鐘時間時/分/秒K5:確認/關閉鬧鈴K6:開/關鬧鐘K7:復位基于單片機的簡易時鐘設計全文共29頁,當前為第7頁??刂奇I分別與P1.0~P1.6口連接,通過P2口和P3口去控制數(shù)碼管的顯示如圖所示P2口接數(shù)碼管的a——g端,是控制輸出編碼,P3口接數(shù)碼管的1——8端,是控制動態(tài)掃描輸出.基于單片機的簡易時鐘設計全文共29頁,當前為第7頁。從P3.6輸出一個信號使二極管發(fā)光,二極管在設置的鬧鐘時間到了時候發(fā)光,P3.7接一個蜂鳴器,若有樂曲可以去驅動揚聲器實現(xiàn)。2.4.2電路功能使用說明(1)各個控制鍵的功能:可對時間進行校準調節(jié)(只能加1);按下設置鍵數(shù)字時鐘進入鬧鐘設置狀態(tài),設置鬧鐘的時間;時加1、分加1鍵是在校準時間時或設置鬧鐘時間對小時數(shù)或分鐘數(shù)調節(jié)而設置的;按下秒切換鍵就可以進入秒表模式,同時秒表也開始計時,按下秒表暫停、復位鍵就暫停、歸零,如果要重新對秒計時則可以按秒表開始、復位;清零鍵可以對鬧鐘清零。(2)AT89C51單片機,通過編寫程序對數(shù)碼顯示進行控制。(3)八個7段數(shù)碼管顯示時鐘信號。基于單片機的簡易時鐘設計全文共29頁,當前為第8頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第8頁。3.軟件設計思路根據(jù)設計的要求與內容,我們將該軟件設計成七個模塊,他們包括:主程序、數(shù)碼管動態(tài)掃描模塊、當前時間計時模塊、鬧鐘輸入輸出模塊、當前時間調整模塊、數(shù)制轉換模塊以及復位模塊。3.1主程序模塊主程序模塊是單片機最先編譯運行的模塊,所以在這個模塊里,我們要設置主程序和各個中斷服務程序的入口地址、各種初始化以及開關掃描等。MCS-51系列單片機復位后,(PC)=0000H,而0003H~002BH分別為各中斷的入口地址。所以,編程時應在0000H處寫一條跳轉指令。當CPU接受到中斷請求信號并予以相應后,CPU把當前的PC內容壓入棧中進行保護,然后轉入相應的只能中斷服務程序入口處執(zhí)行。一般應在相應的中斷服務程序入口處寫一條跳轉指令,并以跳轉指令的目標地址作為中斷服務程序的起始地址進行編程。初始化,是對將要用到的MCS-51系列單片機內部部件或擴展芯片進行初始工作狀態(tài)設定。下圖3-1是我們設計該主程序模塊的程序框圖?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第9頁。圖3-1主程序設計框圖基于單片機的簡易時鐘設計全文共29頁,當前為第9頁。3.2數(shù)碼管動態(tài)掃描模塊在數(shù)碼管動態(tài)掃描模塊里,包含了兩個子程序,一個是顯示子程序,另一個是顯示延時1MS子程序。其中顯示延時1MS子程序是用軟件延時的方法進行的,過程較簡單,這里就不畫出它的程序框圖,下圖3-2為顯示子程序的程序框圖。圖3-2顯示子程序3.3當前時間計時模塊本軟件中的當前時間計時模塊實際上是T0定時器的中斷服務程序,我們將T0定時器工作在方式一中,并讓它每50MS產生一次中斷?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第10頁。每產生一次中斷,進入中斷服務程序后,T0定時器重新轉載初始值。MS50(它是對50MS中斷次數(shù)統(tǒng)計的存儲單元地址標號)就會自加一,接著對MS50進行判斷,如果MS50沒有到達20次(即一秒的時間),就返回到主程序。如果到達20次,MS50將清零,并將MIAO(MIAO是對秒進行計數(shù)的存儲單元地址標號)將自加一。接著判斷MIAO是否到達60次,沒到就返回,到了60秒,MIAO將被清零,F(xiàn)EN(FEN是對分進行計數(shù)的存儲單元地址標號)自加一。再判斷FEN,過程與判斷MIAO相識,也是到達60分就進1時并對分清零,時的寄存器地址標號是SHI,因為一天只有24小時,所以,如果SHI計數(shù)到了24時,它將對SHI、FEN、MIAO同時清零?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第10頁。下圖3-3為該中斷服務的程序框圖圖3-3T0中斷服務程序3.4鬧鐘輸入輸出模塊由于鬧鐘輸入輸出模塊要實現(xiàn)的功能較多,所以它是我們該軟件中設計耗時最長的一個模塊,也是最復雜的一個模塊。而我們對其采取再分子模塊策略,我們對該模塊劃分了6個子模塊:設置鬧鐘時間子模塊、鬧鐘開關子模塊、檢查鬧鐘子模塊、鬧鐘指示燈亮子模塊、鬧鐘轉換子模塊、蜂鳴器子模塊。下面將逐個說明各個子模塊的功能。設置鬧鐘時間子模塊:該模塊實現(xiàn)的功能是,當設置鬧鐘時間的鍵盤被按下時,則進入該子模塊,通過對各個指定按鍵的操作來實現(xiàn)鬧鐘時間的設置?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第11頁。鬧鐘開關子模塊:該模塊實現(xiàn)的功能是,對鬧鐘的工作狀態(tài)進行開關,當為開時,鬧鐘時間到后,鬧鐘指示燈會亮以及蜂鳴器會響;當為關時,即便鬧鐘時間到了,鬧鐘指示燈不會亮以及蜂鳴器不會響?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第11頁。檢查鬧鐘子模塊:該模塊實現(xiàn)的功能是,它是在主程序中被循環(huán)調用的,每調用一次,它會把當前時間與鬧鐘時間進行比較,如果當前時間與鬧鐘時間相同且鬧鐘開關為開,則調用鬧鐘指示燈亮子模塊和蜂鳴器子模塊;否則繼續(xù)運行主程序。鬧鐘指示燈亮子模塊:該模塊的功能是,當時間到時,它將使鬧鐘指示燈以每秒兩次的頻率閃爍,閃爍三十秒后熄滅。蜂鳴器子模塊:該模塊的功能是,當時間到時,它將使鬧鐘指示燈以每秒兩次的頻率響,響三十秒后停止響聲。鬧鐘轉換子模塊:由于在寄存器中存儲的是十六進制的數(shù),不能存儲十進制的數(shù),且我們用的LED燈是共陽極的,所以在要輸出顯示鬧鐘的時間前,要進行鬧鐘數(shù)制轉換。故該模塊的功能是實現(xiàn)對鬧鐘時間寄存器中的內容進行數(shù)制轉換。對鬧鐘設計成六個子模塊,使我們更容易得設計出鬧鐘所要實現(xiàn)的功能,這也就是模塊化的好處,將一個大型的問題劃分為若干個小問題,對這若干小問題進行設計,最好通過參數(shù)把這些小模塊連成一個大的模塊,從而解決問題。下圖3-4是對這六個模塊之間的聯(lián)系的描述。圖3-4鬧鐘輸入輸出模塊基于單片機的簡易時鐘設計全文共29頁,當前為第12頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第12頁。3.5當前時間調整模塊當前時間調整模塊是用來按用戶的需要對當前所顯示的時間進行設置,本軟件的設計思路是通過對相關的時間設置按鍵的掃描進行時間設置。具體思路如下圖3-5:圖3-5時間調整模塊基于單片機的簡易時鐘設計全文共29頁,當前為第13頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第13頁。3.6復位模塊復位模塊是對當前時間和鬧鐘時間進行復位,復位后的結果是當前時間變?yōu)?0-00-00,鬧鐘時間變?yōu)?0-00-00。由于該模塊較為簡單,就不展示其設計思路了。就將其結果仿真圖展示如下圖3-6。圖3-6復位結果圖基于單片機的簡易時鐘設計全文共29頁,當前為第14頁?;趩纹瑱C的簡易時鐘設計全文共29頁,當前為第14頁。4.系統(tǒng)的調試和性能分析4.1系統(tǒng)的調試方法整個系統(tǒng)調試的主要思想是:先每個模塊進行調試,然后整個系統(tǒng)一起調試。先軟硬件分開調試,然后一起調試。遵循先部分后整體的原則。系統(tǒng)的在調試過程中要注意以下幾點:(1)硬件電路焊完之后,在上電之前一定要先用萬用表檢測電源和地之間是否短路。(2)上電之后要用示波器觀察信號的在電路中變化的情況,與設計當初的情況相比較,找出差別,并進行分析。(3)軟件調試過程中可以使用斷點、單步執(zhí)行等常用的方法。(4)軟硬件聯(lián)調時,要注意軟件部分要一個功能一個功能的調試。4.1.1輸入按鍵的調試輸入按鍵的調試,只要按鍵按下去時,按鍵有相應的反應就行,通過程序來判斷,單片機I/O是否能夠識別出。4.1.2復位電路的調試當電源剛接通時,接通電源就完成了系統(tǒng)的初始化。4.1.3顯示電路的調試在本設計中,顯示電路只需完成,當輸入數(shù)字時能正確顯示數(shù)字。4.1.4整個系統(tǒng)的聯(lián)調在系統(tǒng)各個部分都調試完畢之后,即可以進行整個系統(tǒng)的調試。由于前面各個部分的調試做的都比較充分,所以在實際調試過程中,能夠較順利的實現(xiàn)整個系統(tǒng)預期的功能?;趩纹瑱C的簡易時鐘設計全文共29頁,基于單片機的簡易時鐘設計全文共29頁,當前為第15頁。4.2心得體會課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程.隨著科學技術發(fā)展的日新日異,單片機已經成為當今計算機應用中空前活躍的領域,在生活中可以說得是無處不在。因此作為二十一世紀的大學來說掌握單片機的開發(fā)技術是十分重要的?;仡櫰鸫舜螁纹瑱C課程設計,我仍感慨頗多,的確,從選題到定稿,從理論到實踐,在這兩個星期的日子里,可以說得是苦多于甜,但是可以學到很多的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,比如說不懂一些元器件的使用方法,對單片機匯編語言掌握得不好……通過這次課程設計之后,一定把以前所學過的知識重新溫故。這次課程設計終于順利完成了,在設計中遇到了很多編程問題,最后在老師的辛勤指導下,終于游逆而解。同時,在老師那里我學得到很多實用的知識,在次我表示感謝!參考文獻1、《單片機原理及應用》李建忠編西安電子科技大學出版社2、《單片微型計算機原理與接口技術》高峰編電子工業(yè)出版社3、《單片機應用新技術教程》鄒逢興編高等教育出版社4、《16位微型計算機原理接口及其應用》朱宇光編電子工業(yè)出版社5、《微型計算機原理與接口技術》吳秀清編中國科學技術出版社6、《微型計算機接口技術》鄧亞平編清華大學出版社基于單片機的簡易時鐘設計全文共29頁,當前為第16頁。7、《單片機原理及及應用》王迎旭編機械工業(yè)出版社基于單片機的簡易時鐘設計全文共29頁,當前為第16頁。附錄附錄A系統(tǒng)原理圖基于單片機的簡易時鐘設計全文共29頁,當前為第17頁。基于單片機的簡易時鐘設計全文共29頁,當前為第17頁。附錄B程序源代碼MS50EQU30H SHIEQU31H FENEQU32H MIAOEQU33H BUFEQU34H HHEQU40H FFEQU41H MMEQU42H DENGBITP3.5 BIAOZBITP3.6 SPKBITP3.7 ALBEQU20H.0 K1BITP1.0K2BITP1.1K3BITP1.2K4BITP1.3K5BITP1.4K6BITP1.5K7BITP1.6MOVSP,#60H; ORG00HAJMPMAIN ORG0BH AJMPTIME0 MAIN:SETBDENGCLRALB ACALLCHUSHIACALLINTOLOOP:ACALLNAOPRO ACALLCONVACALLDISPLAYJBK6,LOOP1ACALLBIAOSJMPLOOPLOOP1:JBK1,LOOP2ACALLSETTIMESJMPLOOPLOOP2:JBK4,LOOP3ACALLSETNAO基于單片機的簡易時鐘設計全文共29頁,當前為第18頁。SJMPLOOP基于單片機的簡易時鐘設計全文共29頁,當前為第18頁。LOOP3:JBK7,LOOPACALLRSTSJMPLOOP; CONV: ;轉換子程序MOVA,SHI ;轉換小時存到3435HMOVB,#10DIVABMOVDPTR,#TABMOVCA,@A+DPTRMOVBUF,AMOVA,BMOVCA,@A+DPTRMOVBUF+1,AMOVA,FEN ;轉換分存到3738HMOVB,#10DIVABMOVDPTR,#TABMOVCA,@A+DPTRMOVBUF+3,AMOVA,BMOVCA,@A+DPTRMOVBUF+4,AMOVA,MIAO ;轉換秒存到4041HMOVB,#10DIVABMOVDPTR,#TABMOVCA,@A+DPTRMOVBUF+6,AMOVA,BMOVCA,@A+DPTRMOVBUF+7,AMOVBUF+2,#0BFH ;第三個位置顯示一杠MOVBUF+5,#0BFH;第五個位置顯示一杠RETTAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;陽碼表;DISPLAY:;顯示子程序MOVR1,#BUFMOVA,#01HMOVR2,#8Dp1:MOVP2,APUSHACC基于單片機的簡易時鐘設計全文共29頁,當前為第19頁。MOVA,@R1基于單片機的簡易時鐘設計全文共29頁,當前為第19頁。MOVP0,AACALLDELAYPOPACCRLAINCR1CJNER1,#BUF+8,DYMOVR1,#BUFDY:DJNZR2,Dp1RET;BIAO:CPLALB ;鬧鐘開關CPLBIAOZBIAO1:ACALLCONVACALLDISPLAYJNBK6,BIAO1RET;SETTIME: ;設置時間CLRTR0TT:ACALLDISPLAY ;設置小時TS:JNBK1,TTTSS:ACALLDISPLAYSJNBK1,TFJNBK2,JIASJNBK3,JIANSJNBK5,QUESJMPTSSJIAS:INCSHI ;加時子程序MOVA,SHICJNEA,#24,K2SMOVSHI,#0K2S:ACALLCONVACALLDISPLAYJNBK2,K2SSJMPTSSJIANS:DECSHI ;減時子程序MOVA,SHICJNEA,#255,K3SMOVSHI,#23K3S:ACALLCONVACALLDISPLAYJNBK3,K3SSJMPTSS基于單片機的簡易時鐘設計全文共29頁,當前為第20頁。QUE:ACALLBZ基于單片機的簡易時鐘設計全文共29頁,當前為第20頁。SETBTR0QQ:ACALLCONVACALLDISPLAYJNBK5,QQLJMPLOOP;TM:ACALLDISPLAY;設置秒JNBK1,TMTMM:ACALLDISPLAYMJNBK1,TSJNBK2,JIAMJNBK3,JIANMJNBK5,QUEJMPTMMJIAM:INCMIAO ;加秒MOVA,MIAOCJNEA,#60,K2MMOVMIAO,#0K2M:ACALLCONVACALLDISPLAYJNBK2,K2MJMPTMMJIANM:DECMIAO ;減秒MOVA,MIAOCJNEA,#255,K3MMOVMIAO,#59K3M:ACALLCONVACALLDISPLAYJNBK3,K3MJMPTMM;TF:ACALLDISPLAY ;設置分鐘JNBK1,TFTFF:ACALLDISPLAYFJNBK1,TMJNBK2,JIAFJNBK3,JIANFJNBK5,QUEJMPTFFJIAF:INCFEN ;加分鐘MOVA,FENCJNEA,#60,K2FMOVFEN,#0基于單片機的簡易時鐘設計全文共29頁,當前為第21頁。K2F:ACALLCONV基于單片機的簡易時鐘設計全文共29頁,當前為第21頁。ACALLDISPLAYJNBK2,K2FJMPTFFJIANF:DECFEN ;減分鐘MOVA,FENCJNEA,#255,K3FMOVFEN,#59K3F:ACALLCONVACALLDISPLAYJNBK3,K3FJMPTFF;DISPLAYS:;時閃子程序MOVR3,#20DISS:MOVR1,#BUF+2MOVA,#04HMOVR2,#6ACALLDP1DJNZR3,DISSMOVR3,#20DIS2:MOVR1,#BUFMOVA,#01HMOVR2,#8ACALLDP1DJNZR3,DIS2RETDISPLAYF: ;分閃子程序MOVR3,#20DISF:MOVR1,#BUF+5MOVA,#20HMOVR2,#6ACALLDP1DJNZR3,DISFMOVR3,#20ACALLDIS2RETDISPLAYM: ;秒閃子程序MOVR3,#20DISM:MOVR1,#BUFMOVA,#01HMOVR2,#6ACALLDP1DJNZR3,DISM基于單片機的簡易時鐘設計全文共29頁,當前為第22頁。MOVR3,#20基于單片機的簡易時鐘設計全文共29頁,當前為第22頁。ACALLDIS2RET;SETNAO: ;設置鬧鐘時間TTN:ACALLCONVNAOACALLDISPLAY ;鬧設置小時TSN:JNBK4,TTNTSSN:ACALLDISPLAYSJNBK4,TFNJNBK2,JIASNJNBK3,JIANSNJNBK5,QUENSJMPTSSNJIASN:INCHH ;鬧加時子程序MOVA,HHCJNEA,#24,K2SNMOVHH,#0K2SN:ACALLCONVNAOACALLDISPLAYJNBK2,K2SNSJMPTSSNJIANSN:DECHH ;鬧減時子程序MOVA,HHCJNEA,#255,K3SNMOVHH,#23K3SN:ACALLCONVNAOACALLDISPLAYJNBK3,K3SNSJMPTSSNQUEN:ACALLBZSETBTR0LJMPLOOP;TMN:ACALLCONVNAOACALLDISPLAY ;鬧設置秒JNBK4,TMNTMMN:ACALLDISPLAYMJNBK4,TSNJNBK2,JIAMNJNBK3,JIANMNJNBK5,QUENJMPTMMNJIAMN:INCMM ;鬧加秒基于單片機的簡易時鐘設計全文共29頁,當前為第23頁。MOVA,MM基于單片機的簡易時鐘設計全文共29頁,當前為第23頁。CJNEA,#60,K2MNMOVMM,#0K2MN:ACALLCONVNAOACALLDISPLAYJNBK2,K2MNJMPTMMNJIANMN:DECMM ;鬧減秒MOVA,MMCJNEA,#255,K3MNMOVMM,#59K3MN:ACALLCONVNAOACALLDISPLAYJNBK3,K3MNJMPTMMN;TFN:ACALLCONVNAOACALLDISPLAY ;鬧設置分鐘JNBK4,TFNTFFN:ACALLDISPLAYFJNBK4,TMNJNBK2,JIAFNJNBK3,JIANFNJNBK5,QUENJMPTFFNJIAFN:INCFF ;鬧加分鐘MOVA,FFCJNEA,#60,K2FNMOVFF,#0K2FN:ACALLCONVNAOACALLDISPLAYJNBK2,K2FNJMPTFFNJIANFN:DECFF ;減分鐘MOVA,FFCJNEA,#255,K3FNMOVFF,#59K3FN:ACALLCONVNAOACALLDISPLAYJNBK3,K3FNJMPTFFN;RST:;復位MOVSHI,#0基于單片機的簡易時鐘設計全文共29頁,當前為第24頁。MOVFEN,#0基于單片機的簡易時鐘設計全文共29頁,當前為第24頁。MOVMIAO,#0MOVMS50,#0RET;NAOPRO: ;檢查鬧鐘JBALB,TI3RETTI3:MOVA,SHIMOVB,HHCJNEA,B,BKMOVA,FENMOVB,FFCJNEA,B,BKMOVA,MIAOMOVB,MMCJNEA,B,BKACALLTIMEOUTBK:RET;CONVNAO: ;轉換子程序MOVA,HH ;轉換小時存到3435HMOVB,#10DIVABMOVDPTR,#TABMOVCA,@A+DPTRMOVBUF,AMOVA,BMOVCA,@A+DPTRMOVBUF+1,AMOVA,FF ;轉換分存到3738HMOVB,#10DIVABMOVDPTR,#TABMOVCA,@A+DPTRMOVBUF+3,AMOVA,BMOVCA,@A+DPTRMOVBUF+4,AMOVA,MM ;轉換秒存到4041HMOVB,#10DIVABMOVDPTR,#TABMOVCA,@A+DPTR基于單片機的簡易時鐘設計全文共29頁,當前為第25頁。MOVBUF+6,A基于單片機的簡易時鐘設計全文共29頁,當前為第25頁。MOVA,BMOVCA,@A+DPTRMOVBUF+7,AMOVBUF+2,#10111111B;第三個位置顯示一杠MOVBUF+5,#10111111B;第五個位置顯示一杠RET;TIMEOUT: ;鬧鐘指示燈亮MOVR0,#30X4:MOVR3,#2X3:MOVR4,#10 X1:CPLDENGACALLCONVJBK5,X9SJMPX6X9:ACALLDISPLAYDJNZR4,X1JBK5,X8SJMPX6X8:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論