基于單片機乒乓球游戲系統(tǒng)設(shè)計_第1頁
基于單片機乒乓球游戲系統(tǒng)設(shè)計_第2頁
基于單片機乒乓球游戲系統(tǒng)設(shè)計_第3頁
基于單片機乒乓球游戲系統(tǒng)設(shè)計_第4頁
基于單片機乒乓球游戲系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——基于單片機乒乓球游戲系統(tǒng)設(shè)計基于單片機的乒乓球嬉戲系統(tǒng)的設(shè)計姓名:

學(xué)號:

專業(yè)班級:

院(系):

設(shè)計時間:

設(shè)計地點:

指導(dǎo)教師評語:

勞績:

簽名:

年月日目次一、題目要求…………二、方案設(shè)計…………三、硬件原理…………四、軟件設(shè)計…………五、結(jié)論與體會………………………附:硬件原理圖基于單片機的乒乓球嬉戲系統(tǒng)的設(shè)計一、題目要求以STC12C5410AD單片機為核心設(shè)計一款“乒乓球嬉戲機”。用8支連續(xù)排列的發(fā)光二極管,通過發(fā)光二極管的依次點亮代表乒乓球的運動。再用2個按鍵模擬左右2個球拍,鍵按下代表球拍擊球?!白笈摹卑聪驴墒拱l(fā)光二極管從左向右依次點亮,模擬乒乓球從左向右飛來;

反之,“右拍”按下那么可使發(fā)光二極管從右向左依次點亮,代表球從右向左運動。

本嬉戲供兩人玩,以一方按鍵(發(fā)球)開頭,這時乒乓球就向?qū)Ψ竭\動,接球方應(yīng)在乒乓球到達終點之前擊球。假設(shè)擊球時機適合,那么把球擊回,否那么就算失誤,由對方重新發(fā)球。在嬉戲過程中用LED數(shù)碼管顯示雙方比分。

二、方案設(shè)計(1)本嬉戲開頭時球在左方甲手中,數(shù)碼管顯示雙方最初比分00。

(2)當(dāng)甲方按下按鍵T1時,球開頭往右邊移動,此時8位LED燈從左至右逐次點亮。乒乓球移動速度是固定的,每0.5S左右的速度移動一位。

(3)若接球方乙提前或遲后按下按鍵T2擊球,那么判已失誤,由甲得分,乒乓球中斷運動(發(fā)光二極管熄滅),數(shù)碼管顯示得分。球重新回到甲手中,由甲方再次發(fā)球,嬉戲進入下一回合。

(4)若接球方乙擊球時機適合,即在LED燈到達最右端之前按下按鍵T2,那么把球擊回,LED燈即刻以0.5S每位左右的速度從右向左依次移動,等待甲方接球。若甲方接球失誤,那么判乙方得分,乒乓球中斷運動(LED燈滅),數(shù)碼管顯示得分。球回到乙方手中,由乙方發(fā)球,嬉戲持續(xù),開頭進入下一回合。

(5)當(dāng)甲乙中有一人得分為9后,嬉戲進入下一輪,得分較少方一端的LED燈亮,數(shù)碼管重新顯示00。此時發(fā)球權(quán)交給在上輪比賽中落后(得分較少)的一方,當(dāng)其按下按鍵后下一輪嬉戲正式開頭。

三、硬件原理1.STC12C5410AD單片機的主電路a復(fù)位電路復(fù)位操作有兩種根本形式:一種是上電復(fù)位,另一種是按鍵復(fù)位。按鍵復(fù)位具有上電復(fù)位功能外,若要復(fù)位,只要按圖中的RESET鍵,電源VCC經(jīng)電阻R1、R2分壓,在RESET端產(chǎn)生一個復(fù)位高電平。上電復(fù)位電路要求接通電源后,通過外部電容充電來實現(xiàn)單片機自動復(fù)位操作。上電瞬間RESET引腳獲得高電平,隨著電容的充電,RERST引腳的高電平將逐步下降。RERST引腳的高電平只要能保持足夠的時間(2個機器周期),單片機就可以舉行復(fù)位操作。按鍵復(fù)位電路圖如圖3.1.a所示。

圖3.1.a復(fù)位電路b振蕩電路單片機內(nèi)部有一個高增益、反相放大器,其輸入端為芯片引腳XTAL1,其輸出端為引腳XTAL2。通過這兩個引腳在芯片外并接石英晶體振蕩器和兩只電容(電容一般取30Pf)這樣就構(gòu)成了一個穩(wěn)定的自激振蕩器,振蕩電路脈沖經(jīng)過二分頻后作為系統(tǒng)的時鐘信號,再在二分頻的根基上三分頻產(chǎn)生ALE信號,此時得到的信號時機器周期信號。

振蕩電路如圖3.1.b所示:

