基于單片機的籃球計時計分系統(tǒng)ppt_第1頁
基于單片機的籃球計時計分系統(tǒng)ppt_第2頁
基于單片機的籃球計時計分系統(tǒng)ppt_第3頁
基于單片機的籃球計時計分系統(tǒng)ppt_第4頁
基于單片機的籃球計時計分系統(tǒng)ppt_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、設(shè)計名稱:設(shè)計名稱:基于單片機的基于單片機的 籃球計時計分系統(tǒng)籃球計時計分系統(tǒng)設(shè)計籃球計時計分系統(tǒng),功能如下:設(shè)計籃球計時計分系統(tǒng),功能如下:具有計分功能(個、十),并在數(shù)碼管上顯示雙方比分。具有計時功能(分、秒),采取總時間倒計時,時間到了聲光報警。刷新分數(shù)功能(+1、-1)。具有暫停、啟動功能。設(shè)計描述設(shè)計描述 本系統(tǒng)采用單片機AT89C51作為本設(shè)計的核心元件。利用7段共陰LED作為顯示器件。在本次設(shè)計中,共接入十個七段共陰LED顯示器,其中6個用于記錄 甲、乙兩隊的分數(shù),每隊3個LED顯示器分數(shù)范圍可達到0999分。另外4個LED顯示器則用于記錄賽程的時間,其中兩個用于顯示分鐘;2個用

2、于顯示秒鐘。賽程計時采用倒計時方式,計時范圍可達099分鐘,完全滿足一般賽事的需求。 其次,為了配合計時器和計分器校正、調(diào)整時間和比分,特在本設(shè)計中設(shè)立了7個按鍵。其中4個用于輸入甲、乙兩隊的分數(shù);另外3個則用于完成設(shè)置、調(diào)整、啟動和暫停賽程時間等功能。設(shè)計分析設(shè)計分析 本本次設(shè)計首先需要了解匯編中各種語句的使用方法,單片機計數(shù)/定時器的工作方式,知道各芯片的作用及引腳,其次還必須分配好硬件資源。程序流程圖 系統(tǒng)總體電路 計時部分模塊流程 計時電路原理圖 計分部分模塊流程 計分電路原理圖 程序代碼ORG 0000H ;主程序地址AJMP LK1 ORG 000BH ;定時中斷入口地址AJMP

3、CTCOORG 0013H ;外部中斷入口地址AJMP CXTLK1: MOV 33H,#00H ;甲隊記分清0MOV 34H,#00H MOV 35H,#00HMOV 36H,#00H ;乙隊記分清0MOV 37H,#00H MOV 38H,#00HMOV 40H,#00H ;記時分鐘清0MOV 41H,#00HCLR P0.0MP: CLR P2.0 ;計時牌子清零CLR P2.1 ;分分秒秒清0CLR P2.2 CLR P2.3MOV P1,#00HNOPNOPSETB P2.0SETB P2.1SETB P2.2SETB P2.3MOV 42H,#05H ;送秒鐘初值59秒MOV 43

4、H,#09HMOV SCON,#00H ;計分牌子清零程序CLR P3.7MOV R1,#33HMOV R2,#06 分數(shù)刷新CXT: JNB P3.5,KP1 ;甲隊+1JNB P3.4,KP2 ;甲隊-1JNB P0.2,KP3 ;乙隊+1JNB P0.1,KP4 ;乙隊-1AJMP KPKP1: INC 36H ;乙隊+1程序MOV A,36HCJNE A,#0AH,KP5MOV 36H,#00HINC 37HMOV A,37HCJNE A,#0AH,KP5MOV 37H,#00HINC 38HMOV A,38HCJNE A,#0AH,KP5MOV 38H,#00HAJMP KP5KP2

5、: MOV A,36H ;乙隊-1程序CJNE A,#00H,AP1MOV 36H,#09HDEC 37H AJMP KP5AP1: DEC 36HAJMP KP5KP3: INC 33H ;甲隊+1程序MOV A,33HCJNE A,#0AH,KP5MOV 33H,#00HINC 34HMOV A,34HCJNE A,#0AH,KP5MOV 34H,#00HINC 35HMOV A,35HCJNE A,#0AH,KP5MOV 35H,#00HAJMP KP5KP4: MOV A,33H ;甲隊-1程序CJNE A,#00H,AP2MOV 33H,#09HDEC 34H AJMP KP5AP2

6、: DEC 33HAJMP KP5KP5: CLR P3.7 ;顯示分數(shù) MOV R1,#33H MOV R2,#06H時間刷新LP: MOV A,R1 MOV DPTR,#TAB ;取顯示數(shù)MOVC A,A+DPTRMOV SBUF,A ;通過串行口發(fā)顯示數(shù)據(jù)JNB TI,$ ;是否發(fā)送完畢CLR TI ;清除標(biāo)志位INC R1DJNZ R2,LP ;6次是否 發(fā)送完畢SETB P3.7 ;顯示數(shù)據(jù)LK3: JB P2.4,LK6 ACALL D10MSJB P2.4,LK3 ACALL D2SLK4: JB P2.4,LK3 ;調(diào)整分鐘(十位)CLR P2.0 ;顯示分鐘十位數(shù)據(jù)MOV P

