單片機(jī)ATC控制籃球計(jì)分器課程方案報(bào)告_第1頁(yè)
單片機(jī)ATC控制籃球計(jì)分器課程方案報(bào)告_第2頁(yè)
單片機(jī)ATC控制籃球計(jì)分器課程方案報(bào)告_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余20頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、寧波技師學(xué)院課程設(shè)計(jì)報(bào)告設(shè)計(jì)課題:?jiǎn)纹瑱C(jī)籃球計(jì)分器專業(yè)班級(jí):學(xué)生姓名:指導(dǎo)教師:寧波技師學(xué)院電氣技術(shù)系二零一三年9月摘要進(jìn)入21世紀(jì),伴隨著電子,信息通信技術(shù)的應(yīng)用與普及開(kāi)發(fā),人們對(duì)電子技術(shù)的要求也越來(lái)越高。目前嵌入式單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,按照歷史性、本質(zhì)性普遍性要求,嵌入式系統(tǒng)應(yīng)定義為:“嵌入到對(duì)象體系中的專用計(jì)算機(jī)系統(tǒng)”。對(duì)于嵌入式即可分軟件部分和硬件部分。以MCU為核心,就是各種各樣的單片機(jī),是嵌入式硬件部分的實(shí)現(xiàn)方式之一,它主要是因?yàn)榘烟幚砥骱痛鎯?chǔ)器等部件集成在一 塊芯片上。在探索單片機(jī)的發(fā)展道路時(shí),有過(guò)兩種模式,即“工模式”與“創(chuàng)新模式”?!肮つJ健睂⑼ㄓ糜?jì)算機(jī)系統(tǒng)中的基本

2、單元進(jìn)行裁剪后,集成在一個(gè)芯片上, 構(gòu)成單片微型計(jì)算機(jī)“創(chuàng)新模式”則完全按嵌入式應(yīng)用要求設(shè)計(jì)全新的,滿足嵌入式 應(yīng)用要求的體系結(jié)構(gòu)、微處理器、指令系統(tǒng)、總線方式、管理模式等。In tel公司的MCS-48、MCS-51就是按照創(chuàng)新模式發(fā)展起來(lái)的單片形態(tài)的嵌入式系統(tǒng)。MCS-51是在MCS-48探索基礎(chǔ)上,進(jìn)行全面完善的嵌入式系統(tǒng),成為單片嵌入式系統(tǒng)的典型結(jié) 構(gòu)體系。體育比賽計(jì)分器是對(duì)體育比賽過(guò)程中所產(chǎn)生的比分等數(shù)據(jù)進(jìn)行快速采集記錄、加工處理、 傳遞利用的工具。 籃球比賽的計(jì)分器 是一種得分類型的工具。它由計(jì)分器等多種電子設(shè)備 組成。雖然籃球比賽中很早就開(kāi)始研究應(yīng)用了電子計(jì)分器,通常都是利用模擬

3、電子器件、 數(shù)字電子器件或是模擬、數(shù)字混合組成的,其穩(wěn)定性和高準(zhǔn)確度計(jì)分仍存在一些問(wèn)題。以 單片機(jī)為核心的籃球比賽計(jì)分器,計(jì)分準(zhǔn)確,具有體積小,重量輕,能耗低,價(jià)格便宜, 可靠性高,抗干擾能力強(qiáng)和使用方便等獨(dú)特的優(yōu)點(diǎn)。目錄一 總體設(shè)計(jì)方案 11.1 系統(tǒng)設(shè)計(jì)方案 11.2 系統(tǒng)結(jié)構(gòu)框圖 1二 系統(tǒng)硬件設(shè)計(jì) 22.1 晶振電路 22.2 復(fù)位電路 32.3 數(shù)碼管電路 42.4LED 指示電路 5 2.5 按 鈕 加 分 電路6三 軟件設(shè)計(jì) 73.1 主 流 程圖73.2 程 序圖9四 制作與調(diào)試 18五 結(jié)論 19六 致謝 20附錄 1 系統(tǒng)實(shí)物原來(lái)圖 212 實(shí) 驗(yàn) 原 理圖23圖244PC

