久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2974|回復: 0
打印 上一主題 下一主題
收起左側

單片機籃球賽電子計時記分牌課程設計論文下載

[復制鏈接]
跳轉到指定樓層
樓主
ID:378141 發表于 2018-7-23 21:27 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
電子技術課程設計報告
籃球賽電子計時記分牌

摘  要
      籃球賽電子計時記分牌是根據籃球比賽特點設計的獨立的信息采集、分配、評判和顯示的系統,能實現比賽時間和分數的實時、準確、快捷處理和呈現。本設計原理簡單,主要采用AT89C52單片機作為微控制器,集合矩陣鍵盤、數碼管和LED指示燈,通過鍵盤控制記分牌的工作狀態,通過數碼管和LED指示燈來反饋信息。本設計在充分考慮了籃球比賽的實際情況基礎上設計,具有友好的人機交互接口,并且可以防止人為誤操作造成的不良后果,具有一定的實用性。

目  錄
1 設計任務
1.1 設計的目的和意義
1.2 設計任務與要求
2 硬件系統設計
2.1 總體方案設計
2.2 芯片選型與具體電路設計
2.2.1 單片機的選型
2.2.2 復位和振蕩電路的設計
2.2.3 鍵盤輸入模塊的設計
2.2.4 信息提示模塊的設計
2.3 系統總體電路
2.4 系統所用元器件
3 軟件系統設計
3.1 軟件系統總體設計方案
3.2 軟件系統流程圖
3.2.1 主程序流程圖
3.2.2  按鍵檢測子程序設計
3.2.3  數碼管顯示子程序設計
4 系統調試
5 總結
5.1 經驗總結
5.2 心得體會
參考文獻
附錄:籃球賽電子計時記分牌單片機程序代碼






1 設計任務  1.1 設計的目的和意義
目前球場記分牌在傳統操作模式下,采用記分員手動翻動記分牌記分,工作方式單一。由于種種弊端,電子記分板已經開始在一些大型的體育場流行起來,不僅發展速度迅猛并會逐漸取代傳統的電子記分牌。
電子記分板根據籃球比賽的特點,采用單片機為核心控制LED數碼管,具有亮度高、可視性好、功耗小、使用壽命長等優點;具有性能穩定,尺寸適中,運輸安裝方式靈活,物美價廉等特點,特別適用于中、小型體育館和訓練館。
  1.2 設計任務與要求
設計題目:籃球賽電子計時記分牌
設計要求:
  • 分別設計籃球比賽用的計時牌和記分牌;
  • 上下半場各20分鐘,要求能隨時暫停,啟動后繼續計時,一場比賽結束后應可清零重新開始比賽;
  • 能按照籃球計分規則計分并顯示。
2 硬件系統設計  2.1 總體方案設計
籃球記分器的硬件電路分成主控模塊、鍵盤輸入模塊、信息提示模塊三部分進行設計,系統整體結構如圖1所示。






圖1 系統硬件結構圖
主控模塊以AT89C52為核心,完成輸入輸出信息處理、計時器中斷響應、數值計算等,協調整個系統有條不紊地工作。鍵盤輸入模塊作為人機交互接口,允許用戶控制系統的工作狀態,完成如計時計分開始/暫停、交換場地、計時計分清零、比賽隊伍分數調整等功能。信息提示模塊包含4個2位8段數碼管、6個LED和一個蜂鳴器,用于實時顯示系統工作狀態,方便用戶進行下一步操作。
  2.2 芯片選型與具體電路設計  2.2.1 單片機的選型
主控模塊以AT89C52單片機作為微控制器。AT89C52單片機是一種低電壓,高性能CMOS 8位單片機,片內含8k bytes的可反復擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數據存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元。由于它的這些優良特性,AT89C52單片機在電子行業中有著廣泛的應用。采用AT89C52作為微控制器,可以很好地滿足籃球記分器的系統要求。
  2.2.2 復位和振蕩電路的設計
圖2給出了AT89C52單片機的引腳分布和最小系統接法。
圖2 AT89C52單片機最小系統原理圖
復位電路可以實現上電復位和按鍵復位兩種復位方式:上電復位電路由電容串聯電阻構成,由圖并結合“電容電壓不能突變”的性質,可以知道,當系統一上電,RST腳將會出現高電平,并且這個高電平持續的時間由電路的RC值來決定。典型的51單片機當RST腳的高電平持續兩個機器周期以上就將復位,所以適當組合RC的取值就可以保證可靠的復位。按鍵復位電路則是通過按下RESET按鍵拉高RST引腳電平來實現的。
晶體振蕩電路由一個12MHZ石英晶振和兩個30pF的電容組成,用于產生穩定的時鐘脈沖信號供單片機工作。
  2.2.3 鍵盤輸入模塊的設計
