基于單片機的秒表系統(tǒng)設計論文_第1頁
基于單片機的秒表系統(tǒng)設計論文_第2頁
基于單片機的秒表系統(tǒng)設計論文_第3頁
基于單片機的秒表系統(tǒng)設計論文_第4頁
基于單片機的秒表系統(tǒng)設計論文_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

.z---..--總結資料基于單片機的秒表系統(tǒng)設計目錄TOC\o"1-2"\h\z\u0前言11總體方案設計12系統(tǒng)硬件設計23軟件設計43.1軟件設計概述43.2程序框圖43.3子程序模塊設計64系統(tǒng)調(diào)試及結果分析94.1軟件調(diào)試94.2硬件調(diào)試105結論及進一步設想11參考文獻12課程設計體會13附錄1元件清單14附錄2系統(tǒng)電路圖14附錄3源程序15基于單片機的秒表系統(tǒng)設計摘要:本設計的多功能秒表系統(tǒng)采用AT89C51單片機為中心器件,利用其定時器/計數(shù)器定時和記數(shù)的原理,結合顯示電路、電源電路、LED數(shù)碼管以及鍵盤電路來設計計時器。將軟、硬件有機地結合起來,使得系統(tǒng)能夠?qū)崿F(xiàn)兩位LED顯示,顯示時間為00~99秒,每秒自動加1,能正確地進展加1計時。其中軟件系統(tǒng)采用C語言編寫程序,包括顯示程序,計數(shù)程序,中斷程序,延時程序等,硬件系統(tǒng)利用PROTEUS強大的功能來實現(xiàn),簡單切易于觀察,在仿真中就可以觀察到實際的工作狀態(tài)。關鍵字:單片機;計時秒表;LED數(shù)碼管0前言近年來隨著科技的飛速開展,單片機的應用正在不斷的走向深入,同時帶動著傳統(tǒng)控制檢測日新月異更新。在實時檢測和自動控制的單片機應用系統(tǒng)中,單片機往往是作為一個核心部件來使用,僅單片機方面的知識是不夠的,還要根據(jù)具體的硬件構造,以及針對具體的應用對象的軟件結合,加以完善。秒表的出現(xiàn),解決了傳統(tǒng)的由于人為因素造成的誤差和不公平性,本文就是利用AT89C51單片機與數(shù)碼管設計一個簡單的秒表系統(tǒng)。1總體方案設計本系統(tǒng)采用AT89C51單片機為中心器件,利用其定時器/計數(shù)器定時和記數(shù)的原理,結合硬件電路如電源電路,顯示電路,以及一些按鍵電路等來設計計時器,將軟、硬件有機地結合起來。其中軟件系統(tǒng)采用C語言編寫程序,包括顯示程序,中斷程序,延時程序,按鍵消抖程序等,并在Keil中調(diào)試運行,硬件系統(tǒng)利用proteus強大的功能來實現(xiàn),簡單切易于觀察,在仿真中就可以觀察到實際的工作狀態(tài)。外圍電路外圍電路電源電路單片機顯示電路鍵盤電路圖1系統(tǒng)電路原理2系統(tǒng)硬件設計本系統(tǒng)中,硬件電路主要有電源電路,顯示電路,以及一些按鍵電路等〔1〕單片機簡介本系統(tǒng)設計采用AT89C51單片機。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS8位微處理器。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容〔由于在微機原理中學過C-51的具體知識,這里不再詳細說明〕。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效的微控制器。〔2〕電源電路電源電路是系統(tǒng)最根本的局部,任何電路都離不開電源局部,由于三端集成穩(wěn)壓器件所組成的穩(wěn)壓電源線路簡單,性能穩(wěn)定,工作可靠,調(diào)整方便,已逐漸取代分立元件,在生產(chǎn)中被廣泛采用,由于是小系統(tǒng),我們采用7809電源提供+5V穩(wěn)壓電壓。圖2電源電路〔3〕顯示電路顯示電路既可以選用液晶顯示器,也可以選用數(shù)碼管顯示。我們采用的是數(shù)碼管顯示電路。用2個共陽極LED顯示,LED是七段式顯示器,內(nèi)部有7個條形發(fā)光二極管和1個小圓點發(fā)光二極管組成,根據(jù)各管的亮暗組合成字符。在用數(shù)碼管顯示時,我們有靜態(tài)和動態(tài)兩種選擇,靜態(tài)顯示程序簡單,顯示穩(wěn)定,但是占用端口比擬多;動態(tài)顯示所使用的端口比擬少,可以節(jié)省單片機的I/O口。在設計中,我們采用LED動態(tài)顯示,用P0口驅(qū)動顯示。由于P0口的輸出級是開漏電路,用它驅(qū)動時需要外接上拉電阻才能輸出高電平。電路圖如下圖:圖3顯示電路〔4〕鍵盤電路在按鍵電路中,我們可以在I/O口上直接接按鍵,或者通過I/O口設計一個鍵盤,然后通過鍵盤掃描程序判斷是否有鍵按下等。鍵盤掃描電路節(jié)省I/O口,但編程有些復雜,在這里,由于我們所用的按鍵較少,且系統(tǒng)是一個小系統(tǒng),有足夠的I/O口可以使用,為了使程序簡化,我們采用按鍵電路,用局部P3口做開關,P3.6停頓,P3.5開場,P3.4暫停記錄,用外中斷INT0開場,另外用軟件延時法消除抖動。電路圖如下圖:圖4鍵盤電路3軟件設計3.1軟件設計概述在軟件設計中,一般采用模塊化的程序設計方法,它具有明顯的優(yōu)點。把一個多功能的復雜的程序劃分為假設干個簡單的、功能單一的程序模塊,有利于程序的設計和調(diào)試,提高了程序的閱讀性和可靠性,使程序的構造層次一目了然。各程序模塊都要完成一個明確的任務,實現(xiàn)*個具體的功能,如:計數(shù)、延時和顯示等,在具體需要時調(diào)用相應的模塊即可。功能描述:用2位LED數(shù)碼顯示"秒表",顯示時間為00~99秒,每秒自動加1,具有開場、暫停和停頓按鍵,可記錄獨立的時間。3.2程序框圖〔1〕主程序:采用分支構造,通過對按鍵的掃描,判斷要實現(xiàn)什么功能,然后通過調(diào)用子程序來實現(xiàn)所需要的功能。主程序主程序停頓子程序暫停記錄子程序加1子程序顯示子程序延時子程序中斷效勞程序圖5主程序構造框圖〔2〕加1程序進位清零進位清零做加法到100.(20H)清零個位十位分開NY(20H)=A開始返回圖6加1程序流程圖〔3〕定時器1程序用定時器0實現(xiàn)定時1秒,定時器1實現(xiàn)定時10毫秒,定時初值分別是TH0=(65536-50000)/256; TL0=(65536-50000)%256;這里只寫定時1秒的流程圖,如下圖:壓棧保護壓棧保護賦定時初值到1秒.調(diào)用加1程序調(diào)用顯示程序中斷返回NY圖7定時1秒流程圖3.3子程序模塊設計〔1〕停頓子程序按鍵后,使秒表停頓,即關閉定時器0,1,程序如下:STOP:unsignedcharled[]={0*c0,0*f9,0*a4,0*b0,0*99,0*92,0*82,0*f8,0*80,0*90};unsignedchartemp; TMOD=0*01; TH0=(65536-50000)/256; TL0=(65536-50000)%256;EA=1; ET0=1; P3=0*ff; while(1) { P2=0*01; P1=led[sec%10]; delay(10); P2=0*02; P1=led[sec/10]; delay(10); temp=P3;if(temp==0*df) {TR0=0;sec=0;msec=0;}〔2〕暫停記錄子程序按鍵完畢后,將此時顯示內(nèi)存中的數(shù)送存放器中保存。POR:unsignedcharled[]={0*c0,0*f9,0*a4,0*b0,0*99,0*92,0*82,0*f8,0*80,0*90}; unsignedchartemp; TMOD=0*01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; P3=0*ff; while(1) { P2=0*01; P1=led[sec%10]; delay(10); P2=0*02; P1=led[sec/10]; delay(10); temp=P3; if(temp==0*7f) TR0=0;〔3〕加1子程序此程序只為簡單的加1,并判斷是否到100.到則從0開場,否則繼續(xù),另外將顯示內(nèi)存中的數(shù)個位十位分開,以便于動態(tài)顯示。G01:msec++; if(msec==20) { msec=0; sec++; if(sec==100)//定義到99秒后歸零 {sec=0;} }RETGO2:unsignedcharled[]={0*c0,0*f9,0*a4,0*b0,0*99,0*92,0*82,0*f8,0*80,0*90};unsignedchartemp; TMOD=0*01; TH0=(65536-50000)/256; TL0=(65536-50000)%256;RET〔4〕顯示子程序,采用動態(tài)顯示MAIN:unsignedcharled[]={0*c0,0*f9,0*a4,0*b0,0*99,0*92,0*82,0*f8,0*80,0*90};unsignedchartemp;TMOD=0*01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;P3=0*ff;while(1){ P2=0*01;P1=led[sec%10]; delay(10); P2=0*02; P1=led[sec/10]; delay(10);}RET〔5〕延時子程序例如延時10ms程序:DELAY:P2=0*01;P1=led[sec%10];delay(10);P2=0*02;P1=led[sec/10];delay(10);RET〔6〕中斷效勞程序用外部中斷1實現(xiàn)開場,定時器0定時1S,定時器1定時10ms。4系統(tǒng)調(diào)試及結果分析4.1軟件調(diào)試用PROTEUS將編譯生成的秒表.HE*文件下到單片機中,點擊運行按相應的操作鍵即可看到下列圖的效果:圖8仿真結果經(jīng)proteus軟件仿真后,系統(tǒng)運行良好,結果正確。4.2硬件調(diào)試在Keil中調(diào)試運行,硬件系統(tǒng)利用proteus強大的功能來實現(xiàn),簡單切易于觀察,在仿真中就可以觀察到實際的工作狀態(tài)。本系統(tǒng)設計采用AT89C51單片機。而顯示電路既可以選用液晶顯示器,也可以選用數(shù)碼管顯示。我們采用的是數(shù)碼管顯示電路。用2個共陽極LED顯示,LED是七段式顯示器,內(nèi)部有7個條形發(fā)光二極管和1個小圓點發(fā)光二極管組成,根據(jù)各管的亮暗組合成字符。在用數(shù)碼管顯示時,我們有靜態(tài)和動態(tài)兩種選擇,靜態(tài)顯示程序簡單,顯示穩(wěn)定,但是占用端口比擬多;動態(tài)顯示所使用的端口比擬少,可以節(jié)省單片機的I/O口。在設計中,我們采用LED動態(tài)顯示,用P0口驅(qū)動顯示。用局部P3口做開關,P3.6停頓,P3.5開場,P3.4暫停記錄,用外中斷INT0開場,另外用軟件延時法消除抖動。硬件仿真如下圖:圖9硬件仿真5結論及進一步設想根據(jù)實驗要求,本次課設根本完成了設計要求,由于秒表系統(tǒng)并不一定僅僅局限于計時,定時等功能,還可以進展多項的擴展,可以利用AT89C51強大的擴展功能,進一步豐富秒表的功能,例如可設定計時時間,倒計時等等眾多功能。單片機以其強大的功能和良好的兼容性可以更好的為我們效勞,通過查閱各種資料,多了解一些單片機的有關知識,可以為以后的工作和學習生活創(chuàng)造更多的便利條件。參考文獻[1]余發(fā)山主編.單片機原理及應用技術.**:中國礦業(yè)大學,2003.[2]楊凌霄編著.微型計算機原理及應用.**:中國礦業(yè)大學,2004.[3]李群芳主編.單片機原理、接口及應用.:清華大學,2005.[4]陳忠平,曹巧媛等,單片機原理及接口.:清華大學,2007.[5]*同法,陳忠平等,單片機根底與最小系統(tǒng)實踐.:航空航天大學,2007.[6]吳金戌,沈慶陽,郭庭吉.8051單片機實踐與應用.:清華大學,2002.[7]竇振中.單片機外圍器件實用手冊存儲器分冊.:航空航天大學,1998.[8]*靖武,周靈彬.單片機系統(tǒng)的Proteus設計與仿真.:電子工業(yè),2007.[9]林志琦,郎建軍,李會杰等.基于Proteus的單片機可視化軟硬件仿真.:航空航天大學,2006.[10]李剛民,曹巧媛等.單片機原理及實用技術.:高等教育,2005.課程設計體會經(jīng)過一個星期的課程設計,過程曲折可謂一語難盡。在此期間我也失落過,也曾一度熱情高漲。從開場時激情高漲到最后汗水背后的復雜心情,點點滴滴無不令我回味無長。在胡立夫教師的指導下,我順利完成了課程設計。讓我學到了以下幾點:1、將學習的理論知識通過實驗融會貫穿,讓我對它的理解更加深刻。對程序的編譯過程了解透徹。2、本次課程設計以自己設計為主,因此培養(yǎng)了學習的積極性,讓我能夠獨立去分析問題、發(fā)現(xiàn)問題、解決問題,更增強我與教師同學交流溝通和合作完成任務的能力。3、由于這次課程設計不僅設計編程方面的知識,還涉及了其它學科的知識,例如PROTEUS和Keil等的根本知識。程序是用C語言來編寫的,這次課程設計讓我在編程能力方面得到了提高。4、由于水平有限,實驗程序運行有一定的限制,以后會加強改良??傊?,通過這次課程設計,不僅加深了我對單片機理論方面的理解,將理論更好的運用的實踐方面,而且鍛煉了我們各方面的能力,培養(yǎng)了堅強的毅力和做事的耐心和細心,認識合作的重要性,雖然程序可能有一定的浪費資源,且較羅嗦,但這需要在實踐中慢慢提高,還希望教師能夠多多指導,促進我不斷的進步。最后再一次感謝胡教師對我的悉心指導和無私幫助。[2013年7月12日完成]附錄1元件清單元件名稱型號數(shù)量單片機AT89C511發(fā)光LED7SEG-MP*21開關3電阻3附錄2系統(tǒng)電路圖附錄3源程

溫馨提示

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

最新文檔

評論

0/150

提交評論