單片機課程設計-基于單片機的籃球計分器設計_第1頁
單片機課程設計-基于單片機的籃球計分器設計_第2頁
單片機課程設計-基于單片機的籃球計分器設計_第3頁
單片機課程設計-基于單片機的籃球計分器設計_第4頁
單片機課程設計-基于單片機的籃球計分器設計_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 單片機系統(tǒng)課程設計單片機系統(tǒng)課 程 設 計成績評定表設計課題 : 基于單片機的籃球計分器設計 學院名稱 : 電氣工程學院 專業(yè)班級 : 學生 : 學 號 : 指導教師 : 設計地點 : 設計時間 : 指導教師意見:成績: 簽名: 年 月 日 單片機系統(tǒng)課 程 設 計課程設計名稱: 基于單片機的籃球計分器設計 專 業(yè) 班 級 : 學 生 姓 名 : 學 號 : 指 導 教 師 : 課程設計地點: 課程設計時間: 單片機系統(tǒng) 課程設計任務書學生 專業(yè)班級學號題 目課題性質工程設計課題來源選題指導教師 主要內容參數(shù) 利用89C51單片機設計籃球計分器系統(tǒng),實現(xiàn)以下功能:1用4位LED顯示器顯示兩隊

2、分數(shù); 2能夠隨時手動對A、B兩隊分別計分; 3能夠手動實現(xiàn)A、B兩隊的分數(shù)位置隨場地交換而對應調換任務要求進度第1-2天:熟悉課程設計任務及要求,查閱技術資料,確定設計方案。第3-4天:按照確定的方案設計單元電路。要求畫出單元電路圖,元件及元件參數(shù)選擇要有依據(jù),各單元電路的設計要有詳細論述。第5-6天:軟件設計,編寫程序。第7-8天:實驗室調試。第9-10天:撰寫課程設計報告。要求內容完整、圖表清晰、文理流暢、格式標準、方案合理、設計正確,篇幅合理。主要參考資料1 張迎新單片微型計算機原理、應用及接口技術第2版M北京:國防工業(yè)出版社,20042偉福LAB6000系列單片機仿真實驗系統(tǒng)使用說明

3、書3 閻石數(shù)字電路技術根底第五版北京:高等教育出版社,2006審查意見系教研室主任簽字: 年 月 日 目錄1、概述41.1、研究背景41.2、根本功能及設計思路42、總體方案設計52.1、方案選取52.2、總體設計53、硬件電路設計63.1、電源電路63.2、晶振電路73.3、鍵盤電路73.4、復位電路83.5、顯示電路84、系統(tǒng)軟件設計94.1、主程序設計104.2、加分程序設計104.3、交換程序設計124.4、LED顯示程序設計13 4.5、共陰極數(shù)碼管字形表145、總結15參考文獻15附錄1:系統(tǒng)原理圖17附錄2:源程序18附錄3:系統(tǒng)調試251、概述1.1、研究背景在這個電子信息技術

4、迅速普及的今天,人們對電子產(chǎn)品的需求越來越多。二十一世紀的今天,科學技術迅猛開展,時代前進的腳步越邁越寬,應用自動化設備,現(xiàn)代化通訊,計算機處理,數(shù)字化信息,現(xiàn)代化顯示設備等一些高新技術使人類邁向智能化開展。在智能化產(chǎn)品中,單片機的應用已經(jīng)越來越廣泛,單片機以它體積小、質量輕、耗電省、可靠性高、價格低等優(yōu)點,開始不斷開展,并廣泛應用于儀器儀表、家用電器、醫(yī)療設備、航天航空領域、工業(yè)專用設備的管理及過程控制等領域,在很多的大中型的電氣設備以及小型的電子產(chǎn)品中也用到了單片機進行控制。單片機把我們帶入了智能化的電子領域,許多繁瑣的系統(tǒng)假設由單片機進行設計,便能收到電路更簡單、功能更齊全的良好效果。假

5、設把經(jīng)典的電子系統(tǒng)當作一個僵死的電子系統(tǒng),那么智能化的現(xiàn)代電子系統(tǒng)那么是一個具有“生命的電子系統(tǒng)。本設計就是基于單片機設計籃球計分系統(tǒng),通過串口通信動態(tài)傳輸數(shù)據(jù),使計分系統(tǒng)有了更多更完善的功能。單片機系統(tǒng)的硬件結構給予了籃球計分器系統(tǒng)“身軀,而單片機的應用程序賦予了其新的“生命,使其在傳統(tǒng)的籃球計分器面前具有電路簡單、本錢低、運行可靠等特色。1.2、根本功能及設計思路1、利用89C51單片機設計籃球計分器系統(tǒng),實現(xiàn)以下功能1用4位LED顯示器顯示兩隊分數(shù); 2能夠隨時手動對A、B兩隊分別計分;3能夠手動實現(xiàn)A、B兩隊的分數(shù)位置隨場地交換而對應調換。2、設計思路:以AT89C51單片機為核心元件

