基于單片機(jī)的籃球計分器設(shè)計_第1頁
基于單片機(jī)的籃球計分器設(shè)計_第2頁
基于單片機(jī)的籃球計分器設(shè)計_第3頁
基于單片機(jī)的籃球計分器設(shè)計_第4頁
基于單片機(jī)的籃球計分器設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

TOC\o"1-2"\h\z\u1概述 31.1研究背景 31.2基本功能及設(shè)計思緒 42總體方案設(shè)計 52.1方案選取 52.2總體設(shè)計 53硬件電路設(shè)計 63.1電源電路 63.2晶振電路 73.3鍵盤電路 73.4復(fù)位電路 83.5顯示電路 84系統(tǒng)軟件設(shè)計 94.1主程序設(shè)計 104.2加分程序設(shè)計 104.3互換程序設(shè)計 124.4LED顯示程序設(shè)計 134.5共陰極數(shù)碼管字形表 135總結(jié) 14參考文獻(xiàn) 15附錄1系統(tǒng)原理圖 15附錄2源程序 16附錄3系統(tǒng)調(diào)試 211概述1.1研究背景在這個電子信息技術(shù)迅速普及的今天,人們對電子產(chǎn)品的需求越來越多。二十一世紀(jì)的今天,科學(xué)技術(shù)迅猛發(fā)展,時代前進(jìn)的腳步越邁越寬,應(yīng)用自動化設(shè)備,現(xiàn)代化通訊,計算機(jī)解決,數(shù)字化信息,現(xiàn)代化顯示設(shè)備等一些高新技術(shù)使人類邁向智能化發(fā)展。在智能化產(chǎn)品中,單片機(jī)的應(yīng)用已經(jīng)越來越廣泛,單片機(jī)以它體積小、質(zhì)量輕、耗電省、可靠性高、價格低等優(yōu)點,開始不斷發(fā)展,并廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)療設(shè)備、航天航空領(lǐng)域、工業(yè)專用設(shè)備的管理及過程控制等領(lǐng)域,在很多的大中型的電氣設(shè)備以及小型的電子產(chǎn)品中也用到了單片機(jī)進(jìn)行控制。單片機(jī)把我們帶入了智能化的電子領(lǐng)域,許多繁瑣的系統(tǒng)若由單片機(jī)進(jìn)行設(shè)計,便能收到電路更簡樸、功能更齊全的良好效果。若把經(jīng)典的電子系統(tǒng)當(dāng)作一個僵死的電子系統(tǒng),那么智能化的現(xiàn)代電子系統(tǒng)則是一個具有“生命”的電子系統(tǒng)。本設(shè)計就是基于單片機(jī)設(shè)計籃球計分系統(tǒng),通過串口通信動態(tài)傳輸數(shù)據(jù),使計分系統(tǒng)有了更多更完善的功能。單片機(jī)系統(tǒng)的硬件結(jié)構(gòu)給予了籃球計分器系統(tǒng)“身軀”,而單片機(jī)的應(yīng)用程序賦予了其新的“生命”,使其在傳統(tǒng)的籃球計分器面前具有電路簡樸、成本低、運營可靠等特色。1.2基本功能及設(shè)計思緒1、運用89C51單片機(jī)設(shè)計籃球計分器系統(tǒng),實現(xiàn)以下功能●用4位LED顯示器顯示兩隊分?jǐn)?shù);●可以隨時手動對A、B兩隊分別計分;●可以手動實現(xiàn)A、B兩隊的分?jǐn)?shù)位置隨場地互換而相應(yīng)調(diào)換。2、設(shè)計思緒:以AT89C51單片機(jī)為核心元件,運用獨立式鍵盤控制,使4位共陰極LED數(shù)碼管以靜態(tài)顯示方式實時記錄A、B兩隊的分?jǐn)?shù)。獨立式鍵盤由K1、K2、K3、K4、K5、K6、K7、K8構(gòu)成。其功能如下:●K1、K2:加1分;●K3、K4:加2分;●K5、K6:加3分;●K7:半場換分;●K8:顯示復(fù)位。A、B兩隊分別占用兩位LED顯示器,顯示范圍為0~99,可以基本滿足一般比賽需要。2總體方案設(shè)計2.1方案選取單片機(jī)在各種電子產(chǎn)品中的應(yīng)用已經(jīng)越來越廣泛,很多的電子產(chǎn)品運用單片機(jī)所取得的便利得到了人們的好評,針對基于單片機(jī)的籃球計分器的設(shè)計規(guī)定,實現(xiàn)其功能的方案有多種,現(xiàn)列舉如下:方案(一)按鍵控制每次各隊的加分值為1分或2分,如若進(jìn)3分球,則需兩鍵相加。并由半場換分按鍵和復(fù)位功能。分?jǐn)?shù)通過4位LED顯示器動態(tài)顯示;方案(二)系統(tǒng)采用三個按鍵控制每次各隊的加分值為1分、2分或3分。同樣也有半場換分按鍵和復(fù)位功能。并通過4位LED顯示器靜態(tài)顯示分?jǐn)?shù)。這二個方案都是基于單片機(jī)控制的,通過按鍵加分及數(shù)碼管顯示,不同的設(shè)計部分在于按鍵的數(shù)量和顯示方式的選取上。方案(一)的按鍵數(shù)量較少,加上互換按鍵和復(fù)位按鍵共需要6個,但也能完畢基本功能。但是在顯示方面,動態(tài)方式編程較為復(fù)雜。方案(二)的按鍵雖然較多,但功能齊全,使用方便。并且電路不是太過復(fù)雜,編程較為簡樸。最終方案:通過以上比較,方案(一)按鍵使用不方便,且軟件設(shè)計復(fù)雜。因此選用方案(二),即以8位獨立式鍵盤分別實現(xiàn)加1分、加2分、加3分、半場換分和顯示復(fù)位的功能,并用4位共陰極LED顯示器以靜態(tài)顯示方式顯示分?jǐn)?shù)。2.2總體設(shè)計籃球計分器的設(shè)計是基于滿足設(shè)計規(guī)定的前提并且根據(jù)理論上的可實現(xiàn)性和硬件上的經(jīng)濟(jì)實用性,而進(jìn)行設(shè)計的重要環(huán)節(jié)。本節(jié)從人們對系統(tǒng)功能需求出發(fā),在綜合考慮各種因素的情況下,設(shè)計出籃球計分器的總體構(gòu)架。1、加分功能設(shè)計:通過顯示緩沖區(qū)為中間加分媒介。每當(dāng)按鍵按下時,一方面通過外部中斷源實現(xiàn)中斷,進(jìn)入中斷后判斷鍵值再進(jìn)入相應(yīng)加分子程序,對相應(yīng)顯示緩沖區(qū)加分。2、分?jǐn)?shù)調(diào)換功能:同樣是運用外部中斷源實現(xiàn)中斷,中斷服務(wù)程序應(yīng)能實現(xiàn)中場分?jǐn)?shù)位置調(diào)換的功能。3、分?jǐn)?shù)顯示功能:用同步移位寄存器74HC164實現(xiàn)4位LED數(shù)碼管靜態(tài)顯示。通過查表指令在字形表中找到與顯示緩沖區(qū)相應(yīng)的字形碼,然后串行移位輸出即可。基于89C51單片機(jī)的籃球計分器總體設(shè)計框圖如圖2所示。圖2籃球計分器總體框圖在框圖所示的系統(tǒng)構(gòu)架中,8位獨立式鍵盤涉及6位加分按鍵,1位分?jǐn)?shù)調(diào)換按鍵和1位復(fù)位按鍵。其中加分按鍵通過7421實現(xiàn)中斷掃描,分?jǐn)?shù)調(diào)換按鍵則直接通過外部中斷1入口P3.3實現(xiàn)中斷服務(wù)。3硬件電路設(shè)計3.1電源電路單片機(jī)正常工作電壓為5V,因此設(shè)計的電源電路重要是提供單片機(jī)工作電壓。圖3.1是為單片機(jī)提供電壓的電源電路,涉及變壓、整流、穩(wěn)壓、濾波等環(huán)節(jié)。在這個電路中采用了三端集成穩(wěn)壓器LM7805,可以輸出5V的直流電壓以供應(yīng)單片機(jī)。圖3.1電源電路3.2晶振電路電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準(zhǔn)頻率的。通過基準(zhǔn)頻率來控制電路中的頻率的準(zhǔn)確性。同時,它還可以產(chǎn)生振蕩電流,向單片機(jī)發(fā)出時鐘信號。圖3.2是單片機(jī)的晶振電路。片內(nèi)電路與片外器件就構(gòu)成一個時鐘產(chǎn)生電路,CPU的所有操作均在時鐘脈沖同步下進(jìn)行。片內(nèi)振蕩器的振蕩頻率非常接近晶振頻率,一般多在1.2MHz~24MHz之間選取。C1、C2是反饋電容,其值在20pF~100pF之間選取,典型值為30pF。本電路選用的電容為30pF,晶振頻率為12MHz。圖3.2晶振電路3.3鍵盤電路鍵盤電路在籃球計分器中的重要作用是用于實現(xiàn)加分和互換分?jǐn)?shù)位置。鍵盤可分為獨立式鍵盤和行列式鍵盤。本設(shè)計中由于按鍵數(shù)少于8個,所以采用獨立式按鍵電路。此外采用中斷掃描方式掃描鍵盤的狀態(tài),當(dāng)然也可以直接用編程掃描方式,兩者工作思緒基本同樣。具體電路如圖3.3所示。AT89C51單片機(jī)的直流輸入電流為15mA,當(dāng)直流電源電壓為+5V時,可選擇5.1KΩ的上拉電阻保證單片機(jī)的正常工作。圖3.3鍵盤電路3.4復(fù)位電路復(fù)位電路的重要功能是使單片機(jī)進(jìn)行初始化,在初始化的過程中需要在復(fù)位引腳上加大于2個機(jī)器周期的高電平。復(fù)位后的單片機(jī)地址初始化為0000H,然后繼續(xù)從0000H單元開始執(zhí)行程序。在復(fù)位電路中提供復(fù)位信號,等到系統(tǒng)電源穩(wěn)定后,再撤消復(fù)位信號。但是為了在復(fù)位按鍵穩(wěn)定的前提下,電源穩(wěn)定后還要經(jīng)一定的延時才撤消復(fù)位信號,以防在按鍵過程中引起的抖動而影響復(fù)位。圖3.4所示的RC復(fù)位電路可以實現(xiàn)上述基本功能。圖3.4復(fù)位電路3.5顯示電路顯示電路是用于顯示分?jǐn)?shù)。采用LED數(shù)碼管進(jìn)行顯示是由于LED數(shù)碼管具有以下幾個優(yōu)點:(1)能在低電壓、小電流條件下驅(qū)動發(fā)光,能與CMOS、ITL電路兼容。(2)發(fā)光響應(yīng)時間極短(<0.1μs),高頻特性好,單色性好,亮度高。(3)體積小,重量輕,抗沖擊性能好。

