單片機課程設(shè)計-比賽計分器_第1頁
單片機課程設(shè)計-比賽計分器_第2頁
單片機課程設(shè)計-比賽計分器_第3頁
單片機課程設(shè)計-比賽計分器_第4頁
單片機課程設(shè)計-比賽計分器_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGE湖南工程學(xué)院課程設(shè)計課程名稱單片機原理與應(yīng)用課題名稱比賽計分器設(shè)計專業(yè)電氣工程及其自動化班級電氣0803學(xué)號200801010310姓名劉超鵬指導(dǎo)教師汪超2011年7月4日湖南工程學(xué)院課程設(shè)計任務(wù)書課程名稱單片機原理與應(yīng)用課題比賽計分器設(shè)計專業(yè)班級電氣0803學(xué)生姓名劉超鵬學(xué)號200801010310指導(dǎo)老師汪超審批任務(wù)書下達(dá)日期2011年6月27日任務(wù)完成日期2011年7月4日設(shè)計內(nèi)容與設(shè)計要求設(shè)計內(nèi)容:設(shè)計一個甲,乙兩隊用的比賽計分器,要求實現(xiàn)以下功能:1、給甲,乙兩隊分別設(shè)置1個加分按鈕,按一下能分別實現(xiàn)加一分。2、給甲,乙兩隊分別設(shè)置1個減分按鈕,按一下能分別實現(xiàn)減一分。3、設(shè)置一個清零按鈕,按一下能實現(xiàn)清零4、設(shè)置預(yù)置分按鈕。5、設(shè)置一個加減一分、兩分和三分的切換按鈕。設(shè)計要求:設(shè)計方案要合理、正確;系統(tǒng)硬件設(shè)計及焊接制作;系統(tǒng)軟件設(shè)計及調(diào)試;系統(tǒng)聯(lián)調(diào);寫出設(shè)計報告。主要設(shè)計條件MCS-51單片機實驗操作臺1臺;PC機及單片機調(diào)試軟件;單片機應(yīng)用系統(tǒng)板1套;制作工具1套;系統(tǒng)設(shè)計所需的元器件。說明書格式封面課程設(shè)計任務(wù)書目錄系統(tǒng)總體方案設(shè)計系統(tǒng)硬件設(shè)計軟件設(shè)計(包括流程圖)系統(tǒng)的安裝調(diào)試說明8、總結(jié)9、參考文獻(xiàn)10、附錄(源程序清單及硬件原理圖等);11、課程設(shè)計成績評分表。進(jìn)度安排設(shè)計時間為兩周第一周星期一、上午:布置課題任務(wù),講課及課題介紹下午:借閱有關(guān)資料,總體方案討論星期二、確定總體設(shè)計方案星期三、硬件模塊方案設(shè)計星期四、軟件模塊方案設(shè)計星期五、設(shè)計及調(diào)試第二周星期一、設(shè)計及調(diào)試星期二、設(shè)計及調(diào)試星期三、總調(diào)星期四、寫說明書星期五、上午:寫說明書,整理資料下午:交設(shè)計資料,答辯參考文獻(xiàn)[1]、《微型計算機原理及應(yīng)用》許立梓編機械工業(yè)出版社2002[2]、《微型計算機接口技術(shù)及應(yīng)用》劉樂善編華中理工大學(xué)出版社2000[3]、《計算機硬件技術(shù)基礎(chǔ)試驗教程》鄒逢興編高等教育出版社2000[4]、《16位微型計算機原理接口及其應(yīng)用》周佩玲編中國科學(xué)技術(shù)大學(xué)出版社2000[5]、《微型計算機原理與接口技術(shù)》吳秀清編中國科學(xué)技術(shù)出版社2001[6]、《微型計算機接口技術(shù)》鄧亞平編清華大學(xué)出版社2001[7]、《單片機原理及及應(yīng)用》王迎旭編機械工業(yè)出版社2001[8]、《單片機應(yīng)用程序設(shè)計技術(shù)》周航慈著北京航空航天大學(xué)出版社2002[9]、《單片機實用技術(shù)問答》謝宜仁主編人民郵電出版社2002目錄第1章系統(tǒng)總體方案設(shè)計…………………11.1概述……………………11.2系統(tǒng)框圖……………..2第2章系統(tǒng)硬件設(shè)計………..32.1按鈕設(shè)置……………..42.2分值切換顯示功能…………………52.3數(shù)碼管驅(qū)動的選擇…………………62.4發(fā)光二極管顯示器…………………7第3章軟件設(shè)計………………83.1系統(tǒng)流程圖……………83.2顯示子程序…………..93.3延時子程序…………10第4章系統(tǒng)的安裝調(diào)試說明……………….114.1軟件調(diào)試…………….114.2軟硬聯(lián)調(diào)…………….12第5章總結(jié)……………………13第6章 參考文獻(xiàn)……………….14附錄A源程序清單……………...15附錄B系統(tǒng)原理圖……………,,,19PAGE15系統(tǒng)總體方案設(shè)計概述單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。單片機自20世紀(jì)70年代問世以來,以極其高的性價比受到人們的重視和關(guān)注,所以應(yīng)用很廣,發(fā)展很快。單片機的優(yōu)點是體積小、重量輕、抗干擾能力強,對環(huán)境要求不高,價格低廉,可靠性高,靈活性好,開發(fā)較為容易。例如,80C51系列單片機已有十多年的生命期,如今仍保持著上升的趨勢,就充分證明了這一點。單片機以其一系列優(yōu)點,近幾年得到迅猛發(fā)展和大范圍推廣,廣泛應(yīng)用于工業(yè)控制系統(tǒng),數(shù)據(jù)采集系統(tǒng)、智能化儀器儀表,及通訊設(shè)備、日常消費類產(chǎn)品、玩具等。并且已經(jīng)深入到工業(yè)生產(chǎn)的各個環(huán)節(jié)以及人民生活的各層次中,如車間流水線控制、自動化系統(tǒng)等、智能型家用電器等。而美國ATMEL公司開發(fā)生產(chǎn)了新型的8位單片機——AT89系列單片機。他不但具有一般MCS-51單片機的所有特性,而且還擁有一些獨特的優(yōu)點,此次設(shè)計中所用到的AT89C51就是其中典型的代表。本設(shè)計是基于AT89S51單片機的籃球計分器,利用7段共陰LED作為顯示器件。在此設(shè)計中共接入了1個八位一體7段共陰LED顯示器,每隊顯示器顯示范圍可達(dá)到0~255分。系統(tǒng)功能簡介本設(shè)計內(nèi)容為比賽計分器,主要用于各種體育比賽記錄分?jǐn)?shù)。采用獨立式鍵盤作為輸入,用戶可分別對兩隊比分進(jìn)行加1、加2、加3和減1減2、減3操作,其加減1,2,3分可以通過加減1分、2分和3分的切換按鈕實現(xiàn),并通過指示燈顯示其每次按下加減分鍵所加減的分值。通過加減分鍵和分值切換鍵配合使用可以較方便實現(xiàn)預(yù)置分。比分通過1個八位一體7段共陰LED顯示器顯示,每隊比分顯示三位數(shù)。系統(tǒng)框圖AT89C51單片機AT89C51單片機比分復(fù)位獨立式鍵盤比分顯示系統(tǒng)分值切換顯示系統(tǒng)硬件設(shè)計按鈕設(shè)置圖2-1按鈕功能圖獨立鍵盤通過P1口輸入鍵值,其中1/2/3分切換由發(fā)光二極管指示,見圖1-2。通過加減分鍵和分值切換鍵配合使用可以較方便實現(xiàn)甲乙兩隊的初始分?jǐn)?shù)。按下清零后,顯示的分?jǐn)?shù)清零。分值切換顯示功能圖2-2分值切換顯示圖數(shù)碼管驅(qū)動的選擇圖2-374LS24574LS245是我們常用的芯片,用來驅(qū)動led或者其他的設(shè)備,它是8路同相三態(tài)雙向總線收發(fā)器,可雙向傳輸數(shù)據(jù)。