4、B原理圖255分工表29總體設(shè)計(jì)方案1.1系統(tǒng)設(shè)計(jì)方案LED燈指示輸贏籃球計(jì)分系統(tǒng) 主要由:復(fù)位電路、晶振電路、數(shù)碼管顯示電路、 電路、甲乙加分電路等部分電路組成。各器件的選用:1單片機(jī)的選用:?jiǎn)纹瑱C(jī)芯片選用 AT89C51。2數(shù)碼管的選用:數(shù)碼管選用四位共陰極數(shù)碼管和兩位共陽(yáng)極數(shù)碼管。3晶振的選用:晶振選用的是 12MHZ 。1.系統(tǒng)結(jié)構(gòu)框圖聃躺復(fù)位電路電顧堺趨電踰A計(jì)分顯示4圖1.2-1系統(tǒng)結(jié)構(gòu)框圖二系統(tǒng)硬件設(shè)計(jì)復(fù)位電路、晶振電路、數(shù)碼管顯示電路迪電路組成。2.1晶振電路內(nèi)部方式時(shí)鐘電路如圖2.1-1所示。在XTAL2和XTAL2引腳上外接定時(shí)元件,內(nèi)部振蕩電路就產(chǎn)生自激振蕩。2.2復(fù)位電

5、路XCCO O0S11R2丄200322UFI«_HRl1K圖2.2-1按鍵復(fù)位電路按鍵手動(dòng)復(fù)位有電平方式和脈沖方式。而此次選用的便是按鍵電平復(fù)位。按鍵電平復(fù)位是通過(guò)復(fù)位端經(jīng)電阻與Vcc接通而實(shí)現(xiàn)的。電路如圖2.2-1所示。2.3數(shù)碼管電路Q1堂ECO圖2.3-1數(shù)碼管電路gf3 ab flel gk匸10|9|8|7|6|eds cdpo圖2.3-2數(shù)碼管2.4LED指示電路注:此電路可以明顯的反映出LED的運(yùn)行狀態(tài) 輸贏狀態(tài)),如圖 2.4-1所示。2.5按鈕加分電路SW-PB圖2.5-1按鈕加分電路注:此電路可以選擇甲、乙的加分,如圖2.5-1所示。三軟件設(shè)計(jì)3.1主程序流程圖

6、開(kāi)臺(tái)總分寄存器0清0七段數(shù)碼管首送地址DPTRSTART取出低4 位是否有鍵按下5取R出位是否真有鍵按下明個(gè)鍵按下的?加1分加2分加3分零11S2S3S4等待按鍵釋放S1將總分轉(zhuǎn)換為B C D碼再將 B C D碼轉(zhuǎn)換為七段碼 經(jīng)P 1 口和P 3 口輸出顯示圖3.1-1流程圖注:籃球計(jì)分程序根據(jù)流程圖所寫,根據(jù)按鈕是否按下跳起來(lái)判斷是否執(zhí)行下一條令,從而使LED指示燈與數(shù)碼管顯示出值。3.2 程序圖?;@球記分器ORG 0000HJMP LOOP3 。主程序ORG 0003HJMP KAI 。外部中斷 0:判斷輸贏ORG 0013HJMP JIAO 。外部中斷 1:比分交換LOOP3: SETB

7、 EA 。中斷開(kāi)啟SETB EX0SETB IT0SETB EX1SETB IT1MOV P0,#0FFH 。賦初值MOV P1,#0FFHMOV P2,#00HMOV P3,#0CHMOV A,#00HMOV R5,#00HMOV R1,#00HMOV R2,#00HMOV R3,#00HMOV R4,#00HMOV R6,#00HCLR CYLOOP2: MOV DPTR,#TABLE1 。比分顯示 開(kāi)始掃描LCALL DAY1 。掃描左移MOV A,R1 。左邊比分十位數(shù)值傳送到 P2 口MOVC A,A+DPTRMOV P2,ALCALL DAY2 。延時(shí)掃描時(shí)間LCALL DAY1

