籃球比賽計分器_第1頁
籃球比賽計分器_第2頁
籃球比賽計分器_第3頁
籃球比賽計分器_第4頁
籃球比賽計分器_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 成績Protel課程論文題 目: 籃球計分器 學生姓名: 湯培泉 學生學號: 1114020131 系 別: 電氣信息工程學院 專 業: 電子信息工程 年 級: 2011級 任課教師: 王千春 電氣信息工程學院制2013年12月第1章 概述Protues是電子信息工程專業的一門重要專業課,對應用能力和動手能力要求很高,課程設計環節是學生學習該課程后進行的一項必不可少的基本訓練。并于大三上學期進行,本人所選的課題是籃球賽計分器。本課題以增強型單片機AT89C52為核心,設計制作籃球比賽計分器。針對籃球比賽中有得1、2、3分,有時還會出現加分錯誤的情況,本人設計的簡易籃球賽計分器主要通過按鍵實現

2、以下功能:能夠進行加1、2、3分;能夠進行減1分。并通過3個數碼管進行顯示。第2章 設計分析2.1 功能分析根據前面的設計的任務的要求,本設計任務主要具有以下幾個模塊:單片機模塊;按鍵模塊;數碼顯示模塊。本設計由單片機模塊部分植入主程序,通過按鍵部分進行加1、2、3分以及減1分操作,最終在3個LED數碼管上顯示結果。2.2方案論述本系統是以C語言作為編輯語言,采用單片機AT89C52作為本設計的核心元件,。利用7段共陽LED作為顯示器件。在此設計中共接入了3個7段共陽LED顯示器,分別表示個位,十位,百位用于記錄該隊的分數, 3個LED顯示器顯示范圍可達到0999分,能夠滿足籃球比賽的需要。并

3、設置有4個按鍵:K1,K2,K3,K4。當比賽隊得1分時,按下k1鍵加1分,得2分時按k2鍵加2分,得3分時按下k3鍵加3分。如分數計錯需減分時,每按一次k4鍵減1分。因所設計的籃球賽計分器功能較少,電路結構也相對簡單。所以在選材方面也不多。由于按鍵要求不是很高,因此選材只有兩個部分:單片機部分和顯示部分。本次課程設計選用的芯片為AT89C52,顯示部分用的是LED數碼管顯示。第3章 系統詳細設計本次課程設計主要分為2個主要的部分進行:硬件和軟件。首先進行的是硬件的選材和電路圖的連接,然后再進行程序的編寫。3.1硬件設計 由于本次課程設計的簡易籃球計分器功能比較簡單,所以選擇的器件也比較少,主

4、要有5個按鍵,1個AT89C52,3個共陽的數碼顯示管,因此本課題的硬件設計部分劃分為3個模塊:單片機模塊;按鍵模塊;數碼顯示模塊。系統的總電路圖見附錄2(總電路原理圖)。3.1.1 單片機模塊單片機是在一塊芯片中集成了CPU、RAM、ROM、定時/計數器和多功能I/O口等計算機所需要的基本部件的大規模集成電路,又稱MCU。如果說C語言程序設計課程設計的基礎課,那么AT89C52單片機以其系統硬件構架完整、價格低廉、學生能動手等特點,成為工科學生硬件設計基礎課。AT89C51是51系列單片機的一個增強型號,它是ATMEL公司生產的。AT89C51是一個低電壓,高性能CMOS 8位單片機,片內含

5、8k bytes的可反復擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數據存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元,功能強大的AT89C51單片機可為您提供許多較復雜系統控制應用場合。AT89C51有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內含2個外中斷口,3個16位可編程定時計數器,2個全雙工串行通信口,2個讀寫口線,AT89C51可以按照常規方法進行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結合在一起,特別是可反復擦寫的Flash存儲器可有

6、效地降低開發成本本設計P1口接四個開關,分別作為比分+1、+2、+3、1分的控制按鍵;P0、P2口和P3口分別按靜態接口方法接兩個數碼管來顯示比分。本次課程設計采用的是增強型AT89C51單片機。其管腳圖如圖1所示。 圖 1 單片機模塊圖本次設計用到了其中的P0,P1,P2,P3口,分別用于百位,開關,個位,十位 。各管腳的功能和用法如下述。P0口:P0口為一個8位漏極開路雙向I/O口,當作輸出口使用時,必須接上拉電阻才能有高電平輸出;當作輸入口使用時,必須先向電路中的鎖存器寫入“1”,使FET截止,以避免鎖存器為“0”狀態時對引腳讀入的干擾。P1口:P1口是一個內部提供上拉電阻的8位雙向I/

