袁 芳, 江 偉, 陳 冬, 劉超俊
(東華理工大學核技術應用教育部工程研究中心,; 江西省新能源工藝及裝備工程技術研究中心,江西 南昌 330013)
在籃球比賽中,需要對比賽雙方的要求進行處理,實現暫停、比分清零、換場比分交換、24 s進攻時間復位、加分、減分、記錄暫停次數的功能。對比賽時間、雙方的分數、24 s進攻時間、雙方的暫停次數以及60 s暫停時間進行記錄和顯示。
本文設計了以AT89C51單片機為核心元件的籃球比賽場地計時計分系統(tǒng)。分別設計了單片機最小系統(tǒng)、提示音電路、譯碼電路、4*4矩陣鍵盤接口電路、共陰數碼管顯示電路[1-6]。以及主控程序、動態(tài)顯示子程序、定時中斷子程序、按鍵子程序、延時子程序的軟件系統(tǒng)。該系統(tǒng)可靠性強、操作簡單、攜帶方便,完全可以滿足籃球比賽的要求[7-10]。
硬件電路由單片機最小系統(tǒng)、按鍵電路、顯示電路、蜂鳴器提示音電路、譯碼電路組成。系統(tǒng)的硬件框圖如圖1所示[11-15]。

該系統(tǒng)選用AT89C51單片機為核心控制器,該單片機的控制系統(tǒng)主要包括單片機外圍接口電路、復位電路、晶振電路及電源電路,如圖2所示。

在籃球比賽中需要提示音,例如比賽時間到、比賽暫停都需要提示音。提示音電路由蜂鳴器和三極管組成與單片機P2.7相連,因為驅動蜂鳴器的電流要求比較大,而單片機I/O口電流比較小,因此使用三極管來放大驅動,如圖3所示。

設計需要16個數碼管顯示,為節(jié)約單片機的I/O口,使用4~16譯碼器,它由2片3~8譯碼器組成的。由于74LS138只有3個輸入端,因此將第一片的E2,E3作為它的第4個地址輸入端(同時令E1=1),取第二片的E1作為第四個地址輸入端(令E2=E3=0),將四個地址輸入端(命名為D0,D1,D2,D3)分別與P3口的低四位連接,16輸出端連接數碼管的位選端。
當D3=0時第二片譯碼器不工作而第一片譯碼器工作,將4個輸入信號組成的8個代碼譯成8個低電平信號,若D3等于0時,第一片譯碼器停止工作,第二片譯碼器工作,將4個輸入信號組成的這8個代碼譯成8個Z8~Z15高電平信號,擴展成為一個4線-16線的譯碼器。同時在Z15端口加一個或門,因為在仿真過程中要給一個0xff進行消隱,但0xff值會點亮第16個數碼管,造成亂碼,加或門并且通過軟件設計就可以在消隱時不會點亮數碼管,電路如圖4所示。

該系統(tǒng)要人為的控制比較多,因此采用矩陣鍵盤,八個端口與單片機P1口連接,16個鍵盤可以實現了比賽所需數據的記錄,包括比賽雙方分數的記錄,比賽時間倒計時,暫停功能,換場比分交換,雙方持球時間的復位,兩隊請求的暫停時間以及暫停的次數等,各個鍵盤的分布如圖5所示。

該系統(tǒng)用于顯示的數碼管有16個,采用動態(tài)顯示,在硬件電路方面節(jié)省許多器件,提高效率。單片機I/O口的電流比較小不能驅動數碼管,使用74HC573驅動數碼管,達到最佳效果,位選信號是由4~16譯碼器輸出。
共陰數碼管公共端接低電平,段碼高電平時才點亮數碼管,在編程時,先送出段碼,再送位選碼,不斷循環(huán)。數碼管顯示電路如圖6所示。