8、。掃描左移MOV DPTR,#TABLE2 。左邊比分個(gè)位數(shù)值傳送到MOV A,R2MOVC A,A+DPTRMOV P2,ALCALL DAY2 。延時(shí)掃描時(shí)間LCALL DAY1 。掃描左移MOV DPTR,#TABLE3MOV A,R3MOVC A,A+DPTRMOV P2,ALCALL DAY2 。延時(shí)掃描時(shí)間LCALL DAY1 。掃描左移MOV DPTR,#TABLE4MOV A,R4MOVC A,A+DPTRMOV P2,ALCALL DAY2 。延時(shí)掃描時(shí)間LCALL DAY1 。掃描左移MOV DPTR,#TABLE5 。右邊比分十位數(shù)值傳送到MOV A,R5MOVC A,A

9、+DPTRMOV P2,ALCALL DAY2 。延時(shí)掃描時(shí)間LCALL DAY1 。掃描左移MOV DPTR,#TABLE6 。右邊比分個(gè)位數(shù)值傳送到MOV A,R6P2 口P2 口P2 口MOVC A,A+DPTRMOV P2,ALCALL DAY2 。延時(shí)掃描時(shí)間MOV P1,#0FFHCLR CYJNB P3.0,LOOP20 。判斷左邊有沒(méi)有加 1 分鍵按下LCALL DAYJB P3.0,$ 。去抖動(dòng)LCALL DAYJB P3.0,$MOV A,#01 。左邊加 1分并判斷分?jǐn)?shù)有沒(méi)有超過(guò)十分ADD A,R2MOV R2,AMOV B,#10DIV ABMOV R2,BMOV B,

10、R1 。左邊個(gè)位數(shù)值超過(guò) 10 分, 十位數(shù)加上原來(lái)的十位數(shù)值傳 到 R1ADD A,BMOV R1,AJMP LOOP2LOOP20:JNB P3.1,LOOP21 。判斷左邊有沒(méi)有加 2 分鍵按下LCALL DAYSETB P0.0SETB P0.1SETB P0.2JB P3.1,$ 。去抖動(dòng)LCALL DAYJB P3.1,$MOV A,#2 。左邊加 2分并判斷分?jǐn)?shù)有沒(méi)有超過(guò)十分ADD A,R2MOV R2,AMOV B,#10DIV ABMOV R2,BMOV B,R1。左邊個(gè)位數(shù)值超過(guò) 10 分, 十位數(shù)加上原來(lái)的十位數(shù)值傳到 R1ADD A,BMOV R1,AJMP LOOP2

11、LOOP21:JNB P3.4,LOOP22 。判斷左邊有沒(méi)有加 3 分鍵按下LCALL DAYSETB P0.0SETB P0.1SETB P0.2JB P3.4,$ 。去抖動(dòng)LCALL DAYJB P3.4,$MOV A,#3。左邊加 3 分并判斷分?jǐn)?shù)有沒(méi)有超過(guò)十分ADD A,R2MOV R2,AMOV B,#10DIV ABMOV R2,BMOV B,R1。左邊個(gè)位數(shù)值超過(guò) 10 分, 十位數(shù)加上原來(lái)的十位數(shù)值傳到 R1ADD A,BMOV R1,AJMP LOOP2LOOP22: JNB P3.5,LOOP30 。判斷右邊有沒(méi)有加 1分鍵按下LCALL DAYSETB P0.0SETB

12、 P0.1SETB P0.2JB P3.5,$ 。去抖動(dòng)LCALL DAYJB P3.5,$MOV A,#01。右邊加 1 分并判斷分?jǐn)?shù)有沒(méi)有超過(guò)十分ADD A,R6MOV R6,AMOV B,#10DIV ABMOV R6,BMOV B,R5。右邊個(gè)位數(shù)值超過(guò) 10 分, 十位數(shù)加上原來(lái)的十位數(shù)值傳到 R5ADD A,BMOV R5,AJMP LOOP2LOOP30: JNB P3.6,LOOP31 。判斷右邊有沒(méi)有加 2分鍵按下LCALL DAYSETB P0.0SETB P0.1SETB P0.2JB P3.6,$ 。去抖動(dòng)LCALL DAYJB P3.6,$MOV A,#2。右邊加 2

