周航,陳艷玲,龔浩,陶玉寧,田元,張忠德
(三峽大學(xué)電氣與新能源學(xué)院,湖北宜昌,443000)
本設(shè)計(jì)完成一個(gè)8 路搶答器,同時(shí)提供不少于3 名參賽選手的搶答控制和顯示,通過(guò)主持人的開(kāi)始按鍵對(duì)搶答進(jìn)行倒計(jì)時(shí)5s,數(shù)碼管顯示倒計(jì)時(shí)時(shí)間,此時(shí)如有選手搶答系統(tǒng)報(bào)警并顯示犯規(guī)選手編號(hào),主持人按下復(fù)位鍵才能重新開(kāi)始,準(zhǔn)備倒計(jì)時(shí)結(jié)束后,進(jìn)入15s 的搶答倒計(jì)時(shí),此期間有選手搶答,數(shù)碼管顯示選手編號(hào),系統(tǒng)自動(dòng)使其他選手按鍵無(wú)效,搶答倒計(jì)時(shí)清零,選手答題完畢,由主持人按下復(fù)位鍵復(fù)位,實(shí)現(xiàn)搶答器控制[1-5]。
(1)設(shè)計(jì)原理:設(shè)計(jì)完成一個(gè)8 路搶答器,同時(shí)提供不少于3 名參賽選手的搶答控制和顯示。
(2)主控芯片介紹:AT89C51 是一款帶4K 字節(jié)FLASH 儲(chǔ)存器,亦稱(chēng)低電壓、高性能的CMOS8 位微處理器,俗稱(chēng)單片機(jī)。
(3)附有設(shè)計(jì)空間。AT 硬件電路的設(shè)計(jì)應(yīng)考慮到將來(lái)修改和擴(kuò)展的方便性。
(4)為了使電路精簡(jiǎn)化,平常所用的幾種普通芯片可以被功能強(qiáng)大的芯片所代替。
(5)程序空間,選用片內(nèi)程序空間足夠大的單片機(jī),方便單片機(jī)讀取,輸出及最后的運(yùn)行,本設(shè)計(jì)采用AT89C51 單片機(jī)。
(6)RAM 空間:如果軟件數(shù)據(jù)處理功能得到加強(qiáng),AT89C51 的RAM 空間和內(nèi)置RAM 往往不足,如果系統(tǒng)由外部RAM 組成,建議預(yù)留更多空間。
(7)I/O 端口:在試用機(jī)開(kāi)發(fā)后的現(xiàn)場(chǎng)測(cè)試中,通常會(huì)顯露出一些被忽視的問(wèn)題,并且這些問(wèn)題無(wú)法通過(guò)簡(jiǎn)單的軟件措施來(lái)解決。本次設(shè)計(jì)總體硬件電路原理圖如圖1 所示。
圖1 硬件電路系統(tǒng)原理圖
微控制器只能在時(shí)鐘打開(kāi)時(shí)運(yùn)行。在微型計(jì)算機(jī)內(nèi)部有一個(gè)時(shí)鐘電路,為了確定單片機(jī)的運(yùn)行速度,只需要一個(gè)外部振蕩器源就可以產(chǎn)生時(shí)鐘信號(hào)并將其發(fā)送到每個(gè)單元單片機(jī)。電路如圖2 所示。
圖2 外部振蕩源電路
一般來(lái)說(shuō),選擇石英晶體振蕩器。此部分電路使用的振蕩器在10ms 的導(dǎo)通延遲后開(kāi)始振動(dòng),振幅為3V 左右的正弦時(shí)鐘信號(hào)且該信號(hào)被放置在XTAL2 引腳上。振蕩頻率主要由晶體振蕩器的頻率決定。該電路有兩個(gè)電容器C1 和C2,一個(gè)用于振蕩振蕩器,另一個(gè)用于調(diào)整振蕩器的頻率。電路中微調(diào)電容C1、C2 的值均為22PF。
AT89C51 單片機(jī)有一個(gè)引腳RST,它作為施密特觸發(fā)器的輸入,其輸出位于復(fù)位電路的入口處,這個(gè)復(fù)位信號(hào)在高電平有效,其有效時(shí)間會(huì)持續(xù)24 個(gè)振蕩脈沖周期。
復(fù)位電路分為手動(dòng)復(fù)位和上電復(fù)位,它提供了兩種手動(dòng)復(fù)位模式:電平模式和脈沖模式。本設(shè)計(jì)采用手動(dòng)復(fù)位的電平復(fù)位,便于操作,如圖3 所示。
圖3 復(fù)位電路
在單片機(jī)應(yīng)用系統(tǒng)中,通常需要直觀(guān)、交互式地運(yùn)行系統(tǒng)及其結(jié)果,微控制器應(yīng)用系統(tǒng)中最常用的顯示器是LCD和LED,兩個(gè)顯示屏都可以顯示數(shù)字、字符和系統(tǒng)狀態(tài)。LED 和LCD 數(shù)字顯示器是最常見(jiàn)的,這種設(shè)計(jì)使用了更環(huán)保的4 位LED 顯示器,如圖4 所示。
圖4 共陰極數(shù)碼管顯示電路
聲音的頻譜大約有幾千個(gè)赫茲,如果單片機(jī)控制“高”或“低”電平的程序,則在口線(xiàn)上會(huì)產(chǎn)生特定頻率的方波,并且通過(guò)連接揚(yáng)聲器會(huì)產(chǎn)生特定頻率的環(huán)路?!案摺焙汀暗汀彪娖匠掷m(xù)時(shí)間由延遲程序控制,音調(diào)取決于輸出頻率,進(jìn)而揚(yáng)聲器可能會(huì)產(chǎn)生不同的音調(diào)。
圖5 中的蜂鳴器的一端連接到單片機(jī)的17 引腳RD,其輸出具有復(fù)雜的功能,并使用單片機(jī)RD 引腳的IO 端口功能,單片機(jī)提供交流波形輸出,該輸出將揚(yáng)聲器與內(nèi)置計(jì)時(shí)器結(jié)合在一起。
圖5 發(fā)聲電路
鍵盤(pán)是我們?cè)谑褂脝纹瑱C(jī)時(shí)必不可少的設(shè)備。通??梢酝ㄟ^(guò)相關(guān)文獻(xiàn)和書(shū)籍中描述的各種方式來(lái)使用該硬件電路中的鍵盤(pán)放置方式。從系統(tǒng)監(jiān)視軟件設(shè)計(jì)的角度來(lái)看,鍵盤(pán)掃描程序并不完整,鍵盤(pán)掃描僅僅完成了當(dāng)前鍵盤(pán)的掃描和狀態(tài)讀取。它還有許多問(wèn)題要解決,除了在操作鍵盤(pán)時(shí),人們很容易誤用和控制。在單片機(jī)應(yīng)用中最常見(jiàn)的應(yīng)用形式分為獨(dú)立鍵盤(pán)和矩陣鍵盤(pán)兩種。
它們各具特色,其中獨(dú)立鍵盤(pán)的硬軟件切換容易,編程方便簡(jiǎn)潔,通常用于對(duì)硬件電路要求不高的簡(jiǎn)單電路中。矩陣鍵盤(pán)與獨(dú)立鍵盤(pán)差異較大,首先,在硬件電路上,它的程序算法比獨(dú)立鍵盤(pán)更加復(fù)雜,但它具有節(jié)省端口資源的優(yōu)點(diǎn),適用于多按鍵電路。其次,在按下按鈕的過(guò)程中容易出現(xiàn)“毛刺”現(xiàn)象,在此采用延時(shí)重復(fù)掃描法對(duì)其進(jìn)行消除,該方法的原理是:由于“毛刺”脈沖通常持續(xù)時(shí)間短暫,約為幾毫秒,而且按下按鈕的時(shí)間通常比這個(gè)時(shí)間更長(zhǎng)。因此,如果微控制器在一定時(shí)間段(通常為10ms)內(nèi)檢測(cè)到按鈕的運(yùn)動(dòng),它將評(píng)估電平是否保持其原始狀態(tài)。如果是則該按鈕有效,否則無(wú)效。
本設(shè)計(jì)使用的是單獨(dú)鍵盤(pán),主要分為搶答選手響應(yīng)鍵(8 人按鍵)的輸入電路和主持人按鍵輸入電路(開(kāi)始鍵和結(jié)束鍵)。選手搶答按鍵輸入電路如圖6 所示。
八個(gè)響應(yīng)鍵K1~K8 連接到單片機(jī)的P1.0~P1.7,并且微計(jì)算機(jī)識(shí)別P1.0~P1.7 的值,確定是八個(gè)搶答鍵中哪一個(gè)按鍵輸入。
主持人控制(開(kāi)始、復(fù)位鍵)電路如圖7 所示。
圖6 選手搶答按鍵輸入電路
開(kāi)始鍵和結(jié)束鍵分別與微型計(jì)算機(jī)的10 腳和12 腳連接,此處用到了單片機(jī)的10 腳、12 腳RXD 和INT0 的IO端口功能,然后讀取引腳10 和12 的P3.0 和P3.2 的IO 端口值,以查看它們當(dāng)前是處于搶答響應(yīng)還是結(jié)束狀態(tài)。
本設(shè)計(jì)是采用單片機(jī)設(shè)計(jì)的8 路多功能電子搶答器,這個(gè)搶答器具有搶答功能和控制回答問(wèn)題時(shí)間等功能。它利用了單片機(jī)系統(tǒng)的特點(diǎn),結(jié)構(gòu)簡(jiǎn)單,功能強(qiáng)大,可靠性和功能性強(qiáng)。
圖7 主持人控制電路