圖6 數碼管顯示電路
運用單片機中斷系統(tǒng)實現時間控制和計數功能,線反轉法實現鍵盤掃描控制,動態(tài)顯示數碼管,單片機I/O口的高低電平實現警報器發(fā)出聲音。
運用T1和T0兩個定時器中斷,T0進行有參賽隊請求暫停的時候60 s倒計時,T1定時器控制整節(jié)比賽總時間的倒計時,鍵盤控制球隊的加分,當有鍵按下時,有對應的加分動作,整個軟件部分采用模塊化設計思想,將系統(tǒng)的各功能編成子模塊,可以加強軟件的可移植性以及可讀性。
主程序的設計內容主要對定時器的初值進行初始化,開啟中斷,調用子程序,具體流程圖如圖7所示。
籃球比賽所有要顯示的數據放到一個變量數組s[ ]內,數組內存放了11個數據,分別代表的意義是:時間min,時間sec,A隊分數,B隊分數,24 s進攻時間,60 s暫停倒計時,A隊暫停次數,B隊暫停次數,A隊分數百位,B隊分數百位,臨時數據.其中最后一個數據只是換場時比分交換的臨時數據,不做顯示在乒乓球比賽程序里把所有的數據放到數組p[]里,顯示的原理與籃球顯示相同。
數碼管的段選端連接至74HC573鎖存器的8個引腳上,74HC573引腳LE接至P2.7口,只有當P2.7=1時,數碼管才接受到單片機傳出的數據,否則鎖存器不會工作,4~16線譯碼器的16個引腳分別連接16個數碼管的公共端作位選,4個輸入點連接P3口的低四位,每次只點亮1個數碼管,位選碼從0000~1111無限循環(huán),將數據全部正常的顯示出來,具體流程如圖8所示。


中斷是該軟件系統(tǒng)最重要的環(huán)節(jié),是軟件的核心部分,此次軟件設計使用了T0和T1兩個定時器中斷。該系統(tǒng)運用了定時器工作方式1。定時器的功能是由程序編寫確定的,在使用定時器前都要初始化,在主程序或在中斷子程序都要進行初始化,使其按用戶自己定好的方式工作。定時器中斷流程圖如圖9和圖10所示,其中s[0]表示比賽倒計時min,s[1]表示比賽倒計時s,s[4]表示24 s進攻時間倒計時,s[5]表示60 s倒計時。

圖9 定時器1中斷流程圖圖10 定時器0中斷流程圖
按鍵功能設計中,使用了4*4矩陣鍵盤,采用線反轉法要比逐行掃描法快,但使用線反轉法時,行、列上都接上拉電阻。16個按鍵有著不同的功能,分別如下:1:比分清零;2:時間復位;3:換場比分交換;4:24 s復位;5:A隊加1分;6:A隊加2分;7:A隊加3分;8:A隊減1分;9:B隊加1分;10:B隊加2分;11:B隊加3分;12:B隊減1分;13:A隊請求暫停;14:B隊請求暫停;15:暫停 ;16:開始。具體流程圖如圖11所示。
延時過程使用兩個局部變量i,j其中j的值已經固定好為110;i的值需要用戶輸進去,j的值為110的意義就在于用戶確定延時的方便,當需要延時1 ms時,只需要調用延時函數delay可以達到要求。圖12就是延時子程序流程圖。
比賽設計可以直接在Proteus軟件里進行仿真,通過與Keil 建立協(xié)同仿真單步調試,程序的的每一步都可以在Proteus上體現出來。仿真前首先在Proteus軟件里畫好硬件圖,確定沒有錯誤,其次編寫C代碼,編譯無誤產生HEX文件,加載到單片機中進行仿真,顯示的是籃球比賽數據,如圖13所示。由圖可知,比賽時間還剩九分鐘,比分是13∶12,暫停的次數分別是三次和一次,進攻時間還剩13 s。最后,制作籃球比賽場地計時計分器的實物,能實現相同的設計功能。
本文設計了比賽場地計時計分系統(tǒng),該系統(tǒng)的硬件部分由單片機最小系統(tǒng)、蜂鳴器提示音電路、按鍵電路、顯示電路、譯碼電路組成。該系統(tǒng)的軟件部分由主程序、動態(tài)顯示子程序、定時中斷子程序、按鍵子程序、延時子程序組成。

圖11 按鍵處理流程圖圖12 延時子程序流程圖