6、,利用獨立式鍵盤控制,使4位共陰極LED數(shù)碼管以靜態(tài)顯示方式實時記錄A、B兩隊的分數(shù)。獨立式鍵盤由K1、K2、K3、K4、K5、K6、K7、K8構成。其功能如下:1K1、K2:加1分;2K3、K4:加2分;3K5、K6:加3分;4K7:半場換分;5K8:顯示復位。A、B兩隊分別占用兩位LED顯示器,顯示范圍為099,能夠根本滿足一般比賽需要。2、總體方案設計2.1、方案選取 單片機在各種電子產(chǎn)品中的應用已經(jīng)越來越廣泛,很多的電子產(chǎn)品利用單片機所取得的便利得到了人們的好評,針對基于單片機的籃球計分器的設計要求,實現(xiàn)其功能的方案有多種,現(xiàn)列舉如下: 方案一按鍵控制每次各隊的加分值為1分或2分,如假

7、設進3分球,那么需兩鍵相加。并由半場換分按鍵和復位功能。分數(shù)通過4位LED顯示器動態(tài)顯示; 方案二系統(tǒng)采用三個按鍵控制每次各隊的加分值為1分、2分或3分。同樣也有半場換分按鍵和復位功能。并通過4位LED顯示器靜態(tài)顯示分數(shù)。這二個方案都是基于單片機控制的,通過按鍵加分及數(shù)碼管顯示,不同的設計局部在于按鍵的數(shù)量和顯示方式的選取上。方案一的按鍵數(shù)量較少,加上交換按鍵和復位按鍵共需要6個,但也能完成根本功能。不過在顯示方面,動態(tài)方式編程較為復雜。方案二的按鍵雖然較多,但功能齊全,使用方便。并且電路不是太過復雜,編程較為簡單。 最終方案:經(jīng)過以上比擬,方案一按鍵使用不方便,且軟件設計復雜。因此選用方案二

8、,即以8位獨立式鍵盤分別實現(xiàn)加1分、加2分、加3分、半場換分和顯示復位的功能,并用4位共陰極LED顯示器以靜態(tài)顯示方式顯示分數(shù)。2.2、總體設計 籃球計分器的設計是基于滿足設計要求的前提并且根據(jù)理論上的可實現(xiàn)性和硬件上的經(jīng)濟實用性,而進行設計的重要環(huán)節(jié)。本節(jié)從人們對系統(tǒng)功能需求出發(fā),在綜合考慮各種因素的情況下,設計出籃球計分器的總體構架。1、加分功能設計:通過顯示緩沖區(qū)為中間加分媒介。每當按鍵按下時,首先通過外部中斷源實現(xiàn)中斷,進入中斷后判斷鍵值再進入相應加分子程序,對相應顯示緩沖區(qū)加分。2、分數(shù)調換功能:同樣是利用外部中斷源實現(xiàn)中斷,中斷效勞程序應能實現(xiàn)中場分數(shù)位置調換的功能。3、分數(shù)顯示功

9、能:用同步移位存放器74HC164實現(xiàn)4位LED數(shù)碼管靜態(tài)顯示。通過查表指令在字形表中找到與顯示緩沖區(qū)對應的字形碼,然后串行移位輸出即可?;?9C51單片機的籃球計分器總體設計框圖如圖2所示。 圖2 籃球計分器總體框圖在框圖所示的系統(tǒng)構架中,8位獨立式鍵盤包括6位加分按鍵,1位分數(shù)調換按鍵和1位復位按鍵。其中加分按鍵通過7421實現(xiàn)中斷掃描,分數(shù)調換按鍵那么直接通過外部中斷1入口P3.3實現(xiàn)中斷效勞。3、 硬件電路設計3.1、源電路 單片機正常工作電壓為5V,因此設計的電源電路主要是提供單片機工作電壓。圖3.1是為單片機提供電壓的電源電路,包括變壓、整流、穩(wěn)壓、濾波等環(huán)節(jié)。在這個電路中采用了

