




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄引言11 系統簡介22 硬件設計22.1 總體方案的設計22.2 單片機的選擇32.3 顯示電路的選擇與設計52.4 復位電路的選擇與設計62.5 系統總電路的設計83 系統軟件設計9總結11參考文獻13附錄A 程序13引言秒表計時器是電器制造,工業自動化控制、國防、實驗室及科研單位理想的計時儀器,它廣泛應用于各種繼電器、電磁開關,控制器、延時器、定時器等的時間測試。2004年8月28日15點15分,中國選手孟關良/楊文軍在雅典奧運會男子500米劃艇決賽中,以1分40秒278的成績獲得中國在雅典奧運會的第28金。這是中國皮劃艇項目的第一枚奧運金牌,也是中國水上項目在歷屆奧運會上所獲得的第一
2、枚金牌。孟關良/楊文軍的成績比獲得銀牌的古巴選手只快了 0.072秒,以至于兩人在奪冠之后還不敢相信。在現在的體育競技比賽中,隨著運動員的水平不斷提高,差距也在不斷縮小。有些運動對時間精度的要求也越來越高,有時比賽冠亞軍之間的差距只有幾毫秒,因此就需要高精度的秒表來記錄成績。1 系統簡介本設計的設計思路是使用單片機,設計秒表,能顯示分分秒秒;有計時、暫停、調時間等功能。利用AT80C51單片機的定時器/計數器定時和記數的原理,使其能精確計時。利用中斷系統使其能實現開始暫停的功能。P0口輸出段碼數據,P2.0-P2.4口作列掃描輸出,可以實現開始、暫停、清零和修改時間的功能。顯示電路由八位共陰極
3、數碼管組成。初始狀態下計時器顯示0.00.000,當按下開始鍵時,外部中斷INT1向CPU發出中斷請求,CPU轉去執行外部中斷1服務程序,即開啟定時器T0。此秒表精確到毫秒,滿1000毫秒向秒位進1,滿60秒向分鐘位進1。依次類推,直到9.59.99秒重新復位。在計時過程中,只要按下模式鍵,則數碼管顯示暫停,若按下加1鍵,則加1毫秒再按下加1鍵就再加一,以次類推。若再按下模式鍵,再按下加1鍵,則加1秒再按則再加1秒,以次類推。若再按下模式鍵,再按下加1鍵,則分鐘位加1分再按則再加一分,以次類推。再按模式鍵,在按加1鍵則又毫秒位加一。依次循環。直至滿9.59.999秒。因此可以實現修改已暫停的時
4、間功能。在按下復位鍵時,此數碼管歸零并重新開始計時,若只按模式鍵即可實現暫停功能,即顯示當此計時的成績。連按三下模式鍵則繼續開始計時,根據以上設計思路從而實現數字電子秒表的計時。本文主要內容包括三部分:第一部分介紹硬件部分設計思路及方案;第二部分介紹了軟件部分的設計思路和設計;最后一部分則是整個系統的安裝與調試過程。2 硬件設計2.1 總體方案的設計數字電子秒表具有顯示直觀、讀取方便、精度高等優點,在計時中廣泛使用。本設計用單片機組成數字電子秒表,力求結構簡單、精度高為目標。設計中包括硬件電路的設計和系統程序的設計。其硬件電路主要有主控制器,計時與暫停、啟動和修改時間的功能等。主控制器采用單片
5、機AT80C51,顯示電路采用共陰極LED數碼管顯示計時時間。本設計利用AT80C51單片機的定時器/計數器定時和記數的原理,使其能精確計時。利用中斷系統使其能實現開始暫停的功能。模式鍵可以實現開始、暫停的功能,復位鍵可實現清零功能和復位鍵和加一鍵可實現修改時間功能。電路原理圖設計最基本的要求是正確性,其次是布局合理,最后在正確性和布局合理的前提下力求美觀。根據要求知道秒表設計主要實現的功能是計時和顯示。本設計秒表的最小單位為毫秒,能非常準確記錄一個跑步人的所用時間。當一處中斷后向CPU發出加一請求,每發出一次中斷請求就對毫秒計數單元進行加一,達到1000次就對秒位進行加一,依次類推,直到秒重
6、新復位。 設計中包括硬件電路的設計和系統程序的設計。其硬件電路主要有主控制器,顯示電路和回零、暫停、開始、修改時間等功能。主控制器采用單片機AT80C51,顯示電路采用八位共陰極LED數碼管顯示計時時間,三個按鍵均采用觸點式按鍵。2.2 單片機的選擇本課題在選取單片機時,充分借鑒了許多成形產品使用單片機的經驗,并根據自己的實際情況,選擇了Intel公司的AT80C51。單片機的外部結構MCS-51系列單片機是8位單片機產品,89C51是其中的典型代表,基本模塊包括以下幾個部分:(1)CPU:89C51的CPU是8位的,另外89C51內部有1個位處理器(2)R0M:4KB的片內程序存儲器,存放開
7、發調試完成的應用程序(3)RAM:256B的片內數據存儲器,容量小,但作用大(4)I/O口:P0-P3,共4個口32條雙向且可位尋址的I/O口線(5)中斷系統:共5個中斷源,3個內部中斷,2個外部中斷(6)定時器/計數器:2個16位的可編程定時器/計數器(7)通用串行口:全雙工通用異步接收器/發送器(8)振蕩器:89C51的外接晶振與內部時鐘振蕩器為CPU提供時鐘信號(9)總線控制:89C51對外提供若干控制總線,便于系統擴展 89C51的引腳圖如下:89C51單片機引腳圖晶體振蕩電路89C51芯片內部有一個高增益反相放大器,用于構成振蕩器。引線 XTAL1和XTAL2分別為反向放大器的輸入和
8、輸出,兩端跨接石英晶體及兩個電容就可構成穩定的自激振蕩器。這里,我們選用51單片機12MHZ的內部振蕩方式,電容器C1,C2起穩定振蕩頻率,并對振蕩頻率有微調作用,C1和C2可在20-100PF之間取值,這里取33P。89C51具有以下標準功能:8k字節Flash,256字節RAM,32 位I/O口線, 2個數據指針,兩個16位定時器/計數器,一個全雙工串行口,片內晶振及時鐘電路。另外,8051可降至0Hz 靜態邏輯操作,支持2種軟件可選擇節電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直
9、到下一個中斷或硬件復位為止。CPU是單片機的核心部件。它由運算器和控制器等部件組成。(1) 運算器運算器的功能是進行算術運算和邏輯運算。可以對半字節(4位)、單字節等數據進行操作。例如能完成加、減、乘、除、加1、減1、BCD碼十進制調整、比較等算術運算和與、或、異或、求補、循環等邏輯操作,操作結果的狀態信息送至狀態寄存器。8051運算器還包含有一個布爾處理器,用來處理位操作。(2) 程序計數器PC程序計數器PC用來存放即將要執行的指令地址,共16位,可對64K程序存儲器直接尋址。執行指令時,PC內容的低8位經P0口輸出,高8位經P2口輸出。(3) 令寄存器指令寄存器中存放指令代碼。CPU執行指
10、令時,由程序存儲器中讀取的指令代碼送入指令寄存器,經譯碼后由定時與控制電路發出相應的控制信號,完成指令功能。2.3 顯示電路的選擇與設計對于數字顯示電路,通常采用液晶顯示或數碼管顯示。本設計的顯示電路采用8段數碼管作為顯示介質。由于數碼管是有P0口來驅動,它內部沒有上拉電阻,作為輸出口時驅動能力比較弱,不能點亮數碼顯示管,因此P0口必須接上拉電阻來提高驅動能力。另外一位共陰數碼管的驅動電流一般為20mA左右,如果電流太大容易造成數碼管損壞,所以也需要根據電源的電壓值來確定上拉電阻的大小。如果電阻過小,勢必會形成灌電流過大,造成單片機IO的損壞,如果電阻過大,那么對拉電流沒有太大的影響。電源供電
11、電壓為5V,當上拉電阻選用220電阻時灌電流為22mA。不會損壞單片機的I/O口,同時也可以為數碼顯示管起到限制電流的保護作用。 P3口引腳特殊功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0請求輸入端)P3.3INT1(外部中斷1請求輸入端)P3.4 T0(定時器/計數器0計數脈沖輸入端)P3.5 T1(定時器/計數器1計數脈沖輸入端)P3.6WR(片外數據存儲器寫選通信號輸出端)P3.7 RD(片內數據存儲器讀選通信號輸出端)P3口引腳第二功能表2.4 復位電路的選擇與設計當8051單片機的復位引腳RST(全稱RESET)出現2個機器周期以上的高電平
12、時,單片機就完成了復位操作。如果RST持續為高電平,單片機就處于循環復位狀態,而無法執行程序。因此要求單片機復位后能脫離復位狀態。而本系統選用的是12MHz的晶振,因此一個機器周期為1s,那么復位脈沖寬度最小應為2s。在實際應用系統中,考慮到電源的穩定時間,參數漂移,晶振穩定時間以及復位的可靠性等因素,必須有足夠的余量。根據應用的要求,復位操作通常有兩種基本形式:上電復位、手動復位。上電復位要求接通電源后,自動實現復位操作。80C51單片機的上電復位POR(Power On Reset)實質上就是上電延時復位,也就是在上電延時期間把單片機鎖定在復位狀態上。在單片機每次初始加電時,首先投入工作的
13、功能部件是復位電路。復位電路把單片機鎖定在復位狀態上并且維持一個延時(記作TRST),以便給予電源電壓從上升到穩定的一個等待時間;在電源電壓穩定之后,再插入一個延時,給予時鐘振蕩器從起振到穩定的一個等待時間;在單片機開始進入運行狀態之前,還要至少推遲2個機器周期的延時。上述一系列的延時,都是利用在單片機RST引腳上外接一個RC支路的充電時間而形成的。典型復位電路如圖1.8(a)所示,其中的阻容值是原始手冊中提供的。上電復位延時電路標準80C51不僅復位源比較單一,而且還沒有設計內部上電復位的延時功能,因此必須借助于外接阻容支路來增加延時環節,如圖1.8(a)所示。其實,外接電阻R還是可以省略的
14、,理由是一些CMOS單片機芯片內部存在一個現成的下拉電阻Rrst。例如,80C51系列的Rrst阻值約為50200 k;P89V51Rx2系列的Rrst阻值約為40225 k,如圖1.9所示。因此,在圖1.8(a)基礎上,上電復位延時電路還可以精簡為圖1.8(b)所示的簡化電路(其中電容C的容量也相應減小了)。 復位引腳RST內部電路在每次單片機斷電之后,須使延時電容C上的電荷立刻放掉,以便為隨后可能在很短的時間內再次加電作好準備。否則,在斷電后C還沒有充分放電的情況下,如果很快又加電,那么RC支路就失去了它應有的延遲功能。因此,在圖1.8(a)的基礎上添加一個放電二極管D,上電復位延時電路就
15、變成了如圖1.8(c)所示的改進電路。也就是說,只有RC支路的充電過程對電路是有用的,放電過程不僅無用,而且會帶來潛在的危害。于是附加一個放電二極管D來大力縮短放電持續時間,以便消除隱患。二極管D只有在單片機斷電的瞬間(即VCC趨近于0 V,可以看作VCC對地短路)正向導通,平時一直處于反偏截止狀態。手動復位要求在電源接通的條件下,在單片機運行期間,如果發生死機,用按鈕開關操作使單片機復位。單片機要完成復位,必須向復位端輸出并持續兩個機器周期以上的高電平,從而實現復位操作。本設計采用上電且開關復位電路,如圖1.10所示上電后,由于電容充電,使RST持續一段高電平時間。當單片機已在運行之中時,按
16、下復位鍵也能使RST持續一段時間的高電平,從而實現上電且開關復位的操作。通常選擇C=1030F,R=1K,本設計采用的電容值為22F的電容和電阻為1K的電阻。單片機復位電路2.5 系統總電路的設計系統總電路由以上設計的顯示電路,時鐘電路,按鍵電路和復位電路組成,只要將單片機與以上各部分電路合理的連接就組成了系統總電路。系統總電路圖附錄B所示。8051單片機為主電路的核心部分,各個電路均和單片機相連接,由單片機統籌和協調各個電路的運行工作。8051單片機提供了XTAL1和XTAL2兩個專用引腳接晶振電路,因此只要將晶振電路接到兩個專用引腳即可為單片機提供時鐘脈沖,但在焊接晶振電路時要盡量使晶振電
17、路靠近單片機,這樣可以為單片機提供穩定的始終脈沖。 復位電路同晶振電路,單片機設有一個專用的硬件復位接口,并設置為高電平有效。按鍵電路與單片機的端口連接可以由用戶自己設定,本設計中軟件復位鍵和查看鍵分別接單片機的P1.1和P2.5,均設為低電平有效。而另外的開始鍵和暫停鍵兩鍵使用了外部中斷,所以需要連接到單片機的特殊接口P3.3和P3.2,這兩個I/O口的第二功能分別為單片機的外部中斷1端口和外部中斷0端口。同樣設置為位低電平有效。顯示電路由五位數碼管組成,采用動態顯示方式,因此有8位段控制端和5位位控制端,八位段控制接P0口,P0.0P0.7分別控制數碼顯示管的a、b、c、d、e、f、g、d
18、p顯示,8051的P0口沒有集成上拉電阻,高電平的驅動能力很弱,所以需要接上拉電阻來提高P0的高電平驅動能力。五位位控制則由低位到高位分別接到P2.0P2.4口,NPN三極管9013做為位控制端的開關,當P2.0P2.4端口任意一個端口為高電平時,與其相對應的三極管就導通,對應的數碼管導通顯示。通過以上設計已經將各部分電路與單片機有機的結合到一起,硬件部分的設計以大功告成,剩下的部分就是對單片機的編程,使單片機按程序運行,實現數字電子秒表的全部功能。3 系統軟件設計本設計采用了匯編語言編寫,匯編語言由于采用了助記符號來編寫程序,比用機器語言的二進制代碼編程要方便些,在一定程度上簡化了編程過程。
19、匯編語言的特點是用符號代替了機器指令代碼,而且助記符與指令代碼一一對應,基本保留了機器語言的靈活性。使用匯編語言能面向機器并較好地發揮機器的特性,得到質量較高的程序。匯編語言的特點:(1).面向機器的低級語言,通常是為特定的計算機或系列計算機專門設計的。(2).保持了機器語言的優點,具有直接和簡捷的特點。(3).可有效地訪問、控制計算機的各種硬件設備,如磁盤、存儲器、CPU、I/O端口等。(4).目標代碼簡短,占用內存少,執行速度快,是高效的程序設計語言。(5).經常與高級語言配合使用,應用十分廣泛。在程序設計過程中,為了有效地完成任務,把所要完成的任務精心的分割成若干個相互獨立但相互又仍可有
20、聯系的任務模塊,這些任務模塊使得任務變得相對單純,對外的數據交換相對簡單,容易編寫,容易檢測,容易閱讀和維護。這種程序設計思想稱為模塊化程序設計思想。模塊化結構程序的設計,可以使系統軟件便于調試與優化,也使其他人更好地理解和閱讀系統的程序設計。程序的主要模塊有:主程序、顯示程序、定時溢出中斷服務程序、外部中斷服務程序。Proteus ISIS是英國Labcenter公司開發的電路分析與實物仿真軟件,它可以仿真、分析(SPICE)各種模擬器件和集成電路。該軟件的主要特點總結后有以下四點:實現了單片機仿真和SPICE電路仿真相結合的功能。支持目前主流單片機系統的仿真。提供了軟件調試功能,并可以與W
21、AVE聯合仿真調試。具有強大的原理圖繪制功能。總之,該軟件是一款集單片機和SPICE分析于一身的仿真軟件,功能極其強大。在電子領域中也起到了很大的作用,它的出現仿真不需要先焊接電路,可以先仿真調試通過后在焊電路,節省了不少在硬件調試上所花的時間。Proteus ISIS的工作界面是一種標準的Windows界面。它包括標題欄、主菜單、狀態欄、標準工具欄、繪圖工具欄、對象選擇按鈕、預覽對象方位控制按鈕、仿真進程控制按鈕、預覽窗口、對象選擇器窗口、圖形編輯窗口等十幾個工具,方便了使用者的使用。首先打開已經畫好的proteus DSN文件,雙擊圖中的AT89S52芯片,就彈出一個窗口,在Program
22、 File項中通過路徑選擇在WAVE中生成的HEX文件,雙擊選中后確定,這樣仿真圖中的AT89S52芯片就已經讀取了本設計中的HEX文件。單擊“三角形按鈕”進行仿真。通過對仿真結果的觀察來對程序進行修改,最終使程序到達設計要求。程序仿真圖總結 本設計的數字電子秒表是由8051單片機、共陰數碼顯示管、控制按鍵、三極管等器件構成的,設有六位計時顯示,開始、暫停、復位按鍵以及一個系統整機復位按鈕。計時精度能到達10ms,設計精簡,使用簡單易懂。系統設計合理,線路簡單、功能先進,性能穩定,程序精簡。并給出了詳細的電路設計方法。本系統是以單片機為核心,僅單片機方面知識是不夠的,還應根據具體硬件結構,以及
23、針對具體應用對象特點的軟件結合,以作完善。所以采用匯編語言來進行軟件設計,利用匯編語言面向機器并能較好的發揮機器的特性,得到較高的程序,同時匯編語言目標代碼簡短,占用內存少,執行速度快,能提高秒表的精度。通過本次設計,復習鞏固我們以前所學習的數字、模擬電子技術、單片機原理及應用等課程知識,加深對各門課程及相互關系的理解,并成功使用了Wave、Protel 99se和Proteus三款電子軟件,使理論知識系統化、實用化,系統地掌握微機應用系統的一般設計方法,培養較強的編程能力、開發能力。同時,在設計的過程中,我也發現了本系統的許多不足和可以改進的地方。但因時間緊迫等原因沒能改進。本設計的數字電子
24、秒表缺少對多次計時時間進行記錄的功能。應給在單片機的內部存儲區多設置一些存儲空間,用來存儲多次計時時間。并在程序中編入對多次計時時間的調用顯示。雖然存在不足,但本設計的數字電子秒表仍具有它的實用性。參考文獻 1王東峰等.單片機C語言應用100例M.電子工業出版社,2009. 2陳海宴.51單片機原理及應用M.北京航空航天大學出版社,2010. 3占躍華.C語言程序設計M.北京郵電大學出版社,2010. 4李平等.單片機入門與開發M.機械工業出版社,2008. 附錄A 程序#include<reg51.h>#define uint
25、unsigned int#define uchar unsigned charUchar code segcode=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf;/0,1,2,3,4,5,6,7,8,9,-uchar code dispbit=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;/數碼管位選碼uchar buffer=0,0,0,0,0,0,0,0;uint min,sec,ms,kk;sbit key1=P10;sbit key2=P13;uint status;/函數聲明void d
26、elayMS(uint t) ; void keyprocess(unsigned char key);void display();void timer0();main() /主函數 bit keyrelease; uchar buf; uchar keyinput; keyrelease=1; buf=0xff; TMOD=0x01; /T0工作在方式1,16位計數器 TH0=(65536-1000)/256; / 定時器0設置延時1ms中斷初始值 TL0=(65536-1000)%256; TR0=1; IE=0x82; /開定時器0中斷 status=0; while(1) /鍵掃描程
27、序 keyinput=P1&0xf0; if(keyinput!=0xf0) delayMS(1); if(keyinput!=0xf0) if(keyrelease=1) keyrelease=0; buf = keyinput; /buf用來暫時存放鍵值 else keyrelease=1; keyprocess(buf); /調用按鍵處理函數 buf = 0xff; else keyrelease=1; keyprocess(buf); buf=0xff; display(); /延時函數 void delayMS(uint t) / 晶振頻率12M uint i; while(t-)for(i=0;i<125;i+);void keyprocess(unsigned char key) if(key1=0) delayMS(1);while(key
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 門窗制作合同錦集
- 2025至2030中國低脂牛乳行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國人工影響天氣裝備行業市場現狀分析及競爭格局與投資發展報告
- 2025至2030中國一次性浴帽行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030三輪壓路機行業產業運行態勢及投資規劃深度研究報告
- 2025-2030年防水建材行業市場深度分析及前景趨勢與投資研究報告
- 2025-2030年造紙制漿設備市場前景分析及投資策略與風險管理研究報告
- 2025-2030年虛擬現實制作服務行業市場發展分析與發展前景及投資戰略研究報告
- 漁業養殖水面承包合同
- 2025-2030年液灌汽車行業市場深度調研及發展趨勢與投資研究報告
- 新疆開放大學2025年春《國家安全教育》形考作業1-4終考作業答案
- 管網工程有限空間內清淤作業檢測修復安全專項施工方案
- 成本預算績效分析實施案例
- 河道養護工作總結
- 2025年中質協注冊質量經理認證考試題庫大全(含答案)
- 電纜敷設施工方案及安全措施完整
- 2025屆高三語文二輪復習:典型題各個擊破之表達效果類語用題型(含答案解析)
- 2025年四級聽力試題及原文答案
- 數字媒體制作技術規范及操作指南
- 不要慌太陽下山有月光二部合唱線譜
- 南京科遠KD200變頻器使用手冊
評論
0/150
提交評論