74LS245還具有雙向三態(tài)功能,既可以輸出,也可以輸入數(shù)據(jù)。

當(dāng)8051單片機的P0口總線負(fù)載達(dá)到或超過P0最大負(fù)載能力時,必須接入74LS245等總線驅(qū)動器。

當(dāng)片選端/CE低電平有效時,DIR=“0”,信號由B向A傳輸;(接收)

DIR=“1”,信號由A向B傳輸;(發(fā)送)當(dāng)/CE為高電平時,A、B均為高阻態(tài)。

由于P2口始終輸出地址的高8位,接口時74LS245的三態(tài)控制端/1G和/2G接地,P2口與驅(qū)動器輸入線對應(yīng)相連。P0口與74LS245輸入端相連,/E端接地,保證數(shù)據(jù)現(xiàn)暢通。8051的/RD和/PSEN相與后接DIR,使得/RD或/PSEN有效時,74LS245輸入(P0.i←Di),其它時間處于輸出(P0.i→Di)。發(fā)光二極管顯示器的結(jié)構(gòu)、工作原理及其接口電路下圖為典型的數(shù)碼管:圖2-47段LED數(shù)碼管如上圖,LED顯示器又稱為數(shù)碼管,LED顯示器由8個發(fā)光二極管組成。中7個長條形的發(fā)光管排列成“日”字形,另一個賀點形的發(fā)光管在顯示器的右下角作為顯示小數(shù)點用,它能顯示各種數(shù)字及部份英文字母。LEDD顯示器有兩種不同的形式:一種是8個發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED顯示器;另一種是8個發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器。表2-5代碼對應(yīng)表顯示字符共陰極段碼共陽極段碼顯示字符共陰極段碼共陽極段碼03FHC087FH80H106HF996FH90H25BHA4A77H88H34FHB0B7CH83H466H99HC39HC656DH92HD5EHA1H67DH82HE79H86H707HF8F71H8EH動態(tài)掃描顯示接口是單片機中應(yīng)用最為廣泛的一種顯示方式之一。其接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM是各自獨立地受I/O線控制。CPU向字段輸出口送出字形碼時,所有顯示器接收到相同的字形碼,但究竟是那個顯示器亮,則取決于COM端,而這一端是由I/O控制的,所以我們就可以自行決定何時顯示哪一位了。而所謂動態(tài)掃描就是指我們采用分時的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在本課題中采用P0口輸出段碼,P3口為位控制輸出口。軟件設(shè)計開始系統(tǒng)流程圖開始初始化初始化S4表首址送DPTR,比分清零,加減分值為1調(diào)用顯示函數(shù)判斷哪鍵按下S6S5S4表首址送DPTR,比分清零,加減分值為1調(diào)用顯示函數(shù)判斷哪鍵按下S6S5S3S3 N去抖動甲乙比分清零切換加減分值,相應(yīng)LED燈亮去抖動甲乙比分清零切換加減分值,相應(yīng)LED燈亮S2NS2去抖動乙加分加減分鍵釋放去抖動乙加分加減分鍵釋放去抖動甲加分S1鍵釋放鍵釋放鍵釋放乙減分去抖動顯示子程序流程圖將8位二進(jìn)制比分轉(zhuǎn)將8位二進(jìn)制比分轉(zhuǎn)換為十進(jìn)制數(shù)位選通位選通取段碼取段碼送段碼送段碼調(diào)用延時程序調(diào)用延時程序關(guān)段碼關(guān)段碼圖3-2顯示子程序流程圖延時子程序延時子程序就是通過執(zhí)行一些沒用但又占用時間的指令的集合。這個子程序可以用于很多延時的地方因為它延時的時間可以通過R7進(jìn)行改變,所以通用性好,可以將幾個延時子程序合為一個,只用在調(diào)用前給R7賦值,即可根據(jù)用戶的需要延時,流程圖見圖4-4。給給R6放初值執(zhí)行三條空指令返回R6-1,判斷R6是否為0R7-1,判斷R7是否為0圖3-3延時子程序流程圖系統(tǒng)的安裝調(diào)試說明軟件調(diào)試上電時對系統(tǒng)中進(jìn)行檢測是單片機程序中的一個良好設(shè)計。在硬件設(shè)計時也應(yīng)該細(xì)細(xì)考慮將各個使用到的芯片、接口設(shè)計成容易使用軟件進(jìn)行測試的模式。很多有經(jīng)驗的單片機設(shè)計者都會在系統(tǒng)上電時(特別是第一次上電時)進(jìn)行全面的檢測,或者更進(jìn)一步,將系統(tǒng)的運行狀態(tài)中分為測試模式和正常運行模式,通過加入測試模式對系統(tǒng)進(jìn)行詳細(xì)的檢測,使得系統(tǒng)的批量檢測更為方便容易。另外要注意的是,一個簡單明了的故障顯示界面也是頗要費得心思的。比如:系統(tǒng)的外部RAM(數(shù)據(jù)存儲器)是單片機系統(tǒng)中常用的器件。外部RAM如果存在問題,程序通常都會成為無法控制。因此,程序在啟動時(至少在第一次上電啟動時)一定要對外部RAM進(jìn)行檢測。另外,在仿真前要做好充分的準(zhǔn)備。單片機硬件仿真器給單片機開發(fā)者帶來了極大的方便,同時也很容易造成人的依賴性。很多時候,沒有仿真器卻能促使工程師寫出更高質(zhì)量的程序。在硬件仿真調(diào)試之前,下面準(zhǔn)備工作將是必要的:(1)程序編完后,對代碼仔細(xì)逐行檢查。檢查代碼的錯誤,建立自己的代碼檢查表,對經(jīng)常易錯的地方進(jìn)行檢查。檢查代碼是否符合編程規(guī)范。(2)對各個子程序進(jìn)行測試。測試的方法:用程序測試程序,編制一個調(diào)用該子程序的代碼,建立要測試子程序的入口條件,再看看它是否按預(yù)期輸出結(jié)果。(3)如果代碼有修改,再次對代碼進(jìn)行檢查。軟硬聯(lián)調(diào)編程后利用KeiluVision3來進(jìn)行編譯,再生成的HEX文件裝入芯片中,采用proteus軟件來仿真,檢驗功能是否能夠正常實現(xiàn)。仿真成功后,焊接硬件電路,通過ISP下載器將hex文件燒制到單片機。通電后,LED-1亮,數(shù)碼管顯示“000--000”.。對應(yīng)的“S1”鍵為甲加分按鈕,當(dāng)LED-1亮?xí)r,每次按下“S1”鍵,甲隊分?jǐn)?shù)加1;當(dāng)LED-2亮?xí)r,每次按下“S1”鍵,甲隊分?jǐn)?shù)加2;當(dāng)LED-3亮?xí)r,每次按下“S1”鍵,甲隊分?jǐn)?shù)加3;可以通過按“S5”鍵來實現(xiàn)LED-1,LED-2,LED-3之間的切換。對應(yīng)的“S2”鍵為甲隊減分鍵,當(dāng)LED-1亮?xí)r,每次按下“S2”鍵,甲隊分?jǐn)?shù)減1;當(dāng)LED-2亮?xí)r,每次按下“S2”鍵,甲隊分?jǐn)?shù)減2;當(dāng)LED-3亮?xí)r,每次按下“S2”鍵,甲隊分?jǐn)?shù)減3;“S3”鍵為乙加分鍵,“S4”鍵為乙隊減分鍵,其實現(xiàn)功能與甲隊一樣。對應(yīng)的“S6”鍵為清零按鈕,按下可以實現(xiàn)復(fù)位。數(shù)碼管顯示甲乙隊當(dāng)前分?jǐn)?shù),復(fù)位后,數(shù)碼管顯示“000--000”??偨Y(jié)做了兩周的單片機課程設(shè)計,我有了很多的體會和感想。