數(shù)碼管有共陰極和共陽極兩種類型,其公共端重要進(jìn)行位控制,筆畫端則是進(jìn)行字符控制,數(shù)碼管有靜態(tài)顯示和動態(tài)顯示兩種方法。本設(shè)計采用的是4位共陰極LED數(shù)碼管的串行驅(qū)動電路來達(dá)成顯示的目的。驅(qū)動器采用74HC164,由單片機(jī)89C51的P3.0和P3.1來控制LED數(shù)碼管的顯示。顯示電路圖如3.5所示。由于共陰極數(shù)碼管可以不用外接電阻,所以原理圖中的電阻可去掉。圖3.5顯示電路4系統(tǒng)軟件設(shè)計系統(tǒng)軟件設(shè)計重要由加分中斷服務(wù)程序,互換中斷服務(wù)程序,LED顯示程序等幾部分構(gòu)成。本章節(jié)系統(tǒng)的介紹了籃球計分器的主程序和各重要功能子程序的設(shè)計流程,具體的程序代碼見附錄2。4.1主程序設(shè)計主程序構(gòu)成無限循環(huán),重要完畢單片機(jī)初始化,等待加分和互換中斷的功能。主程序的流程圖如圖4.1所示。圖4.1主程序流程圖主程序流程說明:電路重要分為以下幾個部分,分別是電源部分、按鍵部分、顯示部分,各部分具有不同的子程序。主程序的作用重要是先讓單片機(jī)初始化,涉及棧底指針的重新賦值、開中斷、設(shè)立外部中斷為脈沖觸發(fā)等;然后使顯示緩沖區(qū)清零,使讓LED顯示為零;再運用無條件轉(zhuǎn)移指令SJMP$,等待加分中斷和互換中斷。待中斷服務(wù)程序執(zhí)行完后,再次返回主程序等待下一次中斷。4.2加分程序設(shè)計硬件電路中設(shè)計了6個加分按鍵,采用中斷和查詢結(jié)合的方法擴(kuò)充外部中斷源,實現(xiàn)相應(yīng)加分的功能。加分程序的流程圖如圖4.2所示。圖4.2加分程序流程圖加分程序流程說明:按下加分按鍵后,產(chǎn)生外部中斷0,CPU從主程序跳轉(zhuǎn)到加分中斷服務(wù)程序繼續(xù)執(zhí)行。當(dāng)在執(zhí)行相應(yīng)加分中斷服務(wù)程序時,不允許其它按鍵按下有相應(yīng)操作,所以必須在進(jìn)入中斷后通過CLREA指令關(guān)中斷,又由于為了避免保護(hù)現(xiàn)場時,一些寄存器的內(nèi)容出現(xiàn)紊亂,此指令必須放在PUSH指令之前。CPU通過查詢方式判斷鍵值后進(jìn)入相應(yīng)的加分子程序。由于在操作按鍵時,無論是按下還是松開,觸點在閉合和斷開時均會產(chǎn)生抖動,此時邏輯電平是不穩(wěn)的,假如得不到對的解決,也許會引起單片機(jī)對按鍵命令的錯誤執(zhí)行,所以必須執(zhí)行一段延時子程序,用來軟件去抖動。比如延時10ms:MOVR0,#0AHDL2:MOVR1,#7DHDL1:NOPNOPDJNZR1,DL1DJNZR0,DL2延時子程序執(zhí)行完后,再次判斷鍵值,倘若仍然可以檢測到相應(yīng)鍵值信號,則繼續(xù)向下執(zhí)行,否則返回主程序。繼續(xù)向下執(zhí)行時,一方面讓相應(yīng)顯示緩沖區(qū)加相應(yīng)的分?jǐn)?shù),然后通過CJNE指令與10進(jìn)行比較。若小于10,則串行輸出顯示,否則向相應(yīng)高位進(jìn)1,并減10。進(jìn)1后的高位仍需與10進(jìn)行比較,若小于10,則將上述減數(shù)重新賦予相應(yīng)低位,然后串行輸出,否則各位清零。輸出刷新后,CPU返回主程序。4.3互換程序設(shè)計由于籃球比賽中場結(jié)束之后,要互換場地,則分?jǐn)?shù)的顯示位置也要隨之調(diào)換。硬件電路中設(shè)立K7鍵完畢此項功能。互換程序流程圖如圖4.3所示。圖4.3互換程序流程圖互換程序流程說明:按下互換按鍵后,產(chǎn)生外部中斷1,CPU從主程序跳轉(zhuǎn)到互換中斷服務(wù)程序中繼續(xù)執(zhí)行。通過中間寄存器A和互換指令XCH實現(xiàn)分?jǐn)?shù)位置的互換?;Q完畢后,CPU返回主程序。4.4LED顯示程序設(shè)計硬件設(shè)計中運用4位LED靜態(tài)顯示電路顯示分?jǐn)?shù)。通過顯示緩沖區(qū)運用MOVCA,@A+DPTR查表指令找到指定字形碼,并由串行口串行輸出顯示。LED顯示程序流程圖如圖4.3所示。圖4.3LED顯示程序流程圖LED顯示程序流程說明:一方面將高位顯示緩沖區(qū)的值,也就是字形表的檢索值給累加器A,并將字形表首地址給DPTR,然后運用查表指令找到指定的字形碼,最后由單片機(jī)的串行口串行輸出。緊接著將下一位緩沖區(qū)的值給累加器A,同樣由查表指令找到相應(yīng)字形碼,并串行輸出。依次循環(huán)執(zhí)行上述操作,直至4位所有輸出后返回主程序。4.5共陰極數(shù)碼管字形表硬件電路所用數(shù)碼管為共陰極,所以串行口輸出高電平有效。并且4位數(shù)碼管的dp段都沒有使用,因此始終為0。此外應(yīng)特別注意的是字形碼的高低位順序應(yīng)與硬件中數(shù)碼管引腳的連接相應(yīng)。共陰極數(shù)碼管字形表如表4.1所示。表4.1共陰極數(shù)碼管字形表字形abcdefgdp字形碼0123456789111111000110000011011010111100100110011010110110101111101110000011111110111101100FCH60H0DAH0F2H66H0B6H0BEH0E0H0FEH0F6H5總結(jié)本次設(shè)計敘述了籃球計分器的基本原理及使用方法,給出了一種籃球計分器的設(shè)計方案。本次設(shè)計的籃球計分器,電路簡樸,并且易懂,使操作使用者使用非常方便,成本較低,靈敏可靠,計錄準(zhǔn)確,連接簡樸,具有非常高的使用價值。設(shè)計內(nèi)容涉及比分顯示、比分調(diào)換等部分,可以使參與比賽的成員、裁判和觀眾一目了然的看到參賽隊的成績,以最快的速度評出結(jié)果.該籃球計分器還能廣泛應(yīng)用于各類知識競賽。本設(shè)計由AT89C51編程控制LED七段數(shù)碼管作球賽計時計分系統(tǒng)具有賽程定性能穩(wěn)定、操作方便且易攜帶等特點??蓮V泛適合各類學(xué)校和小團(tuán)隊作為賽程計分。通過這次籃球計分器的設(shè)計,可以更清楚的了解單片機(jī)程序設(shè)計的基本指令功能、編程環(huán)節(jié)和技巧,對AT89C51單片機(jī)的原理和結(jié)構(gòu)進(jìn)一步熟悉和掌握,并對一些繪圖和仿真工具積累了更多的使用經(jīng)驗。參考文獻(xiàn)[1]張迎新.單片微型計算機(jī)原理、應(yīng)用及接口技術(shù)(第二版).北京:國防工業(yè)出版社,2023[2]鄭鋒王巧芝程麗平張清鵬.51單片機(jī)典型應(yīng)用開發(fā)范例大全.北京:中國鐵道出版社,2023[3]彭為黃科雷道.仲單片機(jī)典型系統(tǒng)設(shè)計實例精講.北京:電子工業(yè)出版社,2023[4]閻石.?dāng)?shù)字電子技術(shù)基礎(chǔ).北京:高等教育出版社,2023[5]夏路易石宗義.電路原理圖與電路板設(shè)計教程Protel99SE.北京:北京希望電子出版社,2023附錄1系統(tǒng)原理圖附錄2源程序K1BITP0.0K2BITP0.1K3BITP0.2K4BITP0.3K5BITP0.4K6BITP0.5DIS0EQU30H;定義顯示緩沖區(qū)DIS1EQU31HDIS2EQU32HDIS3EQU33HORG0000HLJMPMAIN;跳轉(zhuǎn)到主程序LJMPGRADE;跳轉(zhuǎn)到加分中斷服務(wù)程序ORG0013HLJMPEXCHANGE;跳轉(zhuǎn)到互換中斷服務(wù)程序ORG0033HMAIN:MOVSP,#3FH;對堆棧指針進(jìn)行賦值MOVIE,#85H;開中斷MOVTMOD,#05H;外部中斷為下降沿脈沖觸發(fā)LCALLCLEARLCALLDISPLAY1SJMP$;等待中斷GRADE:CLREA;關(guān)中斷JNBK1,LGRADE1;判斷鍵值JNBK2,LGRADE2JNBK3,LGRADE3JNBK4,RGRADE1JNBK5,RGRADE2JNBK6,RGRADE3LGRADE1:LCALLDELAY;延時去抖動JNBK1,SW1;再次擬定K1鍵是否按下SETBEA;開中斷RETISW1:INCDIS1;K1鍵按下則加分LJMPLCOMPARELGRADE2:LCALLDELAY;延時去抖動JNBK2,SW2;再次擬定K2鍵是否按下SETBEA;開中斷RETISW2:INCDIS1;K2鍵按下則加分INCDIS1LJMPLCOMPARELGRADE3:LCALLDELAY;延時去抖動JNBK3,SW3;再次擬定K3鍵是否按下SETBEA;開中斷RETISW3:INCDIS1;K3鍵按下則加分INCDIS1INCDIS1LJMPLCOMPARELCOMPARE:MOVA,DIS1CJNEA,#10,LCOMP;(DIS1)的值與10進(jìn)行比較SJMPLCARRY;(DIS1)等于10則跳轉(zhuǎn)到進(jìn)位子程序LCOMP:JC$+2;(DIS1)小于10則輸出顯示LJMPDISPLAY2SJMPLCARRY;(DIS1)大于10則跳轉(zhuǎn)到進(jìn)位子程序LCARRY:CLRCMOVA,DIS1SUBBA,#10INCDIS0MOVA,DIS0CJNEA,#10,$+9;(DIS0)的值與10進(jìn)行比較LCALLCLEAR;(DIS0)等于10則數(shù)碼管顯零LJMPDISPLAY2MOVDIS1,ALJMPDISPLAY2RGRADE1:LCALLDELAY;延時去抖動JNBK4,SW4;再次擬定K4鍵是否按下SETBEA;開中斷RETISW4:INCDIS3;K4鍵按下則加分LJMPRCOMPARERGRADE2:LCALLDELAY;延時去抖動JNBK5,SW5;再次擬定K5鍵是否按下SETBEA;開中斷RETISW5:INCDIS3;K5鍵按下則加分INCDIS3LJMPRCOMPARERGRADE3:LCALLDELAY;延時去抖動JNBK6,SW6;再次擬定K6鍵是否按下SETBEA;開中斷RETISW6:INCDIS3;K6鍵按下則加分INCDIS3INCDIS3LJMPRCOMPARERCOMPARE:MOVA,DIS3CJNEA,#10,RCOMP;(DIS3)的值與10進(jìn)行比較SJMPRCARRY;(DIS3)等于10則跳轉(zhuǎn)到進(jìn)位子程序RCOMP:JC$+2;(DIS3)小于10則輸出顯示LJMPD

溫馨提示

  • 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

提交評論