7、1,40HSETB P2.0ACALL D2S ;調(diào)用延時程序INC 40H ;將十位加1MOV A,40HCJNE A,#0AH,LK4 ;十到了沒有MOV 40H,#00HAJMP LK4LK6: JB P2.5,LK5 ACALL D10MSJB P2.5,LK6ACALL D2SLK7: JB P2.5,LK6 ;調(diào)分鐘(個位)CLR P2.1 ;顯示分鐘個位數(shù)據(jù)MOV P1,41HSETB P2.1ACALL D2S ;調(diào)用延時程序INC 41H ;將個位加1MOV A,41HCJNE A,#0AH,LK7 ;十到了沒有MOV 41H,# 00HAJMP LK7LK5: JB P2.

8、6,LK3 ;等待啟動計時ACALL D10MSJB P2.6,LK5CLR P2.2 ;顯示秒鐘十位MOV P1,42HNOPNOPSETB P2.2CLR P2.3 ;顯示秒鐘個位MOV P1,43HNOPNOPSETB P2.3SETB P0.0 ;點亮計時指示燈中斷程序MOV TMOD,#01H ;定時中斷初始化MOV TL0,#0B0H ;送定時初值MOV TH0,#3CHSETB ET0 ;開放定時中斷SETB EX1 ;開放外部中斷CLR IT0 ;外部中斷低電平有效SETB TR0 ;啟動定時MOV R0,#14HSJMP $CTCO: JNB P2.6,LK8 ;定時中斷程序

9、DJNZ R0,NEXT ;一秒鐘到了嗎?MOV R0,#14HDEC 43HCLR P2.3 ;顯示時間MOV P1,43H ;顯示秒鐘個位NOPNOPSETB P2.3CLR P2.2 ;顯示秒鐘十位MOV P1,42HNOPNOPSETB P2.2CLR P2.1 ;顯示分鐘個位MOV P1,41HNOPNOPSETB P2.1CLR P2.0 ;顯示分鐘十位MOV P1,40HNOPNOPSETB P2.0MOV A,43HCJNE A,#00H,NEXT ;秒鐘個位回到0沒有MOV 43H,#0AH ;秒鐘個位送初值10MOV A,42HCJNE A,00H,LP3 ;秒鐘十位回到0

10、沒有MOV 42H,#05H ;秒鐘十位送初值5MOV A,41HCJNE A,#00H,LP2 ;分種個位回到0沒有MOV 41H,#09H ;分鐘個位送初值9MOV A,40HCJNE A,#00H,LP1 ;分鐘十位回到0沒有CLR P0.0 CLR P3.6 ;時間到發(fā)出警備10SACALL D10SSETB P3.6KP11: JB P2.6,KP11 ;等待交換AJMP KP12 ;去兩隊分數(shù)交換程序 暫停、啟動、換場延時程序LK8: ACALL D10MS JB P2.6,CTCO ;計時暫停處理CLR P0.0LK9: JNB P2.6,LK9 ;等待鍵按下LK10: JB P

11、2.6,LK10 ;等待鍵放開SETB P0.0 ;繼續(xù)計時AJMP CTCOLP3: DEC 42H ;將秒鐘十位減1 AJMP NEXT;LP4: DEC 43H ;將秒鐘個位減1 AJMP NEXT;LP1: DEC 40H ;將分鐘十位減1AJMP NEXTLP2: DEC 41H ;將分鐘個位減1NEXT: MOV TL0,#0B0H ;定時中斷送初值返回MOV TH0,#3CHRETIKP12: MOV A,33H ;甲乙兩隊交換分數(shù)XCH A,36H MOV 33H,AMOV A,34HXCH A,37HMOV 34H,AMOV A,35HXCH A,38HMOV 35H,AAJ

12、MP MP ;返回顯示交換后的分數(shù)LP6: MOV A,R1MOV DPTR,#TAB ;查找顯示數(shù)據(jù)MOVC A,A+DPTRMOV SBUF,A ;通過串行口發(fā)送顯示JNB TI,$ ;串行口是否發(fā)送完畢CLR TI ;串行口標(biāo)志清0INC R1DJNZ R2,LP6 ;6次是否發(fā)送完畢SETB P3.7KP6: JNB P3.3,KP6KP: RETITAB: DB 3FH, 06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H ;顯示字D10S: MOV 50H,#05H ;延時程序10SD2S: MOV R3,#0AH ;延時程序2SD200MS: MOV

13、R7,#14HD10MS: MOV R6,#05HLOOP3: MOV R5,#0F9HNOPNOPLOOP2: DJNZ R5,LOOP2DJNZ R6,LOOP3DJNZ R7,D10MSDJNZ R3,D200MSDJNZ 50H,D2SRET心得體會通過本次 基于單片機的籃球計時計分系統(tǒng) 的畢業(yè)設(shè)計,實現(xiàn)了籃球比賽的計時計分功能,同時也可應(yīng)用于學(xué)校中的一些籃球比賽中。此次設(shè)計也使我對于單片機尤其是89c51的工作原理、功能有了宏觀的了解,并對單片機匯編程序的應(yīng)用有了新的、進一步的認識。在進行這次設(shè)計之前,還覺得這個設(shè)計應(yīng)該是一個比較簡單的設(shè)計,但是當(dāng)拿到手上時卻傻了眼,完全不知從何下手,看似簡單的電路,動手把它給設(shè)計出來還真是很難。經(jīng)過大量的資料查閱,不論是通過網(wǎng)絡(luò)還是圖書館的借閱書籍,

溫馨提示

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

評論

0/150

提交評論