我們的課程設(shè)計是比賽計分器。設(shè)計可以在實驗室里做,也可以在寢室里做,我大部分時間還是在寢室里做的。

比賽計分器設(shè)計,這個內(nèi)容沒有現(xiàn)成的程序和設(shè)計圖,需要我們真正親手去編。這兩周的實習(xí)真的有點難度,程序里面的好多內(nèi)容不懂,自我感覺是單片機我們所學(xué)的內(nèi)容還不足以編出這個程序,但是只好硬著頭皮去看去理解。但在學(xué)習(xí)過程中也充滿了樂趣,當(dāng)看懂了程序的一些語句,畫出了要求的設(shè)計圖,那我喜悅那種成就感油然而生。

這次實習(xí)讓我受益匪淺,無論從知識上還是其他的各個方面。上課的時候的學(xué)習(xí)從來沒有真正的用單片機,只是從理論的角度去理解枯燥乏味。但在實習(xí)中使用了單片機及其系統(tǒng),能夠理論聯(lián)系實際的學(xué)習(xí),開闊了眼界,提高了單片機知識的理解和水平。在這次課程設(shè)計中又讓我體會到了合作與團(tuán)結(jié)的力量,當(dāng)遇到不會或是設(shè)計不出來的地方,我們就會在組里討論或者是同學(xué)之間相互幫助。團(tuán)結(jié)就是力量,無論在現(xiàn)在的學(xué)習(xí)中還是在以后的工作中,團(tuán)結(jié)都是至關(guān)重要的,有了團(tuán)結(jié)會有更多的理念、更多的思維、更多的情感。