13、 分并判斷分?jǐn)?shù)有沒(méi)有超過(guò)十分ADD A,R6MOV R6,AMOV B,#10DIV ABMOV R6,BMOV B,R5。右邊個(gè)位數(shù)值超過(guò) 10 分, 十位數(shù)加上原來(lái)的十位數(shù)值傳到 R5ADD A,BMOV R5,AJMP LOOP2LOOP31: JNB P3.7,LOOP32 。判斷右邊有沒(méi)有加 3分鍵按下LCALL DAYSETB P0.0SETB P0.1SETB P0.2JB P3.7,$ 。去抖動(dòng)LCALL DAYJB P3.7,$MOV A,#3。右邊加 3 分并判斷分?jǐn)?shù)有沒(méi)有超過(guò)十分ADD A,R6MOV R6,AMOV B,#10DIV ABMOV R6,BMOV B,R5

14、。右邊個(gè)位數(shù)值超過(guò) 10 分, 十位數(shù)加上原來(lái)的十位數(shù)值傳到 R5ADD A,BMOV R5,AJMP LOOP2LOOP32: JMP LOOP2DAY1:MOV A,P1。掃描左移RLC AMOV P1,ARET。跳轉(zhuǎn)返回DAY2:MOV R7,#10 。掃描時(shí)間LOOP5:MOV R0,#250LOOP:NOPNOPDJNZ R0,LOOPDJNZ R7,LOOP5RET。跳轉(zhuǎn)返回TABLE1:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 。左邊十位數(shù)值的表格TABLE2:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH

15、,6FH 。左邊個(gè)位數(shù)值的表格TABLE3:DB 40HTABLE4:DB 40HTABLE5:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 。右邊十位數(shù)值的表格TABLE6:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 。右邊個(gè)位數(shù)值的表格KAI: SETB P0.0。判斷輸贏 先賦初值SETB P0.1SETB P0.2LCALL DAYJNB P0.7,LOOP34JMP LOOP33LOOP34:PUSH ACC 。開(kāi)始判斷MOV A,#10MOV B,R1MUL ABMOV B,R2ADD A,B100H

16、100HMOV 100H,A 。用乘法和加法算出左邊的數(shù)值并傳到MOV A,#10MOV B,R5MUL ABMOV B,R6ADD A,BMOV 110H,A 。用乘法和加法算出右邊的數(shù)值并傳到MOV A,100HCJNE A,110H,LOOP201 。開(kāi)始比較CLR P0.1 。右邊贏 P0.1 亮POP ACCSETB P0.7JMP LOOP33LOOP201:JNC LOOP200 。平局 P0.2 燈亮CLR P0.2SETB P0.7POP ACCJMP LOOP33LOOP200:CLR P0.0 。左邊贏 P0.0 亮SETB P0.7POP ACCLOOP33: RETI

17、JIAO: PUSH ACC。2邊比分交換 輸贏燈賦初值SETB P0.0SETB P0.1SETB P0.2MOV A,R1XCH A,R5MOV R1,AMOV A,R2XCH A,R6MOV R2,APOP ACCRETIDAY: MOV R7,#50 。去抖動(dòng)延時(shí)D1: MOV R0,#250DJNZ R0,$DJNZ R7,D1RET四 制作與調(diào)試根據(jù)自己的設(shè)計(jì)題目,用 Protel99 SE 軟件繪出電子草圖,交與指導(dǎo)老師檢查。之 后在Proteus軟件里搭出電子圖,并且寫出程序,放于 Proteus軟件里進(jìn)行仿真,并且 通過(guò)。通過(guò)以后在 Protel99 SE 軟件里把 PCB 板制作,同時(shí)要注意板子的外觀,和元 器件的擺放,使之達(dá)到理想狀態(tài)。PCB 板子做好以后,把圖打印在熱轉(zhuǎn)印紙上,之后再和板子通過(guò)熱轉(zhuǎn)印機(jī)把圖轉(zhuǎn) 印至板子上。在把板子放置腐蝕液里,把露銅部分經(jīng)行腐蝕,留下被覆蓋的部分。腐蝕好之后,用清水和砂紙打磨,露出銅線。然后用機(jī)子把洞打出來(lái),把元器件 焊在上面。在調(diào)試時(shí),按步驟一步一步的經(jīng)行,在出現(xiàn)問(wèn)題時(shí),應(yīng)及時(shí)記錄,并且及時(shí)修 改。完全調(diào)試成功后,叫老師看過(guò)后上

溫馨提示

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

評(píng)論

0/150

提交評(píng)論