基于單片機實現(xiàn)的計時時鐘設(shè)計電氣自動化畢業(yè)論文
《基于單片機實現(xiàn)的計時時鐘設(shè)計電氣自動化畢業(yè)論文》由會員分享,可在線閱讀,更多相關(guān)《基于單片機實現(xiàn)的計時時鐘設(shè)計電氣自動化畢業(yè)論文(24頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 工學(xué)院畢業(yè)設(shè)計 基于單片機實現(xiàn)的計時時鐘設(shè)計 專 業(yè): 電氣自動化技術(shù) 班 級: 自動化0921 學(xué) 號: 學(xué)生姓名: 校外指導(dǎo)教師: 校內(nèi)指導(dǎo)教師: 二零一二年五月 目錄 摘 要 1 1 引言 2 1.1 設(shè)計背景 2 1.2 課題設(shè)計內(nèi)容
2、2 2 計時時鐘以及單片機介紹 3 2.1 計時時鐘結(jié)構(gòu) 3 2.2 單片機簡介 4 2.3 單片機特點 4 2.4 單片機的應(yīng)用 5 3 計時時鐘硬件設(shè)計 6 3.1 時鐘電路的設(shè)計 6 3.2 復(fù)位電路的設(shè)計 6 3.3 數(shù)碼顯示電路的設(shè)計 7 3.4 按鍵電路的設(shè)計 8 3.5 蜂鳴器電路的設(shè)計 8 3.6 AT89C2051單片機 9 4 計時時鐘軟件設(shè)計 11 4.1 程序設(shè)計 11 4.2 匯編語言 12 4.3 程序編制 12 4.3.1 顯示數(shù)碼管子程序 12 4.3.2 計時子程序 13 4.3.3 按鍵子程序 14 5 焊接電路與系統(tǒng)
3、調(diào)試 16 5.1 焊接技術(shù) 16 5.2 控制系統(tǒng)的調(diào)試 16 6 結(jié)論與展望 17 6.1 結(jié)論 17 6.2 展望 17 參考文獻 18 附錄A 計時時鐘電路原理圖和計時時鐘PCB板圖 19 附錄B 項目實物圖和項目元器件清單 20 附錄C 項目主程序 21 工學(xué)院畢業(yè)設(shè)計 摘 要:計時時鐘具有良好的應(yīng)用性,可以實現(xiàn)時間顯示,定時鬧鐘等功能。本設(shè)計是基于AT89C2051單片機實現(xiàn)的計時時鐘,系統(tǒng)
4、包含顯示電路,鍵盤電路和單片機控制電路等組成部分,其中顯示電路由3個數(shù)碼管構(gòu)成,分別顯示:小時,分鐘和秒。同時該電路還具備定時鬧鐘、倒計時計數(shù)器和秒表功能。經(jīng)實驗測試,系統(tǒng)時間顯示誤差在1S,符合設(shè)計要求。 關(guān)鍵字:AT89C2051單片機;計時時鐘;數(shù)碼管;定時鬧鐘 2 1 引言 1.1 設(shè)計背景 二十世紀(jì)跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進入的電腦時代。不過,這種電腦,
5、通常是指個人計算機,簡稱PC機。它由主機、鍵盤、顯示器等組成。還有一類計算機,大多數(shù)人卻不怎么熟悉。這種計算機就是把智能賦予各種機械的單片機(亦稱微控制器)。顧名思義,這種計算機的最小系統(tǒng)只用了一片集成電路,即可進行簡單運算和控制。因為它體積小,通常都藏在被控機械的“肚子”里。它在整個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了?,F(xiàn)在,這種單片機的使用領(lǐng)域已十分廣泛,如智能儀表、實時工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。 隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標(biāo)之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求越來越高
6、,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。 現(xiàn)代生活的人們越來越重視起了時間觀念,可以說是時間和金錢劃上了等號。對于那些對時間把握非常嚴(yán)格和準(zhǔn)確的人或事來說,時間的不準(zhǔn)確會帶來非常大的麻煩,所以以數(shù)碼管為顯示器的時鐘比指針式的時鐘表現(xiàn)出了很大的優(yōu)勢。因此對于設(shè)計計時時鐘是很有必要的。 1.2 課題設(shè)計內(nèi)容 本設(shè)計是基于51單片機實現(xiàn)的倒計時時鐘控制器,利用匯編語言進行程序設(shè)計。通過控制單片機內(nèi)部計數(shù)器的定時器功能來實現(xiàn)時間的顯示,再利用按鈕來調(diào)節(jié)時間的長短。把實際需要的時間設(shè)計成相應(yīng)的定時常數(shù)就可以通過數(shù)
7、碼顯示管顯示目標(biāo)時間。這種控制電路結(jié)構(gòu)簡單,可靠性高,應(yīng)用性強;軟件程序適應(yīng)范圍廣,對于不同的倒計時間只需要改變相應(yīng)的定時常數(shù)即可。對單片機以及日常生活中的推前事件的應(yīng)用有一定的借鑒價值。實現(xiàn)計時時鐘的時鐘功能,以及鬧鐘,計數(shù)器,秒表,倒計時的功能。 2 計時時鐘以及單片機介紹 2.1 計時時鐘結(jié)構(gòu) 時鐘,自從它發(fā)明的那天起,就成為人類的朋友,但隨著時間的推移,科學(xué)技術(shù)的不斷發(fā)展,人們對時間計量的精度要求越來越高,應(yīng)用越來越廣。怎樣讓時鐘更好的為人民服務(wù),怎樣讓我們的老朋友煥發(fā)青春呢?這就要求人們不斷設(shè)計出新型時鐘。 現(xiàn)今,高精度的計時工具大多數(shù)都使用了石英晶體振
8、蕩器,由于電子鐘,石英表,石英鐘都采用了石英技術(shù),因此走時精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)校,數(shù)字式電子鐘用集成電路計時時,譯碼代替機械式傳動,用LED顯示器代替顯示器代替指針顯示進而顯示時間,減小了計時誤差,這種表具有時,分,秒顯示時間的功能,還可以進行時和分的校對,片選的靈活性好。本設(shè)計利用單片機實現(xiàn)數(shù)字時鐘計時功能的主要內(nèi)容,其中AT89C2051是核心元件同時采用數(shù)碼管動態(tài)顯示“時”,“分”,“秒”的現(xiàn)代計時裝置。與傳統(tǒng)機械表相比,它具有走時精確,顯示直觀等特點。它的計時周期為24小時,顯滿刻度為“23時59分59秒”,鬧鐘,計數(shù)器,秒表,倒計時的功能 本設(shè)計主要介紹
9、用單片機內(nèi)部的定時/計數(shù)器來實現(xiàn)計時時鐘的方法,由單片機AT89C2051芯片和LED數(shù)碼管為核心,輔以必要的電路,構(gòu)成了一個單片機計時時鐘。 圖2.1 計時時鐘 2.2 單片機簡介 單片機全稱為單片微型計算機(Single Chip Microcomputer),又稱為微控制器(Microcontroller Unit)或嵌入式控制器(Embedded Controller)。它是將計算機的基本部件微型化并集成到一塊芯片上的微型計算機,通常片內(nèi)都含有CPU、ROM、RAM、并行I/O、串行I/O、定時器/計數(shù)器、中斷控制、系統(tǒng)時鐘及系統(tǒng)總線等。隨著技術(shù)的發(fā)展,單片機片內(nèi)集成的功
10、能越來越強大,并朝著SOC(System on Chip)方向發(fā)展。 單片機是一種集成電路芯片,采用超大規(guī)模技術(shù)把具有數(shù)據(jù)處理能力(如算術(shù)運算,邏輯運算、數(shù)據(jù)傳送、中斷處理)的微處理器(CPU),隨機存取數(shù)據(jù)存儲器(RAM),只讀程序存儲器(ROM),輸入輸出電路(I/O口),可能還包括定時計數(shù)器,串行通信口(SCI),顯示驅(qū)動電路(LCD或LED驅(qū)動電路),脈寬調(diào)制電路(PWM),模擬多路轉(zhuǎn)換器及A/D轉(zhuǎn)換器等電路集成到一塊單塊芯片上,構(gòu)成一個最小,然而完善的計算機系統(tǒng)。這些電路能在軟件的控制下準(zhǔn)確、迅速、高效地完成程序設(shè)計者事先規(guī)定的任務(wù)。 然而單片機又不同于單板機,芯片在沒有開發(fā)前,
11、它只是具備功能極強的超大規(guī)模集成電路,如果賦予它特定的程序,它便是一個最小的、完整的微型計算機控制系統(tǒng),它與單板機或個人電腦(PC機)有著本質(zhì)的區(qū)別,單片機的應(yīng)用屬于芯片級應(yīng)用,需要用戶了解單片機芯片的結(jié)構(gòu)和指令系統(tǒng)以及其它集成電路應(yīng)用技術(shù)和系統(tǒng)設(shè)計所需要的理論和技術(shù),用這樣特定的芯片設(shè)計應(yīng)用程序,從而使該芯片具備特定的功能。 不同的單片機有著不同的硬件特征和軟件特征,即它們的技術(shù)特征均不盡相同,硬件特征取決于單片機芯片的內(nèi)部結(jié)構(gòu),用戶要使用某種單片機,必須了解該型產(chǎn)品是否滿足需要的功能和應(yīng)用系統(tǒng)所要求的特性指標(biāo)。這里的技術(shù)特征包括功能特性、控制特性和電氣特性等等,這些信息需要從生產(chǎn)廠商的技
12、術(shù)手冊中得到。軟件特征是指指令系統(tǒng)特性和開發(fā)支持環(huán)境,指令特性即我們熟悉的單片機的尋址方式,數(shù)據(jù)處理和邏輯處理方式,輸入輸出特性及對電源的要求等等。 2.3 單片機特點 隨著現(xiàn)代科技的發(fā)展,單片機的集成度越來越高,CPU的位數(shù)也越來越高,已能將所有主要部件都集成在一塊芯片上,使其應(yīng)用模式多、范圍廣,并具有以下特點: (1)體積小,功耗低,價格便宜,重量輕,易于產(chǎn)品化。 (2)控制功能強,運行速度快,能針對性地解決從簡單到復(fù)雜的各類控制問題,滿足工業(yè)控制要求,并有很強的位處理和接口邏輯操作等多種功能。 (3)抗干擾能力強,適用溫度范圍寬。由于許多功能部
13、件集成在芯片內(nèi)部,受外界影響小,故可靠性高。 (4)雖然單片機內(nèi)存儲器的容量不可能很大,但存儲器和I/O接口都易于擴展 (5)可以方便的實現(xiàn)多機和分布式控制。 2.4 單片機的應(yīng)用 單片機的應(yīng)用具有面廣量大的特點,目前它廣泛的應(yīng)用于國民經(jīng)濟各個領(lǐng)域,對技術(shù)改造和產(chǎn)品的更新起著重要作用。主要表現(xiàn)在以下幾個方面: (1)單片機在智能化儀器、儀表中的應(yīng)用:由于單片機有計算機的功能,它不僅能完成測量,還既有數(shù)據(jù)處理、溫度控制等功能,易于實現(xiàn)儀器、儀表的數(shù)字化和智能。 (2)單片機在實時控制中的應(yīng)用:單片機可以用于各種不太復(fù)雜的實時控制系統(tǒng)中,如一般性的溫度控制、
14、液面控制、電鍍順序控制等。將測量技術(shù)、自動控制技術(shù)和單片機技術(shù)相結(jié)合,充分發(fā)揮單片機的數(shù)據(jù)處理和實時控制功能,使系統(tǒng)工作于最佳狀態(tài)。 (3)單片機在機電一體化中的應(yīng)用:單片機有利于機電一體化技術(shù)的發(fā)展,已廣泛應(yīng)用于數(shù)控機床、醫(yī)療設(shè)備、汽車設(shè)備等。 (4)單片機在多機系統(tǒng)中的應(yīng)用:單片機在多機系統(tǒng)中的應(yīng)用是將來單片機發(fā)展的主要模式,它可以提高單片機的可靠性,使系統(tǒng)運行速度更快。 (5)單片機在計算機外圍設(shè)備中的應(yīng)用:單片機廣泛應(yīng)用于打印機、繪圖機等多種計算機的外圍設(shè)備,特別是用于智能終端,可大大減輕主機負擔(dān),提高系統(tǒng)的運行速度。 (6)單片機在家用電器中的應(yīng)用:單片具有體積小、重量輕、價
15、格便宜等特點,所以家電產(chǎn)品中配上微電腦后,使其身價百倍,功能更強,使用方便,靈活,深得用戶歡迎。 (7)單片機在通信中的應(yīng)用:單片機廣泛應(yīng)用于移動通信領(lǐng)域,使移動電話的功能更強大,操作更方便。 隨著電子技術(shù)的發(fā)展,單片機也普遍的應(yīng)用于各個學(xué)院的教程中,它具有的體積小、功耗低、功能強、性能價格比高、等顯著優(yōu)點,具有良好的發(fā)展前景。 3 計時時鐘硬件設(shè)計 3.1 時鐘電路的設(shè)計 單片機工作的時間基準(zhǔn)是由時鐘電路提供的。在單片機的XTAL1和XTAL2兩個引腳間,接一只晶振及兩只電容就構(gòu)成了單片機的時鐘電路,如圖3.1所示。 電路中的器件選
16、擇可以通過計算和實驗確定,也可以參考一些典型電路的參數(shù)。電路中,電容器C1和C2對振蕩器頻率有微調(diào)作用,通常的取值范圍3010pF;石英晶體選擇6MHZ或12MHZ都可以。其結(jié)果只是機器周期時間不同,影響計數(shù)器的計數(shù)初值。 圖3.1 時鐘電路的設(shè)計 3.2 復(fù)位電路的設(shè)計 單片機的RET引腳為主機提供一個外部復(fù)位信號輸入端口。復(fù)位信號是高電平有效,高電平有效的持續(xù)時間應(yīng)為2個機器周期以上。 復(fù)位以后,單片機內(nèi)各部件恢復(fù)到初始狀態(tài),單片機從ROM的0000H開始執(zhí)行程序。 單片機的復(fù)位方式有上電自動復(fù)位和手工復(fù)位兩種。如圖3.2所示是51系列單片機常用的上電復(fù)位和手動復(fù)位的組合電路
17、,只要VCC上升時間不超過1ms,它們都能很好地工作。 阻容器件的參考值為,R1=200Ω,R2=1KΩ,C3=22uF。 圖3.2 復(fù)位電路的設(shè)計 3.3 數(shù)碼顯示電路的設(shè)計 單片機應(yīng)用系統(tǒng)中,通常都需要進行人機對話。這包括人對應(yīng)用系統(tǒng)的狀態(tài)干預(yù)與數(shù)據(jù)輸入,以及應(yīng)用系統(tǒng)向人們顯示運行結(jié)果等。顯示器、鍵盤電路就是用來完成人機對話活動的人機通道。 LED顯示器的驅(qū)動是一個非常重要的問題,由系統(tǒng)硬件設(shè)計框圖可知,顯示電路由LED顯示器、段驅(qū)動電路和位驅(qū)動電路組成。如果驅(qū)動電路能力差,即負載能力不夠時,顯示亮度就低,而且驅(qū)動電路長器期在超負荷下運行容易損壞。因此,在實際使用中必須接入L
18、ED驅(qū)動電路。 LED顯示器的顯示控制方式分為靜態(tài)顯示和動態(tài)顯示兩種,因此在選擇LED驅(qū)動器時,一定要先確定顯示方式。 靜態(tài)顯示方式就是在任意時刻,所有顯示器都按照各自接收的字型碼同時顯示對應(yīng)的字符。靜態(tài)顯示方式要求每位LED顯示器的公共端必須接地(對共陰極LED),或接高電平(對共陽極LED),而每位LED顯示器都由一個具有鎖存功能的8位端口去控制。這里所指的8位端口可以直接采用并行I/O接口,也可以采用擴展的串行輸入/并行輸出移位寄存器。 動態(tài)顯示是單片機應(yīng)用系統(tǒng)中最常用的顯示方式之一。它是把所有顯示器的同名字端互相并聯(lián)在一起,并把它們接到字形口上。為了防止各個顯示器同時顯示出相同的
19、字符,每個顯示器的公共端還要受另一組信號控制,即把它們接到字位口上。這樣,對于一組LED數(shù)碼顯示器需要由兩組信號控制:一組是字形口輸出的字形碼,用來控制顯示什么用的字符;另一組是字位口輸出的字位碼,用來控制將字符顯示在第幾位顯示器上。在這兩組信號的控制下,使各位顯示器依次從左至右輪流點亮一遍,過一段時間再輪流點亮一遍,如此不斷重復(fù)。雖然在任一時刻只有一位顯示器被點亮,但由于顯示器具有余輝效應(yīng),而人眼又具有視覺惰性,所以看起來與全部顯示器持續(xù)點亮效果完全一樣。 若選擇靜態(tài)顯示,則LED驅(qū)動器的選擇較為簡單,只要驅(qū)動器的驅(qū)動能力與顯示器電流相匹配即可。而且只須考慮段的驅(qū)動,因為共陽極接+5V,而
20、共陰極接地,所以位的驅(qū)動不需要考慮。 動態(tài)顯示則不同,由于一位數(shù)據(jù)的顯示是由段選和位選信號共同配合完成的,因此,要同時考慮段和位的驅(qū)動能力,而且段的驅(qū)動能力決定位的驅(qū)動能力。 在應(yīng)用系統(tǒng)中,設(shè)計要求不同,使用的LED顯示器的位數(shù)也不同,因此廠家就生產(chǎn)了位數(shù)、尺寸、型號不同的LED顯示器供選擇。在本設(shè)計中,選擇3只兩位一體共陽極數(shù)碼管,驅(qū)動采用 PNP 型三極管驅(qū)動,各端口配有限流電阻,驅(qū)動方式為動態(tài)掃描,占用 P3.0~P3.5 端口,段碼由P1.0~P1.6輸出。冒號部分采用 4 個 Φ3.0的綠色發(fā)光二極管,驅(qū)動方式為獨立端口P1.7驅(qū)動。前兩位顯示“小時”的十位和個位,中間兩
21、位顯示“分鐘”的十位和個位,后兩位顯示“秒鐘”的十位和個位。如圖3.3所示 圖3.3 數(shù)碼顯示電路的設(shè)計 3.4 按鍵電路的設(shè)計 在倒計時時鐘應(yīng)用系統(tǒng)工作時按鈕應(yīng)具備隨時對當(dāng)前時間進行調(diào)整的功能。要實現(xiàn)此功能,可以接入鍵盤輸入電路。 鍵盤結(jié)構(gòu)的選擇: 在單片機組成的測控系統(tǒng)及智能化儀器中,用得最多的是非編碼鍵盤。鍵盤結(jié)構(gòu)可以分為獨立式鍵盤和矩陣式兩類。 在本例中只需要3個按鍵,因此選擇獨立式鍵盤。如圖3.4所示,電路由按鍵和三個電阻組成,按鍵分別命名為S1,S2,S3鍵,S3按鍵可以采用輕觸開關(guān),電阻采用1KΩ的。 圖3.4 按鍵電路的設(shè)計 3.5
22、蜂鳴器電路的設(shè)計 設(shè)計要求定時時間到時要有聲音提醒信號產(chǎn)生,可選擇一只蜂鳴器來實現(xiàn)這一功能。壓電式蜂鳴器工作時約需10mA的驅(qū)動電流,并設(shè)計一個相應(yīng)的驅(qū)動及控制電路。電路設(shè)計如圖3.5所示。 蜂鳴器電路與單片機的接口:VT1的基極接到單片機P2口的P2.3引腳,P2.3引腳作為輸出口使用。當(dāng)P2.3=0時,VT1導(dǎo)通時,使蜂鳴器的兩個引腳間獲得將近5V的直流電壓,蜂鳴器中有電流通過,而產(chǎn)生蜂鳴音。當(dāng)P2.3=1時,VT1截止,蜂鳴器的兩引腳間的直流電壓接近于0V,蜂鳴器不發(fā)聲。 圖3.5 蜂鳴器電路的設(shè)計 3.6 AT89C2051單片機 AT89C2051是一帶有2K字節(jié)閃速可
23、編程可擦除只讀存儲器(EEPROM)的低電壓,高性能8位CMOS微處理器。它采用ATMEL的高密非易失存儲技術(shù)制造并和工業(yè)標(biāo)準(zhǔn)MCS-51指令集和引腳結(jié)構(gòu)兼容。通過在單塊芯片上組合通用的CPLI和閃速存儲器,ATMEL的AT89C2051是一強勁的微型處理器,它對許多嵌入式控制應(yīng)用提供一定高度靈活和成本低的解決辦法。 圖3.6 AT89C2051單片機 AT89C2051提供以下標(biāo)準(zhǔn)功能:2K字節(jié)閃速存儲器,128字節(jié)RAM,15根I/O口,兩個16位定時器,一個五向量兩級中斷結(jié)構(gòu),一個全雙工串行口,一個精密模擬比較器以及兩種可選 的軟件節(jié)電工作方式。空閑方停止CPU工作但允許RA
24、M、定時器/計數(shù)器、串行工作口和中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM內(nèi)容但振蕩器停止工作并禁止有其它部件的工作到下一個硬件復(fù)位。 AT89C2051的引腳圖如圖3.7所示?!? 圖3.7 AT89C2051的引腳圖 (1)VCC:電源電壓?! ? (2)GND:地?! ? (3)P1口:P1口是一個8位雙向I/O口??谝_P1.2~P1.7提供內(nèi)部上拉電阻,P1.0和P1.1要求外部上拉電阻。P1.0和P1.1還分別作為片內(nèi)精密模擬比較器的同相輸入(ANI0)和反相輸入(AIN1)。P1口輸出緩沖器可吸收20mA電流并能直接驅(qū)動LED顯示。當(dāng)P!口引腳
25、寫入“1”時,其可用作輸入端,當(dāng)引腳P1.2~P1.7用作輸入并被外部拉低時,它們將因內(nèi)部的寫入“1”時,其可用作輸入端。當(dāng)引腳P1.2~P1.7用作輸入并被外部拉低時,它們將因內(nèi)部的上拉電阻而流出電流?! ? (4)P3口:P3口的P3.0~P3.5、P3.7是帶有內(nèi)部上拉電阻 的七個雙向I/O口引腳。P3.6用于固定輸入片內(nèi)比較器的輸出信號并且它作為一通用I/O引腳而不可訪問。P3口緩沖器可吸收20mA電流。當(dāng)P3口寫入“1”時,它們被內(nèi)部上拉電阻拉高并可用作輸入端。用作輸入時,被外部拉低的P3口腳將用上拉電阻而流出電流。P3口還用于實現(xiàn)AT89C2051的各種第二功能,如下表3.
26、1所列。P3口還接收一些用于閃速存儲器編程和程序校驗的控制信號。 表3.1 引腳口 功 能 P3.0 RXD串行輸入端口 P3.1 TXD串行輸出端口 P3.2 INT0 外中斷0 P3.3 INT1 外中斷1 P3.4 T0定時器0外部輸入 P3.5 T1定時器1外部輸入 (5)RST:復(fù)位輸入。RST一旦變成高電平所有的I/O引腳就復(fù)位到“1”。當(dāng)振蕩器正在運行時,持續(xù)給出RST引腳兩個機器周期的高電平便可完成復(fù)位。每一個機器周期需12個振蕩器或時鐘周期?! ? (6)XTAL1:作為振蕩器反相器的輸入和內(nèi)部時鐘發(fā)生器的輸入?! ?
27、 (7)XTAL2:作為振蕩器反相放大器的輸出 4 計時時鐘軟件設(shè)計 4.1 程序設(shè)計 程序設(shè)計(Programming)是指設(shè)計、編制、調(diào)試程序的方法和過程。它是目標(biāo)明確的智力活動。在進行微機控制系統(tǒng)設(shè)計時,除了系統(tǒng)硬件設(shè)計外,大量的工作就是如何根據(jù)每個生產(chǎn)對象的實際需要設(shè)計應(yīng)用程序。在單片機控制系統(tǒng)中,大體上可分為數(shù)據(jù)處理、過程控制兩個基本類型。數(shù)據(jù)處理包括:數(shù)據(jù)的采集、數(shù)字濾波、標(biāo)度變換等。過程控制程序主要是使單片機按一定的方法進行計算,然后再輸出。 為了完成上述任務(wù),在進行軟件設(shè)計時,通常把整個過程分成若干個部分,每一部分叫做一個模塊。把一個程序分成具有多個明確任務(wù)的
28、程序模塊,分別編制、調(diào)試后再把它們連接在一起形成一個完整的程序,這樣的程序設(shè)計方法稱為模塊化程序設(shè)計。所謂“模塊”,實質(zhì)上就是能完成一定功能,并相對獨立的程序段,這種程序設(shè)計方法稱為模塊程序設(shè)計法。 進行應(yīng)用軟件設(shè)計時可采用模塊化程序設(shè)計方法,其優(yōu)點是: (1)每個模塊的程序結(jié)構(gòu)簡單,任務(wù)明確,易于編寫、調(diào)試和修改。 (2)程序可讀性好,對程序的修改可局部進行,其他部分可以保持不變,便于功能擴充。 (3)對于使用頻繁的子程序可以建立子程序庫,便于多個模塊調(diào)用。 (4)便于分工合作,多個人同時進行程序的編寫和調(diào)試工作,加快軟件研制進度。 如圖4.1所示,根據(jù)設(shè)計要求,首先要確定軟件設(shè)
29、計方案,即確定該軟件應(yīng)該完成哪些功能;其次是規(guī)劃為了完成這些功能需要分成多少個功能模塊,以及每一個程序模塊的具體任務(wù)是什么。劃分模塊時應(yīng)遵循下述原則: (1)每個模塊應(yīng)具有獨立的功能,能產(chǎn)生一個明確的結(jié)果。 (2)模塊之間的控制參數(shù)應(yīng)盡量簡單,數(shù)據(jù)參數(shù)應(yīng)盡量少。 (3)模塊長度適中。 圖4.1 整體設(shè)計框圖 4.2 匯編語言 本次電路的設(shè)計軟件采用的匯編語言應(yīng)用軟件。 匯編語言是一種功能很強的程序設(shè)計語言,也是利用計算機所有硬件特性并能直接控制硬件的語言。匯編語言,作為一門語言,匯編語言對應(yīng)于高級語言的編譯器,需要一個“匯編器”來把匯編語言原文件匯編成機器可執(zhí)行的代碼。高級的
30、匯編器如MASM,TASM等等為我們寫匯編程序提供了很多類似于高級語言的特征,比如結(jié)構(gòu)化、抽象等。在這樣的環(huán)境中編寫的匯編程序,有很大一部分是面向匯編器的偽指令,已經(jīng)類同于高級語言?,F(xiàn)在的匯編環(huán)境已經(jīng)如此高級,即使全部用匯編語言來編寫windows的應(yīng)用程序也是可行的,但這不是匯編語言的長處。匯編語言的長處在于編寫高效且需要對機器硬件精確控制的程序。 匯編語言的特點有以下幾個特點: (1)面向機器的低級語言,通常是為特定的計算機或系列計算機專門設(shè)計的; (2)保持了機器語言的優(yōu)點,具有直接和簡捷的特點; (3)可有效地訪問、控制計算機的各種硬件
31、設(shè)備,如磁盤、存儲器、CPU、I/O端口等; (4)目標(biāo)代碼簡短,占用內(nèi)存少,執(zhí)行速度快,是高效的程序設(shè)計語言; (5)經(jīng)常與高級語言配合使用,應(yīng)用十分廣泛。 4.3 程序編制 4.3.1 顯示數(shù)碼管子程序 在采用動態(tài)掃描顯示方式時,要使得LED顯示得比較均勻,又有足夠的亮度,需要設(shè)置適當(dāng)?shù)膾呙桀l率。當(dāng)掃描頻率在70HZ左右時,能夠產(chǎn)生足夠的圖形和較好的顯示效果。一般可以采用間隔10ms對LED進行動態(tài)掃描一次,每一位LED的顯示時間為1ms。 MOV P1,#01111111B CJNE R4,#00AH,X1 MOV P1,#1111111
32、1B X1: MOV A,MINUTE ;顯示分鐘 MOV B,#10 DIV AB CLR P2.3 MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼 MOV P0,A ;段碼放入P0口 LCALL DELAY SETB P2.3 MOV A,B CLR P2.2 MOVC A,@A+DPTR
33、 ;查顯示數(shù)據(jù)對應(yīng)段碼 MOV P0,A ;段碼放入P0口 LCALL DELAY SETB P2.2 MOV A,HOUR ;顯示小時 MOV B,#10 DIV AB CLR P2.5 MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼 MOV P0,A
34、 ;段碼放入P0口 LCALL DELAY SETB P2.5 MOV A,B CLR P2.4 MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼 MOV P0,A ;段碼放入P0口 LCALL DELAY SETB P2.4 RET MOV A,ALB_M ;顯示秒鐘 MOV B,#10 DIV AB CLR P
35、2.3 MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼 MOV P0,A ;段碼放入P0口 LCALL DELAY SETB P2.3 MOV A,B CLR P2.2 MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼 MOV P0,A ;段碼放入P0口 LCAL
36、L DELAY SETB P2.2 4.3.2 計時子程序 倒計時時鐘系統(tǒng)的主要任務(wù)是:采用單片機為核心器件24小時后循環(huán),并用LED顯示器將它顯示出來。 INT_T0: MOV TH0,#(65536-50000)/256 MOV TL0,#(65536-50000)MOD 256 INC TCNT ;累計50毫秒 MOV A,TCNT MOV R4,TCNT CJNE A,#20,RETUNE ;計時1秒 IN
37、C SECOND MOV TCNT,#0 MOV A,SECOND ;設(shè)置秒鐘 CJNE A,#60,RETUNE mov p2,#11111111b INC MINUTE MOV SECOND,#0 MOV A,MINUTE ;設(shè)置分鐘 CJNE A,#60,RETUNE INC HOUR MOV MINUTE,#0 MOV A,HOUR
38、 ;設(shè)置小時 CJNE A,#24,RETUNE MOV HOUR,#0 MOV MINUTE,#0 MOV SECOND,#0 MOV TCNT,#0 RETUNE: RETI 4.3.3 按鍵子程序 鍵盤子程序是由KEY子程序組成,此子程序的功能是實現(xiàn)對當(dāng)前時間的調(diào)整和輸入倒計時時間。KEY子程序的功能是對當(dāng)前時間進行調(diào)整。在程序中,將倒計時以及時鐘的小時位、分鐘位、秒針位分別進行調(diào)整。 A1: ;調(diào)用顯示子程序
39、 lcall b1 JNB ALB_SET,S4 LCALL DISPLAY JNB M_SET,S2 JNB H_SET,S3 LJMP A1 S2: LCALL DELAY JB M_SET,A1 K1: INC MINUTE ;分鐘值加1 MOV A,MINUTE CJNE A,#60,J1 ;判斷是否加到60分 MOV MINUTE,#0 LJMP K2 S3: LCA
40、LL DELAY JB H_SET,A1 K2: INC HOUR ;小時值加1 MOV A,HOUR CJNE A,#24,J2 ;判斷是否加到24小時 MOV HOUR,#0 MOV MINUTE,#0 MOV SECOND,#0 LJMP A1 K3: INC SECOND ;秒鐘值加1 MOV A,ALB_H CJNE A,#
41、60,J4 ;判斷是否加到60秒 MOV ALB_H,#0 MOV ALB_M,#0 LJMP A1 在整個軟件設(shè)計中,編程是最難的,運用到了很多課外知識,通過學(xué)習(xí),完成這個軟件的程序設(shè)計。編程不能漏編,錯了馬上改正。一步錯,步步錯,這是編程的特點。所以一定要仔細,細心。 5 焊接電路與系統(tǒng)調(diào)試 5.1 焊接技術(shù) 焊接技術(shù)就是高溫或高壓條件下,使用焊接材料(焊條或焊絲)將兩塊或兩塊以上的母材(待焊接的工件)連接成一個整體的操作方法。 焊接是通過加熱、加壓,或兩者并用,
42、使同性或異性兩工件產(chǎn)生原子間結(jié)合的加工工藝和聯(lián)接方式。焊接應(yīng)用廣泛,既可用于金屬,也可用于非金屬。 焊接是一個局部的迅速加熱和冷卻過程,焊接區(qū)由于受到四周工件本體的拘束而不能自由膨脹和收縮,冷卻后在焊件中便產(chǎn)生焊接應(yīng)力和變形。重要產(chǎn)品焊后都需要消除焊接應(yīng)力,矯正焊接變形 手工焊接是傳統(tǒng)的焊接方法,雖然批量電子產(chǎn)品生產(chǎn)已較少采用手工焊接了,但對電子產(chǎn)品的維修、調(diào)試中不可避免地還會用到手工焊接。焊接質(zhì)量的好壞也直接影響到維修效果。手工焊接是一項實踐性很強的技能,在了解一般方法后,要多練;多實踐,才能有較好的焊接質(zhì)量。 5.2 控制系統(tǒng)的調(diào)試 功能按鍵說明: S1為功能選擇按鍵
43、,S2為功能擴展按鍵,S3為數(shù)值加一按鍵。 功能操作說明: 操作時,連續(xù)短時間(小于1秒)按動S1,即可在以上的6個功能中連續(xù)循環(huán)。中途如果長按(大于2秒)S1,則立即回到時鐘功能的狀態(tài)。 (1)時鐘功能:上電后即顯示10:10:00 ,寓意十全十美。 (2)校時功能:短按一次 S1,即當(dāng)前時間和冒號為閃爍狀態(tài),按動 S2 則小時位加 1,按動 S3則分鐘位加1,秒時不可調(diào)。 (3)鬧鐘功能:短按二次S1,顯示狀態(tài)為22:10:00,冒號為長亮。按動S2剛小時位加1,按動S3則分鐘位加1,秒時不可調(diào)。當(dāng)按動小時位超過23時則會顯示--:--:--,這個表示關(guān)閉鬧鐘功能。鬧鈴聲
44、為蜂鳴器長鳴3秒鐘。 (4)倒計時功能:短按三次S1,顯示狀態(tài)為 0,冒號為長滅。按動S2則從低位依此顯示高位,按動S3則相應(yīng)位加1,當(dāng)S2按到第6次時會在所設(shè)定的時間狀態(tài)下開始倒計時,再次按動S2將再次進入調(diào)整功能,并且停止倒計時。 (5)秒表功能:短按四次 S1,顯示狀態(tài)為 00:00:00,冒號為長亮。按動 S2 則開始秒表計時,再次按動S2則停止計時,當(dāng)停止計時的時候按動S3則秒表清零 (6)計數(shù)器功能:短按五次S1,顯示狀態(tài)為00:00:00,冒號為長滅,按動S2則計數(shù)器加1,按動S3則計數(shù)器清零。 經(jīng)測試,全部能夠完美運行。 6 結(jié)論與展望 6.1 結(jié)論
45、 經(jīng)過了兩個多月的學(xué)習(xí)和工作,我終于完成了《基于單片機實現(xiàn)的計時時鐘設(shè)計》的論文。從開始接到論文題目到系統(tǒng)的實現(xiàn),再到論文文章的完成,每走一步對我來說都是新的嘗試與挑戰(zhàn),這也是我在大學(xué)期間獨立完成的最大的項目。在這段時間里,我學(xué)到了很多知識也有很多感受,從對單片機,匯編語言等相關(guān)知識很不了解的狀態(tài),我開始了獨立的學(xué)習(xí)和試驗,查看相關(guān)的資料和書籍,讓自己頭腦中模糊的概念逐漸清晰,使自己非常稚嫩作品一步步完善起來,每一次改進都是我學(xué)習(xí)的收獲,每一次試驗的成功都會讓我興奮好一段時間。 畢業(yè)設(shè)計,也許是我大學(xué)生涯交上的最后一個作業(yè)了。想籍次機會感謝三年以來給我?guī)椭乃欣蠋煛⑼瑢W(xué),你們的友誼是我人
46、生的財富,是我生命中不可或缺的一部分。本設(shè)計在鐘曉強老師的悉心指導(dǎo)和嚴(yán)格要求下已完成,從課題選擇、方案論證到具體設(shè)計和調(diào)試,無不凝聚著鐘老師的心血和汗水,在三年的學(xué)習(xí)和生活期間,也始終感受著導(dǎo)師的精心指導(dǎo)和無私的關(guān)懷,我受益匪淺。在此向鐘老師表示深深的感謝和崇高的敬意。 通過畢業(yè)設(shè)計不僅讓我懂得了許多東西,也培養(yǎng)了我獨立工作的能力,樹立了對自己工作能力的信心,相信會對今后的學(xué)習(xí)工作生活有非常重要的影響。而且大大提高了動手的能力,使我充分體會到了在創(chuàng)造過程中探索的艱難和成功時的喜悅。雖然這個設(shè)計做的也不太好,但是在設(shè)計過程中所學(xué)到的東西是這次畢業(yè)設(shè)計的最大收獲和財富,使我終身受益。 6.2
47、展望 在這三年大學(xué)生涯中,我掌握了不少專業(yè)知識,也鍛煉了自己。大學(xué)是美好的,在大學(xué)我過的很開心,認識了這么多的朋友和老師,她們好的一言一行都將會在我以后的生活中起到一個很好的榜樣。三年,我學(xué)到了很多東西,不僅有學(xué)習(xí)方面的,更學(xué)到了很多做人的道理,對我來說受益非淺。我認為最重要的是學(xué)會了如何更好地與別人溝通,如何更好地去陳述自己的觀點,如何說服別人認同自己的觀點,相信這些寶貴的經(jīng)驗會成為我今后成功的最重要的基石。無論接下來的路怎么樣,我都會腳踏實地的做好每一件事,并且不會放棄每一個可以學(xué)習(xí)的機會。即使以后的路上有許多挫折,我也不怕,我會很堅強的度過每個難關(guān),我相信我以后的生活會很美好的!
48、 參考文獻 [1]陳海宴. 51單片機原理及應(yīng)用[M].北京:航空航天大學(xué)出版社,2010 [2]劉守義. 單片機技術(shù)基礎(chǔ)[M].西安:電子科技大學(xué)出版社,2007 [3]鐘富昭. 2051單片機典型模塊設(shè)計與應(yīng)用[M].北京:人民郵電出版社,2007 [4]李平等. 單片機入門與開發(fā)[M]. 北京:機械工業(yè)出版社,2008 [5]劉勇. 數(shù)字電路[M]. 北京:電子工業(yè)出版社,2009 附錄A 計時時鐘電路原理圖和計時時鐘PCB板圖 附錄A.1 計時時鐘原理圖 附錄A.2 計時時鐘PCB圖
49、 附錄B 項目實物圖和項目元器件清單 附錄B.1 實物圖 序號 名稱 參數(shù) 位號 1 按鈕(3只) 6x6x5 S1S2S3 2 單片機(含座) AT89C2051 IC1 3 電解電容 10UF C1 4 瓷片電容 104 C6 5 電解電容 220UF C5 6 電解電容 470UF C4 7 瓷片電容(2只) 30P C2C3 8 電源接線座 CON2 J1 9 電阻 10k R1 10 電阻(7只) 4.7K R10R11R12R13R14R15R2 11 電阻(9只) 470 R3
50、R4R5R6R7R8R9R17R18 12 發(fā)光二極管(4只) LED D1D2D3D4 13 晶振 12M Y1 14 三極管(7只) 8550 Q1Q2Q3Q4Q5Q6Q7 15 數(shù)碼管(3只) 共陽兩位0.4英寸 LED1、LED2、LED3 16 穩(wěn)壓塊 L7805 U1 17 有源蜂鳴器 5V B1 18 整流二極管(4只) IN4007x4 D5D6D7D8 19 跳線(4根) TX1TX2TX3TX4 用電阻腳線焊連 20 電路板 約97X70mm 附錄B.2 項目元器件清單 附錄C 項目主程序 A
51、LB_SET BIT P3.2 ;調(diào)節(jié)鬧鐘控制器 M_SET BIT P3.3 ;分鐘控制位 H_SET BIT P3.4 ;小時控制位 SECOND EQU 30H ;秒計數(shù)器 MINUTE EQU 31H ;分鐘計數(shù)器 HOUR EQU 32H ;小時計數(shù)器 TCNT EQU 34H ;50毫秒計數(shù)器 ALB_M EQU 35H ALB_H EQU 36H ORG 0000H SJMP START ORG 000BH LJMP IN
52、T_T0 ORG 0050H START: MOV DPTR,#TABLE MOV ALB_M,#01 MOV ALB_H,#01 MOV HOUR,#0 ;初始化 MOV MINUTE,#0 MOV SECOND,#0 MOV TCNT,#0 MOV TMOD,#01H MOV TH0,#(65536-50000)/256 ;定時50毫秒 取整數(shù)-TH0 MOV TL0,#(65536-50000)MOD 256 ;模運算 取尾數(shù)-TL0 MOV IE,#82H SETB
53、TR0 BEEP_BL: MOV R6,#100 BL1: CALL BL2 CPL p2.1 DJNZ R6,BL1 MOV R5,#100 CALL DELAY2 RET BL2: MOV R7,#180 BL3: NOP DJNZ R7,BL3 RET DELAY2: ;延時R510MS MOV R6,#10 call display1 BL4: MOV R7,#10 BL5: DJNZ R7,BL5 DJNZ R6,BL4 DJNZ R5,DELAY2 END 22
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案