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