用戶通過鍵盤輸入模塊對系統進行控制。鍵盤采用3*3矩陣式按鍵,其中按鍵“START/PAUSE”控制計時計分的開始與暫停,按鍵“EXCHANGE”用于在半場結束后交換雙方記分牌上的分數,按鍵“CLEAR”用于在比賽結束后清除比分,其余的按鍵“A+1”、A+2”、“A+3”、“B+1”、“B+2”、“B+3”用于給參加比賽的A、B兩隊加上相應的分數。3*3矩陣按鍵的6條引線分別接至AT89C52的I/O口P3_0~P3_5,在單片機內部采用行列掃描法檢測到按鍵按下,從而執行相應的任務。
矩陣鍵盤的連接方式如圖3所示。
圖3 矩陣鍵盤的連接方式
  2.2.4 信息提示模塊的設計
信息提示模塊包含4個2位8段共陰極數碼管(圖4)、6個LED指示燈(圖5)和一個蜂鳴器。
4個數碼管分別用兩位數字顯示比賽分鐘、秒鐘和賽場上兩個籃板的分數。由于單片機I/O口資源有限,為了不占用太多的接口,在此使用P0口向數碼管同時送出數據(段選信號)和地址(位選信號),使用兩個74HC573鎖存器來分離數據和地址,而P2_0和P2_1口分別用于使能段選鎖存器和位選鎖存器。由于P0口的電流驅動能力有限,所以外接了排阻RP1,從而增強了對數碼管的驅動能力。
圖4 數碼管連接原理圖
LED1、LED2、LED3分別指示比賽狀態“開始”、“暫停”和“結束”;LED4用于“進球”指示,在比賽進行時按下任何一個加分按鍵,“進球”指示燈會閃一下;在上半場比賽結束后按下“EXCHANGE”鍵,“交換場地”指示燈LED5會亮,同時兩個籃板的比分互換。“ERROR!”指示燈LED6用于指示用戶的操作出錯。6個LED采用共陽極連接方式,其陰極分別接單片機P1_0~P1_5口,當單片機某口輸出低電平時,對應的LED亮。
圖5 LED指示燈連接原理圖
蜂鳴器接在P1_6口上,在半場結束或比賽結束后會發出提示音。
  2.3 統總體電路
圖6給出了系統硬件原理總圖。
  2.4 系統所用元器件
本系統所用的元器件清單如表1所示。
表1  本系統所用的元器件
元器件名稱
數量
電阻
8
電容
3
單片機 AT89C52
1
鎖存器 74HC573
2
LED
6
2位8段數碼管
4
蜂鳴器
1
排阻
1
12M晶振
1
按鍵開關
10
5V電源
1
導線
若干

3 軟件系統設計  3.1 軟件系統總體設計方案
單片機程序采用美國Keil Software公司出品的51系列兼容單片機C語言開發系統Keil C編寫。與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境(uVision)將這些部分組合在一起。
Keil采用工程方式集中管理源程序,編寫單片機程序首先要建立工程,然后在工程中添加源代碼文件。在本系統的工程中包含6個C代碼文件,對應功能介紹如下:
My_func.h              ——自定義的頭文件。存放常用宏定義、單片機I/O位定義、數據類型定義和所有函數的聲明。在其他C文件里只需要寫一句#include "my_func.h",即可直接調用任意函數,省去了重復寫定義和聲明的麻煩。
Main.c ——包含主程序main(),是整個程序執行的入口。在main()函數里,調用init()進行單片機的初始化,并在大循環里調用key_respond()和display()不斷掃描按鍵輸入、輸出顯示數據。同時設置定時器T0以工作方式1計時,從而在中斷服務程序void Timer() interrupt 1里實現1s間隔的倒計時。
Key_scan.c ——包含按鍵掃描程序key_scan()。該函數采用行掃描法獲取按鍵的狀態,并將對應的鍵碼傳給Key_respond.c中的函數key_respond()。
Key_respond.c ——包含按鍵響應函數key_respond()。該函數里決定是否對按鍵請求進行響應:如果不響應,則調用宏LED_ERROR()使“ERROR!”指示燈閃動;如果響應,則調用相應函數完成不同的操作,如比賽狀態的開始和暫停、加分、交換場地和分數清零等。
Display.c ——包含數碼管顯示驅動函數display()。在這個函數里實現比賽分數設置、比分交換、計時控制等,并通過P0口送出段選信號,通過P2_0和P2_1送出位選信號,從而控制數碼管的動態顯示。
My_func.c ——被調用函數的集合,包含延時函數void delay_ms(unsigned int xms)、初始化函數init()和蜂鳴器發聲函數sounder()。

  3.2.1 主程序流程圖