10、三端集成穩(wěn)壓器LM7805,可以輸出5V的直流電壓以供應單片機。圖3.1 電源電路3.2、晶振電路電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準頻率的。通過基準頻率來控制電路中的頻率的準確性。同時,它還可以產(chǎn)生振蕩電流,向單片機發(fā)出時鐘信號。圖3.2是單片機的晶振電路。片內電路與片外器件就構成一個時鐘產(chǎn)生電路,CPU的所有操作均在時鐘脈沖同步下進行。片內振蕩器的振蕩頻率非常接近晶振頻率,一般多在1.2MHz24MHz之間選取。C1、C2是反應電容,其值在20pF100pF之間選取,典型值為30pF。本電路選用的電容為

11、30pF,晶振頻率為12MHz。圖3.2 晶振電路3.3、鍵盤電路鍵盤電路在籃球計分器中的主要作用是用于實現(xiàn)加分和交換分數(shù)位置。鍵盤可分為獨立式鍵盤和行列式鍵盤。本設計中由于按鍵數(shù)少于8個,所以采用獨立式按鍵電路。另外采用中斷掃描方式掃描鍵盤的狀態(tài),當然也可以直接用編程掃描方式,兩者工作思路根本一樣。具體電路如圖3.3所示。AT89C51單片機的直流輸入電流為15mA,當直流電源電壓為+5V時,可選擇5.1K的上拉電阻保證單片機的正常工作。圖3.3 鍵盤電路3.4、復位電路復位電路的主要功能是使單片機進行初始化,在初始化的過程中需要在復位引腳上加大于2個機器周期的高電平。復位后的單片機地址初始

12、化為0000H,然后繼續(xù)從0000H單元開始執(zhí)行程序。在復位電路中提供復位信號,等到系統(tǒng)電源穩(wěn)定后,再撤銷復位信號。但是為了在復位按鍵穩(wěn)定的前提下,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復位信號,以防在按鍵過程中引起的抖動而影響復位。圖3.4所示的 RC 復位電路可以實現(xiàn)上述根本功能。圖3.4 復位電路3.5、顯示電路顯示電路是用于顯示分數(shù)。采用LED數(shù)碼管進行顯示是因為LED數(shù)碼管具有以下幾個優(yōu)點:(1)能在低電壓、小電流條件下驅動發(fā)光,能與CMOS、ITL電路兼容。(2)發(fā)光響應時間極短(<0.1s),高頻特性好,單色性好,亮度高。(3)體積小,重量輕,抗沖擊性能好。 數(shù)碼管有共陰極和共陽

13、極兩種類型,其公共端主要進行位控制,筆畫端那么是進行字符控制,數(shù)碼管有靜態(tài)顯示和動態(tài)顯示兩種方法。本設計采用的是4位共陰極LED數(shù)碼管的串行驅動電路來到達顯示的目的。驅動器采用74HC164,由單片機89C51的P3.0和P3.1來控制LED數(shù)碼管的顯示。顯示電路圖如3.5所示。因為共陰極數(shù)碼管可以不用外接電阻,所以原理圖中的電阻可去掉。圖3.5 顯示電路4、 系統(tǒng)軟件設計 系統(tǒng)軟件設計主要由加分中斷效勞程序,交換中斷效勞程序,LED顯示程序等幾局部構成。本章節(jié)系統(tǒng)的介紹了籃球計分器的主程序和各主要功能子程序的設計流程,具體的程序代碼見附錄2。4.1、主程序設計主程序構成無限循環(huán),主要完成單片

14、機初始化,等待加分和交換中斷的功能。主程序的流程圖如圖4.1所示。圖4.1 主程序流程圖主程序流程說明:電路主要分為以下幾個局部,分別是電源局部、按鍵局部、顯示局部,各局部具有不同的子程序。主程序的作用主要是先讓單片機初始化,包括棧底指針的重新賦值、開中斷、設置外部中斷為脈沖觸發(fā)等;然后使顯示緩沖區(qū)清零,使讓LED顯示為零;再利用無條件轉移指令SJMP $,等待加分中斷和交換中斷。待中斷效勞程序執(zhí)行完后,再次返回主程序等待下一次中斷。4.2、加分程序設計硬件電路中設計了6個加分按鍵,采用中斷和查詢結合的方法擴充外部中斷源,實現(xiàn)相應加分的功能。加分程序的流程圖如圖4.2所示。圖4.2 加分程序流

