單片機控制的便攜式籃球計時器設(shè)計
引言
本設(shè)計利用單片機AT89C51完成了計時的功能,詳細地介紹了系統(tǒng)硬件與軟件的設(shè)計過程,設(shè)計由AT89C51編程控制Led七段數(shù)碼管作顯示的籃球計時系統(tǒng)。該系統(tǒng)具有賽程時間設(shè)定,計時啟功,暫停,報警,24 s及復(fù)位等功能。
1 系統(tǒng)原理
籃球比賽計時的準確性和計時的精確度是要求很高的,而單片機在這方面有著出色的表現(xiàn)。該系統(tǒng)采用頻率為12 MHz的芯片,整個系統(tǒng)由按鍵、計時顯示、報警,箭頭方向等部分組成。該系統(tǒng)組成方框圖如圖1所示。
單片機是該系統(tǒng)電路的核心組成部分,系統(tǒng)的各種功能都是在單片機內(nèi)通過編程來實現(xiàn)。單片機選用AT89C51。它的X1(19腳)和X2(18腳)外接12MHz晶振,為單片機提供時鐘信號。晶振的2個引腳分別串一個瓷片電容,電容值為20~50 pF,用于提高晶振頻率的穩(wěn)定性。共接入6個4寸7段共陽極數(shù)碼管顯示器,用于賽程的時間和記錄24 s違規(guī)計時顯示。
2 系統(tǒng)硬件設(shè)計
2.1 定時控制部件設(shè)計
定時控制部件是在規(guī)定的時刻發(fā)出各種操作所需的全部內(nèi)部和外部控制信號,使各功能元件協(xié)調(diào)工作,完成指令所規(guī)定的功能。主要任務(wù)是產(chǎn)生一個工作時序,其工作需要時鐘電路提供一個工作頻率。
MCS-51內(nèi)部有一個用于構(gòu)成振蕩器的高增益反向放大器,該放大器的輸入端和輸出端分別是XTAL1和XTAL2,在XTAL1和XTAL2上外接時鐘源可構(gòu)成時鐘電路。在XTAL1和XTAL2兩端跨接晶體或陶瓷諧振器,與內(nèi)部反向器構(gòu)成穩(wěn)定的自激振蕩器,它發(fā)出的脈沖直接送入片內(nèi)的定時控制部件。
2.2 系統(tǒng)的復(fù)位電路設(shè)計
設(shè)計采用的是上電加按鈕電平復(fù)位,是上電自動復(fù)位與按鈕電平復(fù)位的組合。上電復(fù)位利用電容充電來實現(xiàn),即上電瞬間RST/Vpd端的電位與Vcc相同,隨著充電電流的減少,RST/Vpd的電位下降,最后被復(fù)位在0 V,按鈕電平復(fù)位,當(dāng)按鈕按下后,電源Vcc通過電阻施加在單片機復(fù)位端RST/Vpd上,實現(xiàn)單片機的復(fù)位。
2.3 報警器
設(shè)計采用的是12 V電磁式鐵振膜蜂鳴器作為報警器。當(dāng)單片機送一個高電平延時一段時間,經(jīng)過三極管將信號放大后驅(qū)動中間繼電器,再由中間繼電器驅(qū)動12 V電磁式鐵振膜蜂鳴器,使得電磁線圈產(chǎn)生了一個磁場。振動膜片在電磁線圈和磁鐵的相互作用下振動發(fā)聲。
2.4 譯碼及驅(qū)動部分電路
譯碼及驅(qū)動部分由74LS248和ULN2804A兩塊芯片組成,其輸入電壓為12 V。74LS248的輸入端與單片機的I/O口對應(yīng)相連,ULN2404A的輸出端與數(shù)碼管的段選端相連。
3 籃球計時器軟件設(shè)計
首先在比賽之前,接通電源,系統(tǒng)自動復(fù)位,首先設(shè)置時間,通過上下?lián)軇印霸O(shè)置時間”的按鈕來設(shè)置比賽的時間,本設(shè)計已設(shè)好12 min和10 min一節(jié)的兩種時間,按下啟動按鈕,計時器面板的計時電路共陽極數(shù)碼管計時部分顯示為“12-00”或“10:00”;24 s計時器顯示為“24”。當(dāng)比賽開始時,按下“運行”按鈕計時器計時部分和24 s部分同時開始運行。
在比賽過程中可以通過球權(quán)按鍵來控制箭頭的指向,從而顯示比賽中擁有球權(quán)的隊。若控球方在24 s內(nèi)未違規(guī),則只需按一下“24 s復(fù)位”按鈕即可,當(dāng)24 s違規(guī)時,該蜂鳴器會發(fā)出2 s的報警聲音。
當(dāng)小節(jié)比賽到最后10 min時,計時器向蜂鳴器發(fā)出信號,蜂鳴器報警提示1 s,此時計時器的計時顯示面板由“00-10”變?yōu)椤?0—00”,當(dāng)24 s顯示面板此時變?yōu)楹撩胗嫊r,這時就進入1/10 s倒計時。
當(dāng)比賽結(jié)束時蜂鳴器報警提示4 s,計時器面板計時部分顯示為“00-00”,24 s顯示器顯示為“00”。此時本場比賽結(jié)束。流程圖如圖2所示。
[next]
4 系統(tǒng)調(diào)試
4.1 軟件調(diào)試
利用Keil μVision 3進行仿真調(diào)試,根據(jù)設(shè)計要求運行程序、調(diào)試時間、運行的步驟等,最終達調(diào)試到設(shè)計需要的參數(shù)。
(1)程序編完后,對代碼仔細逐行檢查。檢查代碼的錯誤,建立自己的代碼檢查表,對經(jīng)常易錯的地方進行檢查。檢查代碼是否符合編程規(guī)范。
(2)對各個子程序進行仿真測試。仿真測試的方法:用程序測試程序,編制一個調(diào)用該子程序的代碼,建立要測試子程序的入口條件,再看看它是否按預(yù)期輸出結(jié)果。
(3)如果代碼有修改,再次對代碼進行檢查。
4.2 硬件調(diào)試
在Proteus Professional 7.1 SP2單片機仿真與電路板設(shè)計軟件中繪制電路原理圖,在搭接好基本電路后根據(jù)設(shè)計要求設(shè)置參數(shù),之后將寫好的程序?qū)敕抡嬗布娐分?,然后運行,觀察仿真現(xiàn)象是否與設(shè)計要求的一致。
主要需要調(diào)試的是電路的輸入電壓,計算電路中的電流來設(shè)置具體的通過每個元件的允許電流,即Imax,在調(diào)試穩(wěn)壓電源的時候需根據(jù)計算結(jié)果,選擇變壓器的參數(shù),即能夠提供的最大電流、功率。合理選用電容參數(shù)的大小以保證穩(wěn)壓電路的穩(wěn)壓系數(shù)。仿真得到的效果和制作出來的實物之間有一定的差距,因為實際電路存在電損耗,所以在搭接硬件電路時必須考慮這些方面的影響。
5 注意事項
(1)根據(jù)硬件電路原理圖和裝配圖仔細檢查線路的正確性,并檢查元器件安裝是否正確。常要注意的是芯片及開關(guān)管的型號、放大器和開關(guān)管的極性、電容器的耐壓和極性、電阻的阻值和功率是否與設(shè)計圖紙相符,重點檢查系統(tǒng)總線間或總線與其他信號線間是否存在短路。
(2)檢查焊接點是否牢固,特別要仔細檢查有無漏焊和錯焊;對于靠得很近的相鄰焊點,要注意檢查金屬毛刺和是否短路,必要時可用萬用表進行測量。調(diào)試過程有時可能要重復(fù)多次。另外,在燒錄程序的時候,一定要注意到AT89系列單片機默認得有芯片加密。
(3)在制作過程中需考慮電流、電壓、磁場對單片機的影響,做好防護措施,可外接保護電路,從而消除灌流、尖峰電流的等對單片機運行的影響。
6 結(jié)語
計時器的時間設(shè)定操作簡單,功能齊全,體積小,易于方便攜帶等優(yōu)點。能廣泛應(yīng)用于學(xué)校,籃球俱樂部,體育館或者小團體作為賽程的計時。
蜂鳴器相關(guān)文章:蜂鳴器原理
評論