7、O口,它不再需要多路轉接電路MUX;因此它作為輸出口使用時,無需再外接上拉電阻,當作為輸入口使用時,同樣也需先向其鎖存器寫“1”,使輸出驅動電路的FET截止。P2口:P2口電路比P1口電路多了一個多路轉接電路MUX,這又正好與P0口一樣。P2口可以作為通用的I/O口使用,這時多路轉接電路開關倒向鎖豐存器Q端。P3口:P3口特點在于,為適應引腳信號第二功能的需要,增加了第二功能控制邏輯。當作為I/O口使用時,第二功能信號引線應保持高電平,與非門開通,以維持從鎖存器到輸出端數據輸出通路的暢通。當輸出第二功能信號時,該位應應置“1”,使與非門對第二功能信號的輸出是暢通的,從而實現第二功能信號的輸出。

8、其中P1的14腳分別接上開關K1K4,P0的3639腳接上上拉電阻和數碼顯示的百位,P2的2124腳接數碼顯示的個位,P3的1013腳接數碼顯示的十位。VCC腳和XTAL分別接上5V電源和12M的晶振。3.1.2按鍵模塊根據設計要求,該籃球賽計分器共有4個按鍵:K1、K2、K3、K4,分別實現的功能是加1、2、3分和減1分。K1與P1的1腳相連,K2與P1的2腳相連,K3腳與P1的3腳相連,K4鍵與P1的4腳相連,4個按鍵共用一個地端,如圖2所示。 圖2 按鍵模塊圖3.1.3 數碼顯示模塊本設計顯示部分采用的是7段共陽LED數碼管顯示,LED就是發光二極管,相對LET來說它的優勢在于節能環保,

9、保護視力,使用壽命長等優點。數碼管實際上是由7個發光管組成8字形構成的,加上小數點就是8個。我們分別把他命名為A,B,C,D,E,F,G,H,如圖3所示。 圖 2 數碼管結構圖假設要顯示一個數字2, 那么 A、B、G、E、D這5個段的發光管亮就可以了,C、F、H不亮,同時由于接法為共陽接法,那么為低電平是亮,為高電平是滅。從高往低排列, P1.7-P1.0寫成二進制為01111110, 把它轉化為16進制則為A2H。數碼管的接口有靜態接口和動態接口兩種。動態接口采用各數碼管循環輪流顯示的方法,當循環顯示的頻率較高時,利用人眼的暫留特性,看不出閃爍顯示現象,這種顯示需要一個接口完成字形碼的輸出,

10、另一接口完成各數碼管的輪流點亮。靜態接口為固定顯示方式,無閃爍,其電路可采用一個并行口接一個數碼管,數碼管的公共端按共陽接VCC,本次課程設計由于所需數碼管較少,故可用這種方法接線。這種接法占用接口多,僅能接少量數碼管。本次課程設計的比分范圍是0999,所以采用的3個7段共陽LED來顯示,分別顯示個位十位百位,其中P2顯示個位,P3顯示十位,P0顯示百位。由于P0沒有內置電阻,因此在使用時需外接一個上拉電阻。如圖4所示。 圖4 數碼管引腳連接圖3.2 軟件設計籃球比賽計分器其實就是一個計數器,本次課程設計就是利用單片機中的定時/計數器來實現其計分的功能。在52單片機中有兩個16位的定時/計數器

11、T0,T1,分別由TH0、TL0和TH1、TL1組成,它們均是8位寄存器,在特殊功能寄存器中占地址8AH-8DH。它們用于存放定時或計數的初始值。此外,內部還有一個8位的方式寄存器TMOD和一個8位的控制寄存器TCON。用于選擇和控制定時/計數器的工作。其格式見下面兩表:表 1方式控制寄存器TMODGATEC/TM1M0GATEC/TM1M0門控開關計數/定時方式選擇門控開關計數/定時方式選擇表 2控制寄存器TF1TR1TF0TROIE1IT1IE0IT0T1請求有/無T1工作啟/停T0請求有/無T0工作啟/停INT1請求有/無INT1方式下沿INT1請求有/無INT1方式下沿籃球比賽計分器利

12、用單片機的計數器進行工作,計數器對脈沖電平進行加1計數,直至計滿回零。作為可編程器件,單片機中的定時/計數器初始化編程步驟如下:根據定時時間要求或計數要求計算計數器初值;將工作方式控制字寫入TMOD寄存器;將計數初值寫入THX和TLX寄存器;啟動定時器/計數器,即將TRX置位。如果工作于中斷方式,需置位EA(中斷總開關)及ETX(允許定時/計數器中斷),并編寫中斷服務程序。本次課程設計程序是用C語言編寫的,因為設計的功能較為簡單,所以程序中只用到一個主程序就實現了其功能。程序的系統流程圖如圖5。控制源程序見附錄1.圖 3 系統程序流程圖第4章 系統仿真與實驗測試4.1系統仿真本次課程設計用到的