15、程圖加分程序流程說明:按下加分按鍵后,產(chǎn)生外部中斷0,CPU從主程序跳轉到加分中斷效勞程序繼續(xù)執(zhí)行。當在執(zhí)行相應加分中斷效勞程序時,不允許其它按鍵按下有相應操作,所以必須在進入中斷后通過CLR EA指令關中斷,又因為為了防止保護現(xiàn)場時,一些存放器的內容出現(xiàn)紊亂,此指令必須放在PUSH指令之前。CPU通過查詢方式判斷鍵值后進入相應的加分子程序。因為在操作按鍵時,無論是按下還是松開,觸點在閉合和斷開時均會產(chǎn)生抖動,此時邏輯電平是不穩(wěn)的,如果得不到正確處理,可能會引起單片機對按鍵命令的錯誤執(zhí)行,所以必須執(zhí)行一段延時子程序,用來軟件去抖動。比方延時10ms:MOV R0,#0AHDL2:MOV R1,

16、#7DHDL1:NOPNOPDJNZ R1,DL1DJNZ R0,DL2延時子程序執(zhí)行完后,再次判斷鍵值,倘假設仍然能夠檢測到相應鍵值信號,那么繼續(xù)向下執(zhí)行,否那么返回主程序。繼續(xù)向下執(zhí)行時,首先讓相應顯示緩沖區(qū)加相應的分數(shù),然后通過CJNE指令與10進行比擬。假設小于10,那么串行輸出顯示,否那么向相應高位進1,并減10。進1后的高位仍需與10進行比擬,假設小于10,那么將上述減數(shù)重新賦予相應低位,然后串行輸出,否那么各位清零。輸出刷新后,CPU返回主程序。4.3、交換程序設計 由于籃球比賽中場結束之后,要交換場地,那么分數(shù)的顯示位置也要隨之調換。硬件電路中設置K7鍵完成此項功能。交換程序流

17、程圖如圖4.3所示。 圖4.3 交換程序流程圖交換程序流程說明:按下交換按鍵后,產(chǎn)生外部中斷1,CPU從主程序跳轉到交換中斷效勞程序中繼續(xù)執(zhí)行。通過中間存放器A和交換指令XCH實現(xiàn)分數(shù)位置的交換。交換完成后,CPU返回主程序。4.4、LED顯示程序設計硬件設計中利用4位LED靜態(tài)顯示電路顯示分數(shù)。通過顯示緩沖區(qū)利用MOVC A,A+DPTR查表指令找到指定字形碼,并由串行口串行輸出顯示。LED顯示程序流程圖如圖4.3所示。圖4.3 LED顯示程序流程圖LED顯示程序流程說明:首先將高位顯示緩沖區(qū)的值,也就是字形表的檢索值給累加器A,并將字形表首地址給DPTR,然后利用查表指令找到指定的字形碼,

18、最后由單片機的串行口串行輸出。緊接著將下一位緩沖區(qū)的值給累加器A,同樣由查表指令找到相應字形碼,并串行輸出。依次循環(huán)執(zhí)行上述操作,直至4位全部輸出后返回主程序。4.5、共陰極數(shù)碼管字形表 硬件電路所用數(shù)碼管為共陰極,所以串行口輸出高電平有效。并且4位數(shù)碼管的dp段都沒有使用,因此始終為0。另外應特別注意的是字形碼的上下位順序應與硬件中數(shù)碼管引腳的連接對應。共陰極數(shù)碼管字形表如表4.1所示。表4.1 共陰極數(shù)碼管字形表字形a b c d e f g dp字形碼01234567891 1 1 1 1 1 0 00 1 1 0 0 0 0 01 1 0 1 1 0 1 01 1 1 1 0 0 1

19、00 1 1 0 0 1 1 01 0 1 1 0 1 1 01 0 1 1 1 1 1 01 1 1 0 0 0 0 01 1 1 1 1 1 1 01 1 1 1 0 1 1 00FCH60H0DAH0F2H66H0B6H0BEH0E0H0FEH0F6H5、總結 本次設計表達了籃球計分器的根本原理及使用方法,給出了一種籃球計分器的設計方案。此次設計的籃球計分器,電路簡單,而且易懂,使操作使用者使用非常方便,本錢較低,靈敏可靠,計錄準確,連接簡單,具有非常高的使用價值。設計內容包括比分顯示、比分調換等局部,可以使參加比賽的成員、裁判和觀眾一目了然的看到參賽隊的成績,以最快的速度評出結果.該籃