在主程序文件main.c中包含兩部分內容,分別是主函數和中斷服務函數。
首先是主函數void main(),這是整個程序執行的入口,在這個函數里,首先調用init()進行單片機的初始化,然后進入大循環,反復調用key_respond()和display()兩個函數不斷掃描按鍵輸入并輸出顯示數據。在中斷服務函數void Timer() interrupt 1里,設置定時器T0以工作方式1計時,計時時長為50ms,計時器每溢出一次,變量intr_num自增一次,直至intr_num等于20,于是計時時長達到1s。在中斷服務程序里,計時每達到1s,籃球計時牌上的秒鐘數就自減1;秒鐘減到0后,分鐘自減1,然后秒鐘從59開始繼續自減。
主程序和中斷服務程序流程如圖8(a)、8(b)所示。


5 總結
  5.1 經驗總結
這一次的課程設計,我的課題是《籃球賽電子計時記分牌》。由于這一系統包含單片機基礎、數碼管動態顯示、矩陣鍵盤掃描、定時器和中斷等知識體系,涉及面較廣,通過這一課程設計,可以更好地檢測和鞏固學到的知識,加深自己對電子世界的認識。
在本次的設計中,針對每一個模塊都曾有好幾個方案,在反復比較論證之后,才得出最佳方案并應用于系統。在各個模塊的設計中,我除了得到了正確的結果之外,更多的是面對錯誤和失敗,而這些錯誤大多數是由于自己對該部分電路原理掌握的不夠透徹而造成的。通過查閱資料,連接、調試電路和程序,我得出了一下幾條心得體會,以后在設計過程中可以借鑒:
(1)在Proteus里,電路狀態不正常且不易發現問題時,使用電流計和電壓計可直觀檢測電路動態變化,這也是Proteus里非常好用的一個功能;
(2)電流表、電壓表顯示數值為0時,不一定是接法的問題,可以試著調整量程,可能是量程選大了;
(3)Proteus里的電源默認是5V,需要改動電壓時,點擊屬性,在string項里填上需要的數值就可以了,如+15V;
(4)畫完電路后怎么一次性去掉proteus元器件的TEXT標號?
  打開菜單template—set design defaults,把shou hidden text的勾去掉即可;
(5)在keil工程中如何創建能用于所有C文件的全局變量?
在頭文件里聲明 extern uchar glb_num;在主函數前定義 uchar glb_num;
(6)Proteus里可變電阻不好找,代號是POT-HG;按鈕開關是button,撥動開關是switch。
  5.2 心得體會
本次課程設計的題目我很感興趣,做得也非常認真。從方案的指定、元件的選擇、電路的搭建與調試等多方面都付出了很多努力,甚至在遇到棘手的問題時徹夜坐在電腦旁反復修改調試。雖然辛苦,但是收獲頗豐。
在這里要感謝很多同學和朋友在本次課程設計中給予我的支持和幫助。特別要感謝我的指導老師侯**和盧**,在我遇到困難的時候,他們給了我極大的幫助。尤其是在系統顯示模塊方案的確定上,老師多次給我耐心細致的指導。很慶幸能有這樣負責任、有愛心的指導老師,幫我掃清了課程設計過程中的諸多障礙,也讓我看到了師長的風范。

完整的Word格式文檔51黑下載地址:
單片機課程設計—籃球賽電子計時記分牌.doc (536.59 KB, 下載次數: 41)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲男女视频在线观看 | 精品乱子伦一区二区三区 | 精品伊人 | 成人污污视频 | 亚洲精品久久久蜜桃网站 | 国产黄色小视频 | 精品日韩一区二区三区 | 伊人免费在线观看高清 | 免费av播放 | 亚洲欧美综合精品另类天天更新 | 欧美中文字幕一区二区三区亚洲 | 日韩国产高清在线观看 | 亚洲成人黄色 | 欧美日韩亚洲国产综合 | av日韩高清| 国产专区免费 | 懂色tv| 国产欧美精品一区二区三区 | 99精品99久久久久久宅男 | 91精品久久久久 | 久久久国产一区二区三区 | 国产精品成人一区二区 | 精品三区| www.日韩系列| www97影院 | 免费播放一级片 | 亚洲一区二区三区视频 | 日韩精品无码一区二区三区 | 中文字幕在线免费 | 成人免费三级电影 | 日韩成人在线视频 | 亚洲一二三区免费 | 国产在线视频三区 | 亚洲国产欧美精品 | 午夜av免费 | 欧美日韩精品一区二区三区四区 | 一区日韩| 黄色大片网| 精产国产伦理一二三区 | 超碰97人人人人人蜜桃 | 成在线人视频免费视频 |