圖3.1.b晶體振蕩電路2.LED燈接口電路8個LED燈的陽極與電源相連,陰極通過限流電阻與單片機的P1口相連,當(dāng)單片機的P1口為低電平日,相應(yīng)LED燈就被點亮,而當(dāng)為高電平日相應(yīng)LED燈就表現(xiàn)為熄滅狀態(tài)。其接口電路如圖3.2所示圖3.2LED燈接口電路3.LED數(shù)碼管顯示電路LED數(shù)碼顯示管的數(shù)據(jù)段通過限流電阻分別與單片機的P2口相接,位選段分別接NPN三極管的兩個集電極,三極管的兩個放射極共地,基極通過限流電阻分別與P3.2、P3.3相接。其硬件電路如圖3.3所示圖3.3LED數(shù)碼管顯示電路4.按鍵設(shè)定電路獨立式鍵盤:獨立式鍵盤中,每個按鍵占用一根I/O口線,每個按鍵電路相對獨立。I/O口通過按鍵與地相連,I/O口有上拉電阻,無鍵按下時,引腳端為高電平,有鍵按下時,引腳電平被拉低。I/O口內(nèi)部有上拉電阻時,外部可不接上拉電阻。本設(shè)計中鍵盤接口電路如圖3.4所示:

圖3.4按鍵設(shè)定電路四、軟件設(shè)計軟件設(shè)計流程圖大體為:

開頭初始化按鍵K1(甲發(fā)球)

K2適時?NY顯示甲得分K1適時?顯示乙得分N按鍵K2(乙發(fā)球)

Y乙得分為9?YN甲得分為9?YN軟件設(shè)計原代碼為:

#includereg52.h#defineucharunsignedchar#defineuintunsignedint#defineledP1#defineshumaP2sbitk1=P3^0;sbitk2=P3^1;sbitdig1=P3^2;sbitdig2=P3^3;ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};ucharflag1,flag2,pair1,pair2,score1,score2,wait;voiddelay(uint);voidledmove();voidkeyscan();voidscore();voidshowscore();voiddelay(uinttime){uinti,j;for(i=time;i0;i--)for(j=100;j0;j--);}voidmain(){A0:led=0x7f;score1=0;score2=0;flag1=0;flag2=0;dig1=1;dig2=1;shuma=table[0];delay(2000);B0:while(1){keyscan();ledmove();score();showscore();if(score1==9||score2==9){break;}}if(score2==9){showscore();delay(1000);gotoA0;}if(score1==9){showscore();delay(1000);led=0xfe;score1=0;score2=0;flag1=0;flag2=0;dig1=1;dig2=1;shuma=table[0];delay(2000);gotoB0;}}voidledmove(){if((led==0x7f)(pair1==1)){flag1=1;flag2=0;}if(flag1==1){led=(led1)|(0x80);delay(300);wait=1;}if((led==0xfe)(pair2==1)){flag2=1;flag1=0;}if(flag2==1){led=(led1)|(0x01);delay(300);wait=1;}}voidkeyscan(){if(k1==0){delay(20);if(k1==0){pair1=1;}elsepair1=0;}elsepair1=0;if(k2==0){delay(20);if(k2==0){pair2=1;}elsepair2=0;}elsepair2=0;}voidscore(){if((led==0xfe)(pair2==0)(wait==1)){score1++;led=0x7f;flag1=0;flag2=0;wait=0;}if((led==0x7f)(pair1==0)(wait==1)){score2++;led=0xfe;flag1=0;flag2=0;wait=0;}}voidshowscore(){dig1=1;dig2=0;shuma=table[score1];delay(20);dig1=0;dig2=1;shuma=table[score2];delay(20);}五、結(jié)論與體會本設(shè)計的乒乓球嬉戲系統(tǒng)是由STC單片機、共陰數(shù)碼顯示管、操縱按鍵、三極管等器件構(gòu)成的,設(shè)有雙位數(shù)據(jù)顯示、兩個嬉戲按鍵以及一個系統(tǒng)整機復(fù)位按鈕。設(shè)計精簡,使用簡樸易懂。系統(tǒng)設(shè)計合理,線路簡樸、功能先進,性能穩(wěn)定,程序精簡。并給出了細(xì)致的電路設(shè)計方法。本系統(tǒng)是以單片機為核心,僅單片機方面學(xué)識是不夠的,還應(yīng)根據(jù)概括硬件布局,以及針對概括應(yīng)用對象特點的軟件結(jié)合,以作完善。

通過一個星期的努力,我終究完成了單片機的課程設(shè)計。在設(shè)計的過程中,我察覺了自身的大量缺乏,譬如自己的編程才能薄弱,軟件不夠熟諳、焊接技術(shù)有待提高等等。我覺得作為一名自動化專業(yè)的學(xué)生,單片機的課程設(shè)計是很有意義的,更重要的是如何把自己平日所學(xué)的東西應(yīng)用到實際中。通過這次課程設(shè)計,加強了我們動手、斟酌和解決問題的才能。通過本次設(shè)計,復(fù)習(xí)穩(wěn)定我們以前所學(xué)習(xí)的數(shù)電、模電、單片機原理及應(yīng)用等課程學(xué)識,加深對各門課程及相互關(guān)系的理解,并告成使用了Wave、Protel2022和Proteus三款電子軟件,使理論學(xué)識系統(tǒng)化、實用化,系統(tǒng)地掌管微機應(yīng)用系統(tǒng)的一般設(shè)計方法,培養(yǎng)較強的編程才能、開發(fā)才能。

在這次課程設(shè)計過程中,我們了解了好多元件的功能,并且對于其在電路中的使用有了更多的熟悉。動手實踐讓我們對各個元件各個單元的組成及其相應(yīng)的功能映象深刻。熟

溫馨提示

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

評論

0/150

提交評論