20、球計分器還能廣泛應用于各類知識競賽。本設計由AT89C51編程控制LED七段數(shù)碼管作球賽計時計分系統(tǒng)具有賽程定性能穩(wěn)定、操作方便且易攜帶等特點??蓮V泛適合各類學校和小團體作為賽程計分。通過這次籃球計分器的設計,可以更清楚的了解單片機程序設計的根本指令功能、編程步驟和技巧,對AT89C51單片機的原理和結構進一步熟悉和掌握,并對一些繪圖和仿真工具積累了更多的使用經(jīng)驗。參考文獻: 1 張迎新單片微型計算機原理、應用及接口技術第二版北京:國防工業(yè)出版社,20042 鄭鋒 王巧芝 程麗平 張清鵬51單片機典型應用開發(fā)范例大全北京:中國鐵道出版社,20213 彭為 黃科 雷道仲單片機典型系統(tǒng)設計實例精講

21、北京:電子工業(yè)出版社,20064 閻石數(shù)字電子技術根底北京:高等教育出版社,20065 夏路易 石宗義電路原理圖與電路板設計教程Protel 99SE北京:北京希望電子出版社,2004附錄1:系統(tǒng)原理圖附錄2:源程序K1 BIT P0.0K2 BIT P0.1K3 BIT P0.2K4 BIT P0.3K5 BIT P0.4K6 BIT P0.5DIS0 EQU 30H;定義顯示緩沖區(qū)DIS1 EQU 31HDIS2 EQU 32HDIS3 EQU 33HORG 0000HLJMP MAIN;跳轉到主程序LJMP GRADE;跳轉到加分中斷效勞程序ORG 0013HLJMP EXCHANGE;

22、跳轉到交換中斷效勞程序ORG 0033HMAIN:MOV SP,#3FH;對堆棧指針進行賦值MOV IE,#85H;開中斷MOV TMOD,#05H;外部中斷為下降沿脈沖觸發(fā)LCALL CLEARLCALL DISPLAY1SJMP $;等待中斷GRADE:CLR EA;關中斷JNB K1,LGRADE1;判斷鍵值JNB K2, LGRADE2JNB K3, LGRADE3JNB K4, RGRADE1JNB K5, RGRADE2JNB K6, RGRADE3LGRADE1:LCALL DELAY;延時去抖動JNB K1,SW1;再次確定K1鍵是否按下SETB EA;開中斷RETISW1:I

23、NC DIS1;K1鍵按下那么加分LJMP LCOMPARELGRADE2:LCALL DELAY;延時去抖動JNB K2,SW2;再次確定K2鍵是否按下SETB EA;開中斷RETI SW2:INC DIS1;K2鍵按下那么加分INC DIS1LJMP LCOMPARELGRADE3:LCALL DELAY;延時去抖動JNB K3,SW3;再次確定K3鍵是否按下SETB EA;開中斷RETI SW3:INC DIS1;K3鍵按下那么加分INC DIS1INC DIS1LJMP LCOMPARELCOMPARE:MOV A,DIS1CJNE A,#10,LCOMP;(DIS1)的值與10進行比

24、擬SJMP LCARRY;(DIS1)等于10那么跳轉到進位子程序LCOMP:JC $+2;(DIS1)小于10那么輸出顯示LJMP DISPLAY2SJMP LCARRY;(DIS1)大于10那么跳轉到進位子程序LCARRY:CLR CMOV A,DIS1SUBB A,#10INC DIS0MOV A,DIS0CJNE A,#10,$+9;(DIS0)的值與10進行比擬LCALL CLEAR;(DIS0)等于10那么數(shù)碼管顯零LJMP DISPLAY2MOV DIS1,ALJMP DISPLAY2RGRADE1:LCALL DELAY;延時去抖動JNB K4,SW4;再次確定K4鍵是否按下SETB EA;開中斷RETI SW4:INC DIS3;K4鍵按下那么加分LJMP RCOMPARERGRADE2:LCALL DELAY;延時去抖動JNB K5,SW5;再次確定K5鍵是否按下SETB EA;開中斷RETI SW5:INC DIS3;K5鍵按下那么加分INC DIS3LJMP RCOMPARERGRADE3:LCALL DELAY;延時去抖動JNB K6,SW6;再次確定K6鍵是否按下SETB EA;開中斷RETI SW6:INC DIS3;K6鍵按下那么加分INC

溫馨提示

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

評論

0/150

提交評論