王 碩 文勝福 王 浩 崔漢漢
(重慶郵電大學 重慶 400065)
據(jù)統(tǒng)計,籃球已經(jīng)成為第二大球類運動,僅次于足球,并且有逐年上升的趨勢。同時籃球比賽也是奧運會中的熱門賽事,包括世錦賽,亞錦賽等各大賽事中都有籃球的存在。而計時、計分是籃球比賽不可或缺的一部分,但是籃球規(guī)則也很多元化,不同級別的籃球比賽對于計分、計時器的要求也并不相同。并且在許多露天比賽,有時會出現(xiàn)雨天、高溫天氣等極端天氣情況。針對上述問題,本文設計了一種一種廉價、普適性強、適用各種環(huán)境的高性價比的籃球計時、計分系統(tǒng),本系統(tǒng)將有很大的市場和不錯的應用前景。
本系統(tǒng)采用8位數(shù)碼管顯示單節(jié)次比賽時間、暫停休息限制時間、一方球隊運球限制時間、比賽節(jié)次和雙方隊伍比賽分數(shù)。在籃球比賽計時、計分系統(tǒng)運行的過程中,依據(jù)對定時器的設置,實現(xiàn)對比賽時間以及一方球隊運球時間的記錄,并通過按鍵的控制,實現(xiàn)對籃球比賽分數(shù)的記錄與比賽時間的調整,通過數(shù)碼管顯示函數(shù),實現(xiàn)對記錄數(shù)據(jù)的可視化。
當一方球隊運球時間達到24秒時,比賽運行時間將停止,蜂鳴器工作,提示球隊轉換攻守關系,按下具有外部中斷的按鍵時,單節(jié)次比賽運行時間繼續(xù),一方球隊運球時間清零。當一節(jié)比賽結束后,單節(jié)次比賽時間為零,蜂鳴器將工作,提示球隊該節(jié)次比賽結束,數(shù)碼管顯示的比賽節(jié)次自動加一,球隊換場地,需要將顯示的數(shù)據(jù)交換位置,按下具有外部中斷的按鍵時,一方球隊運球時間清零,此時定時器已停止工作。當按下比賽暫停按鍵時,定時器停止工作,數(shù)碼管顯示暫停休息時間99秒,99秒遞減為零時,蜂鳴器將工作,提示球隊休息時間結束,再次按下比賽暫停按鍵時,定時器繼續(xù)工作。
(一)AT89C51芯片
本文采用AT89C51單片機作為主控制器。AT89C51 提供以下標準功能:4k字節(jié)Flash閃速存儲器,256字節(jié)片內數(shù)據(jù)存儲器(00H -7FH為片內RAM,80H-FFH為特殊功能寄存器SFR),32 個I/O 口線,兩個16位定時/計數(shù)器,一個5向量兩級中斷結構,一個全雙工串行通信口,片內振蕩器及時鐘電路。同時,AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位[1]。
(二)四位一體LED數(shù)碼管
圖1 四位一體數(shù)碼的模型圖與引腳分布圖
根據(jù)顯示精度的要求,本文采用如圖1所示的四位一體數(shù)碼管顯示。通過AT89C51芯片以及鎖存器對段選和位選進行控制,實現(xiàn)動態(tài)顯示[2]。
軟件設計和仿真流程如圖2所示:
圖2 設計流程圖
基于上述流程圖,運用仿真軟件Proteus畫出如圖3所示的仿真電路圖:
圖3 系統(tǒng)仿真圖
其中通過管腳安排確定最終的實驗電路,基于實驗電路運用Keil編程平臺對實驗設計進行編程[3],將編程所得的hex文件,導入到仿真軟件Proteus的電路圖中實現(xiàn)對籃球比賽計時、計分系統(tǒng)的仿真,通過仿真驗證編程設計。
本實驗實現(xiàn)了籃球計時、計分系統(tǒng)的設計、編程與仿真,實驗設計方面較全面的考慮了實際比賽規(guī)則,是系統(tǒng)具有一定的糾錯性、提示性與可控性。實驗編程方面在Keil平臺進行編寫,采用多文件函數(shù)結合的形式,簡化主函數(shù)的復雜性,采用switch語句,編寫按鍵控制語句;運用段選片選數(shù)組結合的方式,兩個顯示8位LED數(shù)碼管;運用外部中斷控制24s運球控制數(shù)據(jù),并且修改一些標志位數(shù)據(jù)。實驗仿真階段采用仿真軟件Proteus,在其仿真平臺上運行籃球計時、計分系統(tǒng)。
但是該系統(tǒng)還存在兩個缺點,其一是在仿真軟件Proteus上運行時,2個LED數(shù)碼管顯示的數(shù)據(jù)存在跳閃現(xiàn)象。其二由于定時器中斷中的程序較長,存在計時誤差通過計時時間與實際時間對比,時間較久時該誤差積累較大,對籃球的計時環(huán)節(jié)造成誤差,所以針對精確的籃球計時、計分系統(tǒng)需要具有更加精確時鐘單元的芯片