單片機是很重要的一門課程,老師和一些工作的朋友都曾說過,如果學(xué)好一門單片機,就憑這個技術(shù)這門手藝找一個好工作也不成問題。盡管我們在課堂學(xué)到的內(nèi)容很有限,但在以后的學(xué)習(xí)中單片機還需要好好的深入研究和學(xué)習(xí),學(xué)好了單片機也就多了一項生存的本錢。最后感謝老師對我們的精心指導(dǎo)和幫助,感謝同學(xué)們對我的幫助。參考文獻(xiàn)[1]、《微型計算機原理及應(yīng)用》許立梓編機械工業(yè)出版社2002[2]、《微型計算機接口技術(shù)及應(yīng)用》劉樂善編華中理工大學(xué)出版社2000[3]、《計算機硬件技術(shù)基礎(chǔ)試驗教程》鄒逢興編高等教育出版社2000[4]、《16位微型計算機原理接口及其應(yīng)用》周佩玲編中國科學(xué)技術(shù)大學(xué)出版社2000[5]、《微型計算機原理與接口技術(shù)》吳秀清編中國科學(xué)技術(shù)出版社2001[6]、《微型計算機接口技術(shù)》鄧亞平編清華大學(xué)出版社2001[7]、《單片機原理及及應(yīng)用》王迎旭編機械工業(yè)出版社2001[8]、《單片機應(yīng)用程序設(shè)計技術(shù)》周航慈著北京航空航天大學(xué)出版社2002[9]、《單片機實用技術(shù)問答》謝宜仁主編人民郵電出版社2002附錄A源程序清單NAEQU24HNBEQU25H;甲乙兩隊分?jǐn)?shù)TEMPEQU26H;存放切換分?jǐn)?shù)1\2\3JIAJIABITP1.0;甲加分控制位JIAJIANBITP1.1;甲減分控制位YIJIABITP1.2;乙加分控制位YIJIANBITP1.3;乙減分控制位SWITCHBITP1.4;分值切換控制位RESETBITP1.5;比分清零控制位ORG0000HSJMPSTARTSTART:MOVDPTR,#TABLE;將表首址送DPTRMOVNA,#0MOVNB,#0;比分自動清零MOVTEMP,#1;開機默認(rèn)加減分值為1MOVP2,#01H;分值顯示燈亮A1:ACALLDISPLAY;調(diào)顯示函數(shù)JNBJIAJIA,S1JNBJIAJIAN,S2JNBYIJIA,S3JNBYIJIAN,S4JNBSWITCH,S5JNBRESET,S6LJMPA1;判斷按下的控制鍵S1:LCALLDELAY;去抖動JBJIAJIA,A1;確認(rèn)按鍵MOVA,NAADDA,TEMPMOVNA,ALCALLB0C0:JBJIAJIA,A1;等鍵釋放LCALLDISPLAYSJMPC0S2:LCALLDELAY;去抖動JBJIAJIAN,A1MOVA,NASUBBA,TEMPMOVNA,ALCALLB0C1:JBJIAJIAN,A1;等鍵釋放LCALLDISPLAYSJMPC1S3:LCALLDELAY;去抖動JBYIJIA,A1MOVA,NBADDA,TEMPMOVNB,ALCALLB1C2:JBYIJIA,A1;等鍵釋放LCALLDISPLAYSJMPC2S4:LCALLDISPLAY;去抖動JBYIJIAN,A1MOVA,NBSUBBA,TEMPMOVNB,ALCALLB0C3:JBYIJIAN,A1;等鍵釋放LCALLDISPLAYSJMPC3S5:INCTEMPMOVA,TEMPCJNEA,#2,D0MOVP2,#2D0:CJNEA,#3,D1MOVP2,#04HD1:CJNEA,#4,D2MOVTEMP,#1MOVP2,#01H;分值切換循環(huán)1-2-3D2:LJMPA1S6:MOVNA,#0MOVNB,#0LJMPA1B0:CJNEA,#999,B2;是否大于999?(可以省略)MOVNA,#0B2:RETB1:CJNEA,#999,B3MOVNB,#0B3:RET;**************************顯示函數(shù)DISPLAY:MOVA,NA;甲隊比分顯示MOVB,#100;將8位二進(jìn)制轉(zhuǎn)換位十進(jìn)制DIVABCLRP3.0MOVCA,@A+DPTR;送段碼MOVP0,A;顯示甲比分比分百位LCALLDELAYSETBP3.0;關(guān)位選MOVA,BMOVB,#10DIVABCLRP3.1;開位選MOVCA,@A+DPTRMOVP0,ALCALLDELAYSETBP3.1MOVA,BCLRP3.2MOVCA,@A+DPTRMOVP0,ALCALLDELAYSETBP3.2CLRP3.3MOVP0,#40H;顯示分隔符LCALLDELAYSETBP3.3;****************************乙隊比分顯示MOVA,NBMOVB,#100DIVAB

溫馨提示

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

評論

0/150

提交評論