圖13 籃球比賽運行圖
仿真和實物實驗驗證了該電路的正確性和可靠性,而且該系統(tǒng)還具有結構簡單、價格低廉的優(yōu)點,具有廣闊的市場應用前景。
[1] 胡漢才.單片機原理及其接口技術[M].3版.北京: 清華大學出版社,2010:49-78.
[2] 張靖武.單片機系統(tǒng)的PROTEUS設計與仿真[M].北京: 電子工業(yè)出版社,2007:21-26.
[3] 孔維功.C51 單片機編程與應用[M].北京: 電子工業(yè)出版社,2011:40-59.
[4] 鹿玉紅,倫志新,杜芳芳.基于單片機的籃球計時計分器的設計[J].電腦知識與技術,2010,6(4): 988-990.
LU Yu-hong,LUN Zhi-xin,DU Fang-fang. The Design of Basketball Points and Time Based on Single chip [J].Computer Knowledge and Technology, 2010,6(4): 988-990.
[5] 王 剛.基于單片機控制的便攜式籃球計時器設計[J].現代電子技術,2011,34(14): 151-153.
WANG Gang. Design of Portable Basketball Match Timer Controlled by Single-chip Microcomputer [J].Modern Electronics Technique 2011, 34(14):151-153.
[6] 趙永科,李躍忠,胡開明. 超聲波流量計信號驅動與高速切換電路研究[J].東華理工大學學報(自然科學版),2011,34(2) :198-200.
ZHAO Yong-ke, LIYue-zhong, HU Kai-ming. Ultrasonic Flow meter with Signal Driven and High-speed Switching Circuit Research[J].Journal of East China Institute of Technology,2011,34(2):198-200.
[7] 管小明,李躍忠,王小娟.基于MC34063 的便攜式儀器電源電路設計[J].東華理工大學學報(自然科學版),2010,33(1): 97-100.
GUAN Xiao-ming, LI Yue-zhong, WANG Xiao-juan. Design of Power Supply Circuit based on MC34063 Used in Portable Instrument [J].Journal of East China Institute of Technology, 2010, 33(1):97-100.
[8] 劉立群,孫志毅,金坤善.基于 MSP430 單片機的超低功耗數據采集器設計[J]. 自動化儀表, 2005,26(4): 30-31.
LIU Li-qun, SUN Zhi-yi, JIN Kun-Shan. The design of Ultra-low power consumptive data collector based on MSP430 single chip computer [J].Process Automation Instrument, 2005, 26(4): 30-31.
[9] 李躍忠,朱星華, 吳偉偉.檢測儀表中的數據融合方法[J].東華理工大學學報(自然科學版),2008,31(1):89-92.
LI Yue-zhong, ZHU Xing-hua, WU Wei-wei. Methods of Data Fusion in Measuring Instrument [J].Journal of East China Institute of Technology, 2008, 31(1):89-92.
[10] 金解云,鄒繼軍.智能交通燈控制系統(tǒng)的設計[J].東華理工大學學報(自然科學版),2011,34(3): 293-295.
JIN Jie-yun, ZOU Ji-jun.The Design of Intelligent Traffic Control System [J].Journal of East China Institute of Technology, 2011, 34(3):293-295.
[11] 張江印.高校單片機教學模式的研究[J].實驗室研究與探索,2011,30(9): 103-106.
ZHANG Jiang-yin.Research of Micro Controller Unit Teaching Model in University [J].Research and Exploration in Laboratory, 2011, 30(9): 103-106.
[12] 陳 林,楊 健,陽 浩.電子技術綜合設計性實驗項目[J].實驗室研究與探索,2012,31(1):149-152.
CHEN Lin,YANG Jian,YANG Hao.Comprehensive Designing Experiment Project of Electronic Technology[J].Research and Exploration in Laboratory,2012,31(1): 149-152.
[13] 石建國,王麗娟.在線調試與編程的單片機教學實驗板設計[J].實驗科學與技術, 2008(3): 74-75.
SHI Jian-guo, WANG Li-Juan. Design of a MCU demonstration and development board with IAP and ICE Function[J].Experiment Science & Technology 2008(3): 74-75.
[14] 蘇變玲,朱志平,袁 衛(wèi).基于 Proteus 的單片機仿真教學的研究[J]. 實驗室研究與探索, 2009, 28(4): 75-78.
SU Bian-ling, ZHU Zhi-ping, YUAN Wei. MCU simulation teaching based on proteus [J].Research and Exploration in Laboratory, 2009, 28(4): 75-78.
[15] 耿 新,陳心浩,姜臣林.開放性實驗室建設的實踐與探索[J].實驗室研究與探索,2011,30(12) :150-152.
GENG Xin, CHEN Xin-hao, JIANG Chen-lin.Practice and Exploration of Construction of an Open Laboratory [J].Research and Exploration in Laboratory, 2011, 30(12): 150-152.