13、仿真軟件有Protues和Keil uvision。在用Protues進行仿真之前,先要用KEIL UVISION軟件將我們編寫好的匯編程序編譯。具體方法是先新建一項目,之后輸入編寫的程序,輸入完成后保存然后執行項目、編譯,在目標文件夾內生成編譯好的程序文件,其中*.HEX文件就是我們所需要的目的文件,在之后電路設計好后用于導入AT89C51中執行其功能。然后在生成*.HEX文件后,進入Protues軟件,此時軟件已自動打開一新建項目。我們可直接在其中構建電路圖,點擊板面左側按鍵P,在彈出的Pick devices對話框中進行元器件的選擇,元器件都找到后,先進行排版再按照電路圖連接,連接好后,

14、雙擊AT89C51在彈出對話框中選擇單片機中要輸入的程序,在輸入程序后,即可開始進行仿真了,選擇執行后點擊開關可觀察到數碼管亮,并能實現加1、加2、加3、減1功能。仿真效果如圖6。圖6 仿真效果圖4.2 實驗測試打開 Proteus 上的單片機控制步進電機電路圖,點擊 AT89C51 單片機,調用后綴名為.”HEX”的文件。點擊運行,觀察現象,3個數碼管均顯示為0。如圖7所示。圖7 初始值為0的仿真效果圖然后進行了如下操作:當按下k1鍵,從左往右(后同)的第3個數碼管顯示1,再按下k2鍵,第3個數碼管顯示3,按下k3鍵,第3個數碼管顯示6,再按下k4鍵,第3個數碼管顯示5,與設計的要求相符。顯

15、示5的仿真圖如圖8所示.經過多次反復測試,本系統已能達到設計所要求的所有功能。圖8 仿真計分為5的效果圖第5章 總結這次課程設計歷時兩個星期多左右,通過這兩個星期的學習,發現了自己的很多不足,自己知識的很多漏洞,看到了自己的實踐經驗還是比較缺乏,理論聯系實際的能力還急需提高。在這期的學習中,雖然在理論上對單片機有了簡單基本的了解,但是在真正的動手操作中還是存在很多的不足,這些個不足有體現在自己的粗心大意上,更多的是對知識的應用上能力有所欠缺,以至完成這樣一個簡單的設計花費了不少時間。但是最終通過自己的努力,查閱資料,詢問同學,完成了這次的單片機的設計,在以后的學習中我也會更多的重視自己理論和實

16、踐的結合能力,提高自身綜合能力。在這次單片機課程設計中使我對AT89C52片機有了更深的了解,單片機的種類多,而型號雜,這也是我們學習中的困難,所以平時我們的學習應該多動手。單片機編程既可以用C語言也可用匯編語言,其中最重要的環節就是我們要敢于去寫,敢于挑戰,不怕犯錯,然后就是多調試。在這次簡易籃球賽計分器的設計中,由于本人的能力有限,所以還有很多需待改進的地方,比如能顯示2個球隊的比分以及時間的顯示,利用數碼管的動態顯示來顯示比分,時間等等。最后,我還要感謝在此次課程設計中幫助過我的老師和同學。特別是朱老師的細心指導和我的同學,在他們的鼎力幫助我才能順利的完成了本次課程設計。參考文獻1陳忠平

17、. 基于Protues的51系列單片機設計與仿真M. 北京:電子工業出版社,2012.2謝維成,楊加國. 單片機原理及C51程序設計M. 北京:清華大學出版社,2009.3吉雷. Protel99從入門到精通M.西安:西安電子科技大學出版社,2000.4張靖武,周靈彬.單片機系統的Protues設計與仿真M.北京:電子工業出版社,2007.5唐穎單片機原理與應用 M北京:北京大學出版社,2008.附錄一 控制源程序#include<reg52.h>#define uchar unsigned char#define uint unsigned int sbit key1=P10;

18、sbit key2=P11; sbit key3=P12; sbit key4=P13; sbit wei_1=P20; sbit wei_2=P21;sbit wei_3=P22;sbit wei_4=P23; uint code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;void delay(unsigned int x) unsigned int a,b; for(a=x;a>0;a-) for(b=110;b>0;b-); void main()uint k1=0;uint k2=0;uint k3=0;uint k4=0;wei_1=1;wei_2=1;wei_3=1;wei_4=1; while(1) if(key1 = 0) delay(10);if(key1 = 0)k1 += 1; while(key1 = 0); if(key2 = 0) k1 += 2; while(key2 = 0);if(key3 = 0)k1 += 3; while(key3 = 0);if(key4= 0)k1 -= 1; while(

溫馨提示

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

評論

0/150

提交評論