




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、多路搶答器的設(shè)計(jì)與實(shí)現(xiàn) 摘要 本設(shè)計(jì)是以八路搶答為基本理念,考慮到因活動(dòng)規(guī)則的改變,需設(shè)定不同時(shí)長(zhǎng)的限時(shí)搶答、回答問(wèn)題的功能。利用stc89c52單片機(jī)及外圍接口實(shí)現(xiàn)的搶答系統(tǒng),以及單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和記數(shù)的原理,將軟、硬件有機(jī)地結(jié)合起來(lái),使得系統(tǒng)能夠設(shè)定不同的搶答時(shí)間和答題時(shí)間,能夠正確地進(jìn)行倒計(jì)時(shí),同時(shí)使數(shù)碼管能夠正確地顯示時(shí)間以及選手編號(hào)。用矩陣鍵盤進(jìn)行活動(dòng)前的時(shí)間設(shè)定工作,用開(kāi)關(guān)作為選手搶答按鈕輸出,用蜂鳴器來(lái)發(fā)出違規(guī)報(bào)警和倒計(jì)時(shí)提醒。同時(shí)本設(shè)計(jì)系統(tǒng)能夠?qū)崿F(xiàn):在活動(dòng)中,只有主持人按下開(kāi)始搶答按鈕后,選手的搶答才為有效,如果選手在開(kāi)始搶答前搶答則為無(wú)效;搶答限定時(shí)間和回答問(wèn)題的限
2、定時(shí)間可在1-99s內(nèi)設(shè)定;可以顯示是哪位選手有效搶答和無(wú)效搶答;正確按鍵后有聲音提示;搶答時(shí)間和回答問(wèn)題時(shí)間用數(shù)碼管進(jìn)行倒計(jì)時(shí)顯示,滿時(shí)后系統(tǒng)計(jì)時(shí)自動(dòng)復(fù)位及主控強(qiáng)制復(fù)位;有按鍵鎖定,在有效狀態(tài)下,按鍵無(wú)效非法。關(guān)鍵詞 stc89c52單片機(jī) led數(shù)碼管 搶答器 計(jì)時(shí)design and implementation of the multi-channel respondertian pengfei(grade 07,class 084, shaanxi university of technology,hanzhong 72300x,shaanxi)tutor: hu boabstrac
3、t the design is based on eight responder as the basic concept, taking into account the changes in the activity rules need to set the time length limit responder, answer questions function. the responder system, stc89c52 microcontroller and peripheral interface implementation and timing microcontroll
4、er timer / counter and count the principle of software, hardware organically combined, making the system able to set a different answer in time and answer time, able to correctly to the countdown, digital tube able to correctly display the time and the player number. matrix keyboard work activities
5、before the time set switch as players answer in the button output, use the buzzer to issue the violation alarm and countdown to remind. the same time, the design system can be achieved: at the event, only moderators began to answer in the button is pressed, the players of the answer in order to effe
6、ctively, if the players before the start responder responder invalidity; a limited time to answer in a limited time and answer questions 1-99s setting; can show which players answer in an effective and invalid answer in; the right button a voice prompt; answer in time and answer questions time count
7、down display with digital tube, the full system time is automatically reset and master compulsory reset; keys are locked in an effective state, the button is not illegal.key words single-chip led digital tube responder timing畢業(yè)設(shè)計(jì)(論文)原創(chuàng)性聲明和使用授權(quán)說(shuō)明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設(shè)計(jì)(論文),是我個(gè)人在指導(dǎo)教師的指導(dǎo)下進(jìn)行的研究工作及取得的成果。盡我所
8、知,除文中特別加以標(biāo)注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過(guò)的研究成果,也不包含我為獲得 及其它教育機(jī)構(gòu)的學(xué)位或?qū)W歷而使用過(guò)的材料。對(duì)本研究提供過(guò)幫助和做出過(guò)貢獻(xiàn)的個(gè)人或集體,均已在文中作了明確的說(shuō)明并表示了謝意。作 者 簽 名: 日 期: 指導(dǎo)教師簽名: 日期: 使用授權(quán)說(shuō)明本人完全了解 大學(xué)關(guān)于收集、保存、使用畢業(yè)設(shè)計(jì)(論文)的規(guī)定,即:按照學(xué)校要求提交畢業(yè)設(shè)計(jì)(論文)的印刷本和電子版本;學(xué)校有權(quán)保存畢業(yè)設(shè)計(jì)(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務(wù);學(xué)??梢圆捎糜坝?、縮印、數(shù)字化或其它復(fù)制手段保存論文;在不以贏利為目的前提下,學(xué)校可以公布論文的部分或全部?jī)?nèi)容。作者簽名
9、: 日 期: 學(xué)位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導(dǎo)師的指導(dǎo)下獨(dú)立進(jìn)行研究所取得的研究成果。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫的成果作品。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本人完全意識(shí)到本聲明的法律后果由本人承擔(dān)。作者簽名: 日期: 年 月 日學(xué)位論文版權(quán)使用授權(quán)書(shū)本學(xué)位論文作者完全了解學(xué)校有關(guān)保留、使用學(xué)位論文的規(guī)定,同意學(xué)校保留并向國(guó)家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán) 大學(xué)可以將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保
10、存和匯編本學(xué)位論文。涉密論文按學(xué)校規(guī)定處理。作者簽名:日期: 年 月 日導(dǎo)師簽名: 日期: 年 月 日1 引言11.1 課題背景11.2 目的及意義11.3 搶答器的目前現(xiàn)狀11.4 進(jìn)度安排22 方案論證32.1 多路搶答器方案設(shè)計(jì)系統(tǒng)32.1.1 基于數(shù)字電路多路搶答器的設(shè)計(jì)32.1.2 基于單片機(jī)的多路智能搶答器32.2 方案論證及選擇43硬件電路的設(shè)計(jì)53.1 硬件電路設(shè)計(jì)思路53.2 總體設(shè)計(jì)框圖53.3 單片機(jī)系統(tǒng)63.3.1 單片機(jī)的選擇63.3.2 at89c52主要性能參數(shù)63.3.3 at89c52功能引腳說(shuō)明63.4 搶答器的系統(tǒng)概述83.4.1 系統(tǒng)的主要功能83.4.
11、2 搶答器的主要指標(biāo)93.4.3 搶答器的工作流程93.5 外圍電路的設(shè)計(jì)及分析103.5.1 復(fù)位電路的設(shè)計(jì)103.5.2 時(shí)鐘頻率電路的設(shè)計(jì)113.5.3 顯示電路的設(shè)計(jì)123.5.4 鍵盤掃描電路的設(shè)計(jì)123.5.5 聲音電路134 軟件設(shè)計(jì)144.1 軟件任務(wù)分析144.2 系統(tǒng)總流程圖144.3 各個(gè)模塊軟件設(shè)計(jì)與分析164.3.1 定時(shí)器/計(jì)數(shù)器t0、t1164.3.2 串口通信184.3.3 中斷控制204.3.4 鍵盤掃描204.4 相關(guān)仿真軟件的介紹214.4.1 proteus 7.5介紹214.4.2 keil uvision4 介紹234.4.3 proteus 7.5
12、與keil uvision4結(jié)合使用265 系統(tǒng)仿真與硬件調(diào)試及分析275.1 軟件調(diào)試275.2 硬件調(diào)試275.3 結(jié)果分析286 總結(jié)與展望296.1 本文小結(jié)296.2 心得體會(huì)29致 謝30參考文獻(xiàn)31附錄a:系統(tǒng)仿真圖32附錄b:系統(tǒng)實(shí)物圖33附錄c:元器件清單35附錄d:英文文獻(xiàn)36附錄e:源程序391 引言1.1 課題背景搶答器是一種應(yīng)用非常廣泛的設(shè)備,在各種競(jìng)賽、搶答場(chǎng)合中,它能迅速、客觀地分辨出最先獲得發(fā)言權(quán)的選手。早期的搶答器只由幾個(gè)三極管、可控硅、發(fā)光管等組成,能通過(guò)發(fā)光管的指示辯認(rèn)出選手號(hào)碼?,F(xiàn)在大多數(shù)搶答器均使用單片機(jī)(如mcs-51型)和數(shù)字集成電路,并增加了許多
13、新功能,如選手號(hào)碼顯示、搶按前或搶按后的計(jì)時(shí)、選手犯規(guī)顯示等功能。數(shù)字搶答器由主題電路與擴(kuò)展電路組成。優(yōu)先編碼電路、鎖存器、譯碼電路將參賽隊(duì)的輸入信號(hào)在數(shù)碼管上顯示,搶答器電路和主持人復(fù)位按鍵組成主體電路。通過(guò)定時(shí)電路將脈沖產(chǎn)生的信號(hào)在顯示器輸出實(shí)現(xiàn)計(jì)時(shí)功能,共同構(gòu)成擴(kuò)展電路。利用面包板經(jīng)過(guò)排版、布線、調(diào)試等工作后數(shù)字搶答器成形。數(shù)字搶答器是由很多電路組成的,線路復(fù)雜,可靠性不高,功能也比較難以實(shí)現(xiàn),特別是當(dāng)數(shù)字搶答路數(shù)很多時(shí),實(shí)現(xiàn)起來(lái)更為困難。目前市場(chǎng)上已有各種各樣的搶答器,但絕大多數(shù)是早期設(shè)計(jì)的,以模擬電路、數(shù)字電路或者模擬電路和數(shù)字電路結(jié)合的產(chǎn)品,這部分搶答器已相當(dāng)成熟,但功能越多的電路
14、越復(fù)雜,且成本也比較高,發(fā)生故障的可能性也比較高,傳統(tǒng)普通搶答器主要存在以下缺陷:傳統(tǒng)的搶答器都是導(dǎo)線布局,受現(xiàn)場(chǎng)環(huán)境影響很大;顯示方式簡(jiǎn)單,無(wú)法判斷提前搶按按鍵的行為,且不便于電路升級(jí)換代。在當(dāng)今計(jì)算機(jī)的普及和電子信息技術(shù)的迅猛發(fā)展下,對(duì)搶答器有了更高的要求,如何有效的保證許多公開(kāi)競(jìng)爭(zhēng)場(chǎng)合裁決的公平、公正,單片機(jī)搶答器為之提供了條件和發(fā)展空間,建立一個(gè)價(jià)格適宜、智能化、自動(dòng)化、數(shù)字化等特點(diǎn)的搶答器具有重要意義?;趩纹瑱C(jī)及外圍接口實(shí)現(xiàn)的搶答系統(tǒng),利用單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和記數(shù)的原理,將軟、硬件有機(jī)地結(jié)合起來(lái),使得系統(tǒng)能夠正確地進(jìn)行計(jì)時(shí),同時(shí)使數(shù)碼管能夠正確地顯示時(shí)間和選手號(hào)碼。除此之外
15、,還可以用鍵盤做輸入,寫入自己設(shè)置的時(shí)間,選手有效搶答還有燈管顯示。在搶答中,只有開(kāi)始后搶答才有效,如果在開(kāi)始搶答前搶答為無(wú)效;搶答限定時(shí)間和回答問(wèn)題的時(shí)間可是在1-99s設(shè)定;可以顯示是哪位選手有效搶答和無(wú)效搶答,正確按鍵后有音樂(lè)提示;搶答時(shí)間和回答問(wèn)題時(shí)間倒記時(shí)顯示,時(shí)間完后系統(tǒng)自動(dòng)復(fù)位;按鍵鎖定,在有效狀態(tài)下,按鍵無(wú)效非法。1.2 目的及意義通過(guò)本次畢業(yè)設(shè)計(jì),對(duì)課本上所學(xué)的理論知識(shí)加深和鞏固:進(jìn)一步熟悉和掌握基本理論在實(shí)踐中綜合運(yùn)用,進(jìn)一步熟悉和掌握單片機(jī)的基本知識(shí)、系統(tǒng)設(shè)計(jì)的基本方法及設(shè)計(jì)步驟,進(jìn)一步熟悉和掌握常用單片機(jī)模塊的設(shè)計(jì)和應(yīng)用。能夠熟練使用protues7.5等電子軟件,學(xué)會(huì)
16、運(yùn)用這些軟件進(jìn)行分析、設(shè)計(jì)和仿真電路。能夠熟練運(yùn)用keil uvision4軟件編寫相應(yīng)的程序模塊。學(xué)習(xí)單片機(jī)系統(tǒng)實(shí)物制作、調(diào)試、測(cè)試、故障查找和排除的方法及技巧。培養(yǎng)實(shí)踐技能,提高分析和解決實(shí)際問(wèn)題的能力。了解簡(jiǎn)單多路搶答器組成原理,初步掌握多路搶答器的調(diào)整及測(cè)試方法,提高動(dòng)手能力和排除故障的能力。同時(shí)通過(guò)本課題設(shè)計(jì)與裝配、調(diào)試,提高自己的動(dòng)手能力,鞏固已學(xué)的理論知識(shí), 能夠獨(dú)立地做完畢業(yè)設(shè)計(jì),通過(guò)畢業(yè)設(shè)計(jì)受到一次綜合運(yùn)用所學(xué)知識(shí)、理論和技能的訓(xùn)練。它使我們可以進(jìn)一步學(xué)會(huì)分析問(wèn)題、解決問(wèn)題;學(xué)會(huì)閱讀、翻譯參考文獻(xiàn);學(xué)會(huì)收集、運(yùn)用各種資料。它是對(duì)我們?cè)谛W(xué)習(xí)的一次全面檢驗(yàn)、總結(jié)和提高;是對(duì)我們
17、利用所學(xué)的理論知識(shí)解決實(shí)際工程問(wèn)題的綜合訓(xùn)練;是對(duì)提高我們的實(shí)踐動(dòng)手能力、創(chuàng)新思維能力具有不可替代的作用;也是對(duì)畢業(yè)及學(xué)位資格認(rèn)證的重要依據(jù)。因此,做好畢業(yè)設(shè)計(jì)(論文)將為我們由學(xué)習(xí)走入工作、由學(xué)校進(jìn)入社會(huì)打下良好的基礎(chǔ)。1.3 搶答器的目前現(xiàn)狀在現(xiàn)代社會(huì)中,各種教育活動(dòng)、娛樂(lè)節(jié)目比比皆是,而搶答器作為一種工具,它可以給予參賽者公平的答題機(jī)會(huì)和答題時(shí)間,已廣泛應(yīng)用于各種智力和知識(shí)競(jìng)賽場(chǎng)合。但大多數(shù)搶答器不但制作復(fù)雜、可靠性低,而且功能過(guò)于簡(jiǎn)單,僅適用于在單一規(guī)則的活動(dòng)中使用。作為一個(gè)單位,如果專門購(gòu)一臺(tái)搶答器在經(jīng)濟(jì)上還可以承受,然而由于活動(dòng)的多樣性,去購(gòu)買各種不同規(guī)格的搶答器,再購(gòu)置的麻煩和及
18、時(shí)性就會(huì)影響活動(dòng)的開(kāi)展。目前多數(shù)搶答器以下存在五方面不足之處:第一,現(xiàn)場(chǎng)線路連接復(fù)雜。因?yàn)槊總€(gè)選手位于搶答現(xiàn)場(chǎng)的不同位置,每個(gè)選手與控制臺(tái)之間要有長(zhǎng)長(zhǎng)的連接線。選手越多,連接線就越多、越亂,這些連接線不僅影響了現(xiàn)場(chǎng)的美觀,而且降低了搶答器的可靠性,增加了安裝的難度,甚至影響了現(xiàn)場(chǎng)人員的走動(dòng)。第二,電路復(fù)雜。因?yàn)閱纹瑱C(jī)只完成號(hào)碼處理、計(jì)時(shí)、數(shù)據(jù)運(yùn)算等功能,其它功能如選手號(hào)碼的識(shí)別、譯碼、計(jì)分顯示等仍只能通過(guò)數(shù)字集成電路完成。采用單片機(jī)掃描技術(shù)識(shí)別選手搶按號(hào)碼時(shí),電路的延遲時(shí)間較大。第三,系統(tǒng)性能不夠穩(wěn)定,有時(shí)會(huì)在選手搶按成功時(shí),出現(xiàn)沒(méi)有搶答被記錄的問(wèn)題。第四,目前市面上的搶答器只是大概判斷出搶答
19、成功或犯規(guī)選手臺(tái)號(hào),無(wú)法顯示出每個(gè)選手搶答所用的時(shí)間。第五,搶答器中的搶答模式單一、不靈活,在所有場(chǎng)合只能用相同搶答時(shí)間和答題時(shí)間。1.4 進(jìn)度安排本次設(shè)計(jì)主要分以下幾個(gè)階段完成:1、 前期準(zhǔn)備階段,收集資料,整理資料,設(shè)計(jì)課題的總體方案,完成開(kāi)題報(bào)告;2、 根據(jù)總體方案設(shè)計(jì),細(xì)化各模塊,完成各個(gè)模塊的設(shè)計(jì);3、 學(xué)習(xí)單片機(jī)的編程,完成硬件仿真電路的調(diào)試;4、 制作實(shí)物電路,完成調(diào)試硬件實(shí)物電路;5、 整理資料,完成畢業(yè)論文的書(shū)寫,準(zhǔn)備答辯。2 方案論證2.1 多路搶答器方案設(shè)計(jì)系統(tǒng)2.1.1 基于數(shù)字電路多路搶答器的設(shè)計(jì)如圖2.1所示為該方案系統(tǒng)總體方框圖。其工作原理為:接通電源后,主持人將
20、開(kāi)關(guān)撥到“清除”狀態(tài),搶答器處于禁止?fàn)顟B(tài),編號(hào)顯示器滅燈,定時(shí)器顯示設(shè)定時(shí)間;主持人將開(kāi)關(guān)置于“開(kāi)始”狀態(tài),宣布“開(kāi)始”搶答器工作。定時(shí)器倒計(jì)時(shí),揚(yáng)聲器給出聲響提示。選手在定時(shí)時(shí)間內(nèi)搶答時(shí),搶答器完成:優(yōu)先判斷、編號(hào)鎖存、編號(hào)顯示、揚(yáng)聲器提示。當(dāng)一輪搶答之后,定時(shí)器停止、禁止二次搶答、定時(shí)器顯示剩余時(shí)間。如果再次搶答必須由主持人再次操作“清除”和“開(kāi)始”狀態(tài)開(kāi)關(guān)。搶答按鈕優(yōu)先編碼電路鎖存器譯碼電路譯碼顯示主持人控制開(kāi)關(guān)控制電路報(bào)警電路秒脈沖產(chǎn)生電路定時(shí)電路譯碼電路顯示電路主體電路擴(kuò)展電路圖2.1 基于數(shù)字電路的系統(tǒng)框架2.1.2 基于單片機(jī)的多路智能搶答器如圖2.2所示為該方案系統(tǒng)總體方框圖。
21、其工作原理為:主持人在活動(dòng)前,通過(guò)鍵盤輸入電路,預(yù)設(shè)搶答時(shí)間和答題時(shí)間。在活動(dòng)中,主持人先按下“開(kāi)始搶答”按鈕,各位選手就可以通過(guò)搶答輸入電路進(jìn)行搶答,搶答成功后,顯示電路會(huì)顯示出成功搶答選手臺(tái)號(hào)。然后,主持人再按下“開(kāi)始答題”按鈕,數(shù)碼管顯示答題倒計(jì)時(shí),各位選手答完題以后,按下“停止”按鈕,倒計(jì)時(shí)停止。如果要再次搶答,主持人可以按下“搶答復(fù)位”按鈕,就可以繼續(xù)開(kāi)始搶答。如果需要重新設(shè)置搶答時(shí)間和答題時(shí)間,主持人可以按下“總復(fù)位”按鈕,就可以重置時(shí)間。stc89c51單片機(jī)四位七段數(shù)碼管顯示聲音電路=8路搶答按鍵輸入復(fù)位電路時(shí)間預(yù)設(shè)、開(kāi)始、結(jié)束鍵盤輸入時(shí)鐘電路圖2.2 基于單片機(jī)的系統(tǒng)框架2.
22、2 方案論證及選擇對(duì)兩個(gè)方案進(jìn)行比較,可以發(fā)現(xiàn)以下幾點(diǎn):第一,電路連線方面。方案一在實(shí)際應(yīng)用時(shí)連接線較多,看起來(lái)比較繁瑣不但影響電路美觀,而且影響增加了安裝的難度。方案二則連線簡(jiǎn)單,出現(xiàn)問(wèn)題也方便檢修和排查。第二,系統(tǒng)性能。方案一是用數(shù)字電路完成對(duì)選手號(hào)碼的識(shí)別、譯碼、計(jì)分顯示系統(tǒng)性能不夠穩(wěn)定,搶答器可靠性較低,容易出現(xiàn)失誤。方案二則使用單片機(jī)完成號(hào)碼處理、計(jì)時(shí)、數(shù)據(jù)運(yùn)算等功能,由于所有程序都已燒錄在單片機(jī)內(nèi)部,所有處理是按照程序進(jìn)行,不易出現(xiàn)失誤,系統(tǒng)性能相對(duì)穩(wěn)定,搶答器可靠性較高。第三,公平性方面。方案一中的搶答器只是大概判斷出搶答成功或犯規(guī)選手臺(tái)號(hào),無(wú)法顯示出每個(gè)選手搶答所用的時(shí)間,會(huì)導(dǎo)
23、致選手猜測(cè)比賽的公平性,容易引起活動(dòng)騷亂。方案二中的搶答器不但能判斷出搶答成功或犯規(guī)選手臺(tái)號(hào),而且顯示出每個(gè)選手搶答所用的時(shí)間,讓所有選手清晰看到自己的搶答所用時(shí)間,用直觀的實(shí)際數(shù)據(jù)證明比賽的公平性。第四,實(shí)用性方面。方案一中的搶答器搶答模式單一、不靈活,在所有場(chǎng)合只能用相同搶答時(shí)間和答題時(shí)間。方案二中的搶答器則可以自由設(shè)置搶答時(shí)間和答題時(shí)間,適用于多種規(guī)則的活動(dòng)中,不但節(jié)省經(jīng)費(fèi),而且免去重新購(gòu)置搶答器的麻煩。綜上所述,可以看出方案二較方案一更簡(jiǎn)便實(shí)用,因此,我們決定采用方案二做為這次畢業(yè)設(shè)計(jì)的最終方案。3硬件電路的設(shè)計(jì)3.1 硬件電路設(shè)計(jì)思路基于單片機(jī)的多路搶答器系統(tǒng)主要分為幾個(gè)模塊:?jiǎn)纹瑱C(jī)
24、最小系統(tǒng)模塊、鍵盤控制模塊、數(shù)碼顯示模塊、聲音電路模塊。單片機(jī)最小系統(tǒng)主要由復(fù)位電路和時(shí)鐘電路組成。復(fù)位電路為單片機(jī)系統(tǒng)提供可靠復(fù)位,使單片機(jī)能正常啟動(dòng)。時(shí)鐘電路采用外部時(shí)鐘方式,保證單片機(jī)個(gè)功能部件都是以時(shí)鐘頻率為基準(zhǔn),有條不紊地一拍一拍地工作。鍵盤控制模塊包括搶答時(shí)間和答題時(shí)間輸入鍵、主持人控制開(kāi)始搶答按鍵和答題按鍵、主持人復(fù)位按鍵、選手搶答按鍵和選手答題完畢停止按鍵,其中搶答時(shí)間和答題時(shí)間輸入鍵、主持人控制開(kāi)始搶答按鍵和答題按鍵、主持人復(fù)位按鍵是由一個(gè)4*4矩陣鍵盤來(lái)實(shí)現(xiàn)的,接在主單片機(jī)的p1口;選手搶答按鍵和選手答題完畢停止按鍵分別接在兩個(gè)從單片機(jī)中,均對(duì)應(yīng)接在單片機(jī)的p1口,用來(lái)?yè)尨?/p>
25、和答完題的停止。數(shù)碼管顯示模塊選用了一個(gè)四位一體的共陰數(shù)碼管和四個(gè)獨(dú)立的共陰數(shù)碼管,其中四位一體共陰數(shù)碼管接在主單片機(jī)上,用以選手號(hào)和倒計(jì)時(shí)的顯示,其中位碼分別接在p2口的第四位,斷碼分別接在p0口;四個(gè)獨(dú)立數(shù)碼管分別接在兩個(gè)從單片機(jī)上,用以顯示答題過(guò)程中的時(shí)間提醒。斷碼接在p0口,位碼接在p2口的地位。聲音電路模塊選用了常用的蜂鳴器,正極接在高電平,負(fù)極接在主單片機(jī)的p3.7,用以提示操作中的警示或者提示。3.2 總體設(shè)計(jì)框圖stc89c51單片機(jī)四位七段數(shù)碼管顯示聲音電路8路搶答按鍵輸入復(fù)位電路 時(shí)間預(yù)設(shè)、開(kāi)始、結(jié)束鍵盤輸入時(shí)鐘電路stc89c51單片機(jī)stc89c51單片機(jī)復(fù)位電路復(fù)位電
26、路時(shí)鐘電路時(shí)鐘電路圖3.1 總體設(shè)計(jì)框圖具體說(shuō)明如下:1.單片機(jī)接收4*4矩陣鍵盤信息,預(yù)設(shè)搶答時(shí)間和答題時(shí)間,主持人控制開(kāi)始與結(jié)束,確定是否為有效答題。2.單片機(jī)與單片機(jī)之間互相通信,發(fā)送主單片機(jī)預(yù)設(shè)的答題時(shí)間,并確定選手號(hào)。3.主單片機(jī)根據(jù)選手是否有效搶答來(lái)控制數(shù)碼管顯示。4.主單片機(jī)根據(jù)選手是否犯規(guī),或者其他提示控制聲音電路發(fā)出聲響。3.3 單片機(jī)系統(tǒng)3.3.1 單片機(jī)的選擇本設(shè)計(jì)分為硬件設(shè)計(jì)和軟件設(shè)計(jì),這兩者相互結(jié)合,不可分離;從時(shí)間上看,硬件設(shè)計(jì)的絕大部分工作量是在最初階段,到后期往往還要做一些修改。只要技術(shù)準(zhǔn)備充分,硬件設(shè)計(jì)的大返工是比較少的,軟件設(shè)計(jì)的任務(wù)貫徹始終,到中后期基本上
27、都是軟件設(shè)計(jì)任務(wù),隨著集成電路技術(shù)的飛速發(fā)展,各種功能很強(qiáng)的芯片不斷出現(xiàn),使硬件電路的集成度越來(lái)越高,硬件設(shè)計(jì)的工作量在整個(gè)項(xiàng)目中的所占的比重逐漸下降。為使硬件電路設(shè)計(jì)盡可能合理,應(yīng)注意以下幾方面7:(1) 盡可能采用功能強(qiáng)的芯片,以簡(jiǎn)化電路,功能強(qiáng)的芯片可以代替若干普通芯片,隨著生產(chǎn)工藝的提高,新型芯片的的價(jià)格不斷下降,并不一定比若干普通芯片價(jià)格的總和高。(2) 留有設(shè)計(jì)余地。在設(shè)計(jì)硬件電路時(shí),要考慮到將來(lái)修改擴(kuò)展的方便。因?yàn)楹苌儆幸诲N定音的電路設(shè)計(jì),如果現(xiàn)在不留余地,將來(lái)可能要為一點(diǎn)小小的修改或擴(kuò)展而被迫進(jìn)行全面返工。(3) 程序空間,選用片內(nèi)程序空間足夠大的單片機(jī),本設(shè)計(jì)采用at89c5
28、1單片機(jī)。(4) ram空間,at89c51內(nèi)部ram不多,當(dāng)要增強(qiáng)軟件數(shù)據(jù)處理功能時(shí),往往覺(jué)得不足。如果系統(tǒng)配置了外部ram,則建議多留一些空間。如選用8155作i/o接口,就可以增強(qiáng)256字節(jié)ram。如果有大批數(shù)據(jù)需要處理,則應(yīng)配置足夠的ram,如6264,62256等。隨著軟件設(shè)計(jì)水平的提高,往往只要改變或增加軟件中的數(shù)據(jù)處理算法,就可以使系統(tǒng)功能提高很多,而系統(tǒng)的硬件不必做任何更換就使系統(tǒng)升級(jí)換代。只要在硬件電路設(shè)計(jì)初期考慮到這一點(diǎn),就應(yīng)該為系統(tǒng)將來(lái)升級(jí)留足夠的ram空間,哪怕多設(shè)計(jì)一個(gè)ram的插座,暫不插芯片也好。(5) i/o端口:在樣機(jī)研制出來(lái)后進(jìn)行現(xiàn)場(chǎng)試用時(shí),往往會(huì)發(fā)現(xiàn)一些被忽
29、視的問(wèn)題,而這些問(wèn)題不是靠單純的軟件措施來(lái)解決的。如有些新的信號(hào)需要采集,就必須增加輸入檢測(cè)端;有些物理量需要控制,就必須增加輸出端。如果在硬件電路設(shè)計(jì)就預(yù)留出一些i/o端口,雖然當(dāng)時(shí)空著沒(méi)用,那么用的時(shí)候就派上用場(chǎng)了。3.3.2 at89c52主要性能參數(shù)at89c52型單片機(jī)的性能與at89c51、stc89c52的性能基本相似,at89c52是美國(guó)at公司生產(chǎn)的低電壓,高性能的單片機(jī)。該器件采用at高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的mcs-51指令集和輸出管腳相兼容。由于將多功能8位cpu和閃爍存儲(chǔ)器組合在單個(gè)芯片中,at的89c52是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供
30、了一種靈活性高且價(jià)廉的方案。 此外,它集flash程序存儲(chǔ)器可在線編程(isp)也可用傳統(tǒng)方法進(jìn)行編程及通用8位微處理器于單片芯片中,at公司的功能強(qiáng)大,低價(jià)位at89c52單片機(jī)可提供許多高價(jià)位比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。3.3.3 at89c52功能引腳說(shuō)明40個(gè)引腳按引腳功能大致可以分為4個(gè)種類:電源、時(shí)鐘、控制和i/o口引腳。下面就設(shè)計(jì)中所用到的引腳功能做以介紹。電源:(1)vcc:芯片電源,接+5v. (2) vss:接地端。時(shí)鐘:xtal1、xtal2:晶體振蕩電路反相輸入端和輸出端。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件
31、,xtal2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。在外接晶體時(shí),xtal1與xtal2各接晶體的一端借外接晶體與片內(nèi)反相放大器構(gòu)成震蕩器??刂凭€:控制線共有4根ale/prog:地址鎖存允許/片內(nèi)eprom編程脈沖,連接時(shí)接高電平。psen:外rom讀選通信號(hào)。rst/vpd:復(fù)位/備用電源。 ea/vpp: 內(nèi)外rom選擇/片內(nèi)eprom編程電源。i/o線:at89c52共有4個(gè)8位并行i/o端口:p0、p1、p2、p3口,共32個(gè)引腳。po口是一組8位漏極開(kāi)路行雙向i/o口,也是地址/數(shù)據(jù)總線復(fù)用口。p
32、1口是一個(gè)內(nèi)部具有上拉電阻的8位雙向i/o口,p1的輸入緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)ttl邏輯門電路。對(duì)端口寫“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸出口。作輸入口時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)輸出一個(gè)電流(i)。flash編程和程序校驗(yàn)期間,p1口接收8位地址。p2口是一個(gè)帶有內(nèi)部上拉電阻的8位雙向i/o口,p2的輸入緩沖極可以驅(qū)動(dòng)(輸入或輸出電流)4個(gè)ttl邏輯門電路。對(duì)端口“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作為輸入口,作輸入口時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流。p3口是一組帶有內(nèi)部上拉電阻的8位雙向i/
33、o口,p3的輸入緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)ttl邏輯門電路。對(duì)p3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸出端口。作輸出端口時(shí),被外部拉低的p3口將用上拉電阻輸出電流。p3口除可作為一般的i/o口線外,更重要的用途是它的第二功能。表3.1 p3口第二功能表引腳第二功能p3.0rxd 串行口輸入端p3.1txd 串行口輸出端p3.2 int0 外部中斷0請(qǐng)求輸入端,低電平有效p3.3 int1 外部中斷1請(qǐng)求輸入端,低電平有效p3.4 t0 定時(shí)/計(jì)數(shù)器0計(jì)數(shù)脈沖輸入端p3.5 t1 定時(shí)/計(jì)數(shù)器1計(jì)數(shù)脈沖輸入端p3.6 wr 外部數(shù)據(jù)存儲(chǔ)器寫選通信號(hào)輸出端,低電平有效p3.7
34、rd 外部數(shù)據(jù)存儲(chǔ)器讀選通信號(hào)輸出端,低電平有效圖2.4中單片機(jī)為at89c51,k1k8分別為8路搶答按鍵,分別接到單片機(jī)的p1.0p1.7中。開(kāi)始按鍵與結(jié)束按鍵分別接到單片機(jī)的24、25腳,由于單片機(jī)的10、11腳既有串行接口rxd、txd功能,又有p3.0、p3.1的io端口功能,此處按鍵用到單片機(jī)10、11腳的d第二功能。10個(gè)led燈分別對(duì)應(yīng)八位選手及準(zhǔn)備開(kāi)始和開(kāi)始搶答。4位七段數(shù)碼管段選p0口。4位七段數(shù)碼管的位選接p2口低3位,蜂鳴器輸出為p3.7口。圖3.2 系統(tǒng)總體硬件設(shè)計(jì)圖3.4 搶答器的系統(tǒng)概述3.4.1 系統(tǒng)的主要功能本設(shè)計(jì)系統(tǒng)是,采用模塊化設(shè)計(jì)的八路搶答器,主要包括顯
35、示電路部分、時(shí)間預(yù)設(shè)和開(kāi)始結(jié)束鍵盤輸入電路部分、復(fù)位電路部分、報(bào)警提示電路部分等。在參賽者系統(tǒng)中,選手除享有基本搶答按鈕的功能外,還有人性化的聲音提示功能和時(shí)間提示功能,也可設(shè)定由主控控制在參賽者終端表現(xiàn)的趣味性功能等;在主控系統(tǒng)中,主辦方除享有基本開(kāi)始與結(jié)束按鈕的功能外,還可根據(jù)活動(dòng)要求,預(yù)設(shè)搶答時(shí)間和答題時(shí)間,并且對(duì)選手回答問(wèn)題的正誤可以進(jìn)行亮燈警示。此外,本設(shè)計(jì)系統(tǒng)可以顯示搶答成功和違規(guī)的選手臺(tái)號(hào),對(duì)搶答限時(shí)及回答問(wèn)題限時(shí)設(shè)為倒計(jì)時(shí),并有顯示提示及聲音提示。系統(tǒng)的主要功能模塊方框圖如上圖2所示。在本設(shè)計(jì)中,各組選手分別有一個(gè)搶答按鈕和一個(gè)答題完畢按鈕,其中用8個(gè)按鍵輸入、8個(gè)按鍵停止來(lái)表
36、示,另用8個(gè)led燈,分別對(duì)應(yīng)8組選手。主持人有開(kāi)始搶答和開(kāi)始答題鍵。在活動(dòng)開(kāi)始前,主持人可以預(yù)設(shè)搶答時(shí)間和選手答題的時(shí)間,通過(guò)鍵盤依次輸入搶答時(shí)間和選手答題的時(shí)間,設(shè)置好后在搶答和答題過(guò)程中時(shí)間不能更改。主持人按下開(kāi)始搶答按鈕后,數(shù)碼顯示屏顯示搶答時(shí)間倒計(jì)時(shí),并在最后五秒蜂鳴器發(fā)出聲音提示,在搶答時(shí)間范圍內(nèi),選手的搶答才為有效,當(dāng)搶答成功后,數(shù)碼顯示屏顯示出成功搶答的選手臺(tái)號(hào)。如果主持人沒(méi)有按下開(kāi)始搶答按鈕,而選手就已搶答則視為犯規(guī),數(shù)碼顯示屏顯示出犯規(guī)者的臺(tái)號(hào),蜂鳴器發(fā)聲報(bào)警。當(dāng)搶答完成后,主持人按下開(kāi)始答題按鈕,數(shù)碼顯示屏顯示出答題倒計(jì)時(shí),與此同時(shí)成功搶答的選手則開(kāi)始答題,答題完后該選手
37、可按下答題完畢按鈕,并有蜂鳴器發(fā)出提示聲音。當(dāng)答題完成后,主持人可按下?lián)尨饛?fù)位按鈕,新一輪搶答開(kāi)始(注:此時(shí)的搶答時(shí)間和選手答題時(shí)間仍為上一輪所預(yù)設(shè)的,若需在此輪比賽中重新更改預(yù)設(shè)時(shí)間,則需按下總復(fù)位按鈕)。本設(shè)計(jì)系統(tǒng)中,有一個(gè)共陰的數(shù)碼管組,四個(gè)數(shù)碼管。其中一個(gè)空位,一個(gè)顯示搶答選手臺(tái)號(hào),另外兩個(gè)顯示倒計(jì)時(shí)。主持人開(kāi)始搶答按鈕后,各位選手才能開(kāi)始搶答。當(dāng)然,也可以搶按,但是會(huì)視為無(wú)效搶答。當(dāng)搶答超過(guò)規(guī)定時(shí)間或答題超過(guò)規(guī)定時(shí)間后數(shù)碼管顯示“000”。若有選手在規(guī)定時(shí)間內(nèi)搶按成功,則可以答題,數(shù)碼管顯示搶答時(shí)間的同時(shí)也顯示成功搶答的選手臺(tái)號(hào)。在按開(kāi)始搶答按鈕前搶答則表示犯規(guī),數(shù)碼管顯示“00”并
38、顯示犯規(guī)選手臺(tái)號(hào)。3.4.2 搶答器的主要指標(biāo)1、主持人在搶答之前能夠預(yù)設(shè)搶答時(shí)間和答題時(shí)間,時(shí)間由集成鍵盤輸入,可在199s之間任意設(shè)置,預(yù)設(shè)好時(shí)間后,在搶答和答題過(guò)程中不能再更改時(shí)間。如需更改時(shí)間需要按下總復(fù)位開(kāi)關(guān)來(lái)重新設(shè)置。2、主持人按下?lián)尨痖_(kāi)始按鈕,會(huì)有提示音,并立刻進(jìn)入搶答倒計(jì)時(shí)(搶答時(shí)間),如有選手搶答,會(huì)有提示音,并會(huì)顯示其臺(tái)號(hào),待主持人按下“開(kāi)始答題”按鍵后,方可進(jìn)入回答倒計(jì)時(shí)(搶答時(shí)間),不進(jìn)行搶答查詢,所以只有第一個(gè)按搶答的選手有效。時(shí)間每隔5s蜂鳴器會(huì)響一下提示音。3、在倒計(jì)時(shí)期間,如果主持人想停止倒計(jì)時(shí),可以按“停止”按鈕,系統(tǒng)會(huì)自動(dòng)進(jìn)入準(zhǔn)備狀態(tài),等待主持人按“開(kāi)始搶答
39、”進(jìn)入下次搶答計(jì)時(shí)。4、如果主持人未按下“開(kāi)始搶答”按鈕,而有人按了搶答按鈕,則為犯規(guī)搶答,數(shù)碼管顯示犯規(guī)臺(tái)號(hào)并伴有提示音,直到按下“停止”按鈕為止。綜上,本課題利用stc89c51單片機(jī)及外圍接口設(shè)計(jì)實(shí)現(xiàn)了搶答器,該搶答器增加了新功能、提高了系統(tǒng)的可靠性、簡(jiǎn)化了電路結(jié)構(gòu)、節(jié)約了成本,是一個(gè)實(shí)用的工程設(shè)計(jì)。3.4.3 搶答器的工作流程在搶答器的基本工作原理:在搶答競(jìng)賽或呼叫時(shí),有多個(gè)信號(hào)同時(shí)或不同時(shí)送入主電路中,搶答器內(nèi)部的寄存器工作,并識(shí)別、記錄第一個(gè)號(hào)碼,同時(shí)內(nèi)部的定時(shí)器開(kāi)始工作,記錄有關(guān)時(shí)間并產(chǎn)生超時(shí)信號(hào)。在整個(gè)搶答器工作過(guò)程中,顯示電路、聲音電路等還要根據(jù)現(xiàn)場(chǎng)的實(shí)際情況向外電路輸出相應(yīng)
40、信號(hào)。搶答器的工作流程分為:系統(tǒng)復(fù)位、正常流程、違例流程等幾部分,如圖2.6所示,下面分別予以介紹。加載程序運(yùn) 行行開(kāi)始開(kāi)始數(shù)碼管顯示000開(kāi)始預(yù)設(shè)搶答和答題時(shí)間開(kāi)始前有選手搶按顯示違例選手號(hào)碼并伴有語(yǔ)音報(bào)警倒計(jì)時(shí)結(jié)束,超時(shí)有選手搶按顯示000顯示選手號(hào)碼,倒計(jì)時(shí)時(shí)間,語(yǔ)音報(bào)警,答題,答題時(shí)間倒計(jì)時(shí)正常流程違規(guī)流程若超過(guò)答題時(shí)間,則數(shù)碼管顯示000答題完畢系統(tǒng)復(fù)位圖3.3 系統(tǒng)工作流程圖3.5 外圍電路的設(shè)計(jì)及分析3.5.1 復(fù)位電路的設(shè)計(jì)單片機(jī)的第9腳rst為硬件復(fù)位端,只要將該端持續(xù)4個(gè)機(jī)器周期的高電平即可實(shí)現(xiàn)復(fù)位,復(fù)位后單片機(jī)的各狀態(tài)都恢復(fù)到初始化狀態(tài),其電路圖如圖8所示:圖3.4 系統(tǒng)
41、總復(fù)位圖3.4中由按鍵reset1以及電解電容c3、電阻r15構(gòu)成按鍵及上電復(fù)位電路。由于單片機(jī)是高電平復(fù)位,所以當(dāng)按鍵reset1按下時(shí)候,單片機(jī)的9腳reset管腳處于高電平,此時(shí)單片機(jī)處于復(fù)位狀態(tài)。當(dāng)上電后,由于電容的緩慢充電,單片機(jī)的9腳電壓逐步由高向低轉(zhuǎn)化,經(jīng)過(guò)一段時(shí)間后,單片機(jī)的9腳處于穩(wěn)定的低電平狀態(tài),此時(shí)單片機(jī)上電復(fù)位完畢,系統(tǒng)程序從000h開(kāi)始執(zhí)行。值得注意的是,在設(shè)計(jì)當(dāng)中使用到了硬件復(fù)位和軟件復(fù)位兩種功能,由上面的硬件復(fù)位后的各狀態(tài)可知寄存器及存儲(chǔ)器的值都恢復(fù)到了初始值,而前面的功能介紹中提到了倒計(jì)時(shí)時(shí)間的記憶功能,該功能的實(shí)現(xiàn)的前提條件就是不能對(duì)單片機(jī)進(jìn)行硬件復(fù)位,所以設(shè)
42、定了軟復(fù)位功能。軟復(fù)位實(shí)際上就是當(dāng)程序執(zhí)行完畢之后,將程序指針通過(guò)一條跳轉(zhuǎn)指令讓它跳轉(zhuǎn)到程序執(zhí)行的起始地址。3.5.2 時(shí)鐘頻率電路的設(shè)計(jì)單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作。在單片機(jī)內(nèi)部有一個(gè)時(shí)鐘振蕩電路,只需要外接一個(gè)振蕩源就能產(chǎn)生一定的時(shí)鐘信號(hào)送到單片機(jī)內(nèi)部的各個(gè)單元,決定單片機(jī)的工作速度。時(shí)鐘電路如圖3.5所示。圖3.5 單片機(jī)外部震蕩電路一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在xtal2引腳產(chǎn)生幅度為3v左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要由石英晶振的頻率確定。電路中兩個(gè)電容 c1,c2的作用有兩個(gè):一是幫助振蕩器起振;二是對(duì)振蕩器的頻率進(jìn)行微調(diào)。c1,c2的
43、典型值為30pf。單片機(jī)在工作時(shí),由內(nèi)部振蕩器產(chǎn)生或由外直接輸入的送至內(nèi)部控制邏輯單元的時(shí)鐘信號(hào)的周期稱為時(shí)鐘周期。其大小是時(shí)鐘信號(hào)頻率的倒數(shù),常用fosc表示。圖中時(shí)鐘頻率為6mhz,即fosc=6mhz,則時(shí)鐘周期為1/6s。3.5.3 顯示電路的設(shè)計(jì)顯示功能與硬件關(guān)系極大,當(dāng)硬件固定后,如何在不引起操作者誤解的前提下提供盡可能豐富的信息,全靠軟件來(lái)解決。在這里我們使用的是七段數(shù)碼管顯示,通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動(dòng)態(tài)顯示。其中靜態(tài)顯示的特點(diǎn)是顯示穩(wěn)定不閃爍,程序編寫簡(jiǎn)單,但占用端口資源多;動(dòng)態(tài)顯示的特點(diǎn)是顯示穩(wěn)定性沒(méi)靜態(tài)好,程序編寫復(fù)雜,但是相對(duì)靜態(tài)顯
44、示而言占用端口資源少。在本設(shè)計(jì)中根據(jù)實(shí)際情況采用的是動(dòng)態(tài)顯示方法。4位七段數(shù)碼管顯示電路如圖3.6所示。圖3.6 四位一體共陰數(shù)碼管圖3.6中數(shù)碼管采用的是4位七段共陰數(shù)碼管,其中ah段分別接到單片機(jī)的p0口,由單片機(jī)輸出的p0口數(shù)據(jù)來(lái)決定段碼值,位選碼com1、com3、com4分別接到單片機(jī)的p2.0、p2.1、p2.2,由單片機(jī)來(lái)決定當(dāng)前該顯示的是哪一位。在圖中還有八個(gè)1k的電阻,連接在p0口上,用作p0口的上拉電阻,保證p0口沒(méi)有數(shù)據(jù)輸出時(shí)候處于高電平狀態(tài)。4位一體數(shù)碼管,其內(nèi)部段已連接好,引腳如圖8所示:a、b、c、d、e、f、g、dp為段引腳,1、2、3、4分別表示四個(gè)數(shù)碼管的位。
45、即:12-9-8-6為公共端,a-11 b-7 c-4 d-2 e-1 f-10 g-5 dp-33.5.4 鍵盤掃描電路的設(shè)計(jì)鍵盤是人與單片機(jī)打交道的主要設(shè)備。關(guān)于鍵盤硬件電路的設(shè)計(jì)方法也可以在文獻(xiàn)和書(shū)籍中找到,配合各種不同的硬件電路,這些書(shū)籍中一般也提供了相應(yīng)的鍵盤掃描程序。站在系統(tǒng)監(jiān)控軟件設(shè)計(jì)的立場(chǎng)上來(lái)看,僅僅完成鍵盤掃描,讀取當(dāng)前時(shí)刻的鍵盤狀態(tài)是不夠的,還有不少問(wèn)題需要妥善解決,否則,人們?cè)诓僮麈I盤就容易引起誤操作和操作失控現(xiàn)象。在單片機(jī)應(yīng)用中鍵盤用得最多的形式是獨(dú)立鍵盤及矩陣鍵盤。他們各有自己的特點(diǎn),其中獨(dú)立鍵盤硬件電路簡(jiǎn)單,而且在程序設(shè)計(jì)上也不復(fù)雜,一般用在對(duì)硬件電路要求不高的簡(jiǎn)單
46、電路中;矩陣鍵盤與獨(dú)立鍵盤有很大區(qū)別,首先在硬件電路上它要比獨(dú)立鍵盤復(fù)雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢(shì)得多,因此它更適合于多按鍵電路。其次就是消除在按鍵過(guò)程中產(chǎn)生的“毛刺” 現(xiàn)象。這里采用最常用的方法,即延時(shí)重復(fù)掃描法,延時(shí)法的原理為:因?yàn)椤懊獭泵}沖一般持續(xù)時(shí)間短,約為幾ms,而我們按鍵的時(shí)間一般遠(yuǎn)遠(yuǎn)大于這個(gè)時(shí)間,所以當(dāng)單片機(jī)檢測(cè)到有按鍵動(dòng)靜后再延時(shí)一段時(shí)間(這里我們?nèi)?0ms)后再判斷此電平是否保持原狀態(tài),如果是則為有效按鍵,否則無(wú)效。 系統(tǒng)中的搶答時(shí)間和答題時(shí)間都是用鍵盤掃描來(lái)完成的,我們采用了4*4集成鍵盤來(lái)實(shí)現(xiàn)的,8個(gè)端分別介入單片機(jī)的p1口,單片機(jī)掃描
47、來(lái)判斷當(dāng)前輸入的數(shù)字并用數(shù)碼管顯示所選數(shù)字;其中還包含了主持人開(kāi)始按鍵,系統(tǒng)復(fù)位按鍵,主持控制開(kāi)始答題按鍵。如下圖3.7所示:圖3.7 系統(tǒng)主持人鍵盤所有選手在從機(jī)中,使用獨(dú)立鍵盤掃描實(shí)現(xiàn),沒(méi)個(gè)選手使用兩個(gè)按鍵,一個(gè)是搶答按鍵,一個(gè)是規(guī)定時(shí)間內(nèi)答題完畢的停止鍵。如下圖3.8所示:圖3.8 八名選手搶答停止按鍵3.5.5 聲音電路我們知道,聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來(lái)控制單片機(jī)某個(gè)口線的“高”電平或低電平,則在該口線上就能產(chǎn)生一定頻率的矩形波,接上喇叭就能發(fā)出一定頻率的聲音,若再利用延時(shí)程序控制“高”“低”電平的持續(xù)時(shí)間,就能改變輸出頻率,從而改變音調(diào),使喇叭發(fā)出不同的聲音。
48、本文設(shè)計(jì)如圖3.9所示。圖中單片機(jī)的21腳輸出具有復(fù)合功能,此處用到了單片機(jī)18腳的io端口功能,單片機(jī)通過(guò)內(nèi)部定時(shí)器的操作實(shí)現(xiàn)交替變換的波形輸出驅(qū)動(dòng)揚(yáng)聲器發(fā)聲。圖3.9 聲音電路4 軟件設(shè)計(jì)4.1 軟件任務(wù)分析軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來(lái)了9。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個(gè)總體規(guī)劃。從軟件的功能來(lái)看可分兩大類:一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測(cè)量,計(jì)算,顯示,打印,輸出控制和通信等,另一類是監(jiān)控軟件,它是專門用來(lái)協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。這兩類軟
49、件的設(shè)計(jì)方法各有特色,執(zhí)行軟件的設(shè)計(jì)偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時(shí),應(yīng)將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義(輸入輸出定義)。在各執(zhí)行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問(wèn)題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤設(shè)置選擇一種最適合的監(jiān)控程序結(jié)構(gòu)。相對(duì)來(lái)講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問(wèn)題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個(gè)廠長(zhǎng)就比較難了。軟件任務(wù)分析的另一個(gè)內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個(gè)系統(tǒng)軟件可分為后臺(tái)程序(背景程序)和前臺(tái)程序。后臺(tái)程序指主程序及其調(diào)用的子程序
50、,這類程序?qū)?shí)時(shí)性要求不是太高,延誤幾十ms甚至幾百ms也沒(méi)關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺(tái)程序中執(zhí)行;而前臺(tái)程序安排一些實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺(tái),后臺(tái)程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。4.2 系統(tǒng)總流程圖在本設(shè)計(jì)中包括了以下主要的程序:主程序,查詢程序,非法搶答程序,搶答時(shí)間調(diào)整程序,回答時(shí)間調(diào)整程序,倒計(jì)時(shí)程序,正常搶答處理程序,犯規(guī)處理程序,顯示及發(fā)聲程序。主流程圖如4.1所示:開(kāi)始初始化設(shè)置答題時(shí)間和搶答時(shí)間準(zhǔn)備開(kāi)始答題主持人是否按搶答按鍵定時(shí)器0開(kāi)
51、,倒計(jì)時(shí)開(kāi)始串口中斷,搶答時(shí)間內(nèi)是否有選手搶答給串口發(fā)送答題時(shí)間,選手開(kāi)始答題主持人是否按下開(kāi)始答題鍵選手按下答題結(jié)束,串口中斷,定時(shí)器關(guān),倒計(jì)時(shí)停止系統(tǒng)復(fù)位,下一輪搶答開(kāi)始數(shù)碼管顯示選手號(hào)主持人是否按下開(kāi)始答題鍵犯規(guī),顯示選手號(hào)是是是是否否犯規(guī)否否圖4.1 系統(tǒng)總流程圖4.3 各個(gè)模塊軟件設(shè)計(jì)與分析4.3.1 定時(shí)器/計(jì)數(shù)器t0、t1定時(shí)器/計(jì)數(shù)器是51系列單片機(jī)的重要功能之一,它的核心是16位加法計(jì)數(shù)器。其中特殊功能寄存器th0和tl0是定時(shí)器/計(jì)數(shù)器t0的高8位和低8位;th1和tl1是定時(shí)器/計(jì)數(shù)器t1的高8位和低8位。表4.1 stc89c51特殊功能寄存器符號(hào)地址注釋*acce0h
52、累加器*bf0h乘法寄存器*pswd0h程序狀態(tài)字sp81h堆棧指針dpl82h數(shù)據(jù)存儲(chǔ)器指針低8位dph83h數(shù)據(jù)存儲(chǔ)器指針高8位*iea8h中斷允許控制器*ipd8h中斷優(yōu)先控制器*p080h端口0*p190h端口1*p2a0h端口2*p3b0h端口3pcon87h電源控制及波特率選擇*scon98h串行口控制器sbuf99h串行數(shù)據(jù)緩沖器*tcon88h定時(shí)器控制tmod89h定時(shí)器方式選擇tl08ah定時(shí)器0低8位tl18bh定時(shí)器1低8位th08ch定時(shí)器0低8位th18dh定時(shí)器1高8位做為計(jì)數(shù)器用時(shí),加法計(jì)數(shù)器對(duì)芯片引腳t0或t1上的輸入脈沖計(jì)數(shù),每輸入個(gè)脈沖。加法計(jì)數(shù)器加1。加
53、法計(jì)數(shù)器溢出時(shí)可向cpu發(fā)出中斷請(qǐng)求信號(hào)。做為定時(shí)器用時(shí),加法計(jì)數(shù)器對(duì)內(nèi)部機(jī)器周期脈沖tcy計(jì)數(shù),由于機(jī)器周期是定值,因而對(duì)tcy的計(jì)數(shù)就是定時(shí),如tcy=1us,計(jì)數(shù)值100,相當(dāng)于定時(shí)100us。加法計(jì)數(shù)器的初值可以由程序設(shè)定,設(shè)置的初值不同,計(jì)數(shù)值或定時(shí)時(shí)間就不同。在定時(shí)器/計(jì)數(shù)器的工作過(guò)程中,加法計(jì)數(shù)器的內(nèi)容可用程序讀回cpu。1、定時(shí)器t0/t1的中斷流程圖:開(kāi)始設(shè)置定時(shí)器工作方式定時(shí)器賦初值開(kāi)總中斷啟動(dòng)定時(shí)器count+country=20 ?country清零定時(shí)器再次賦初值時(shí)間減一時(shí)間=0 ?結(jié)束yynn圖4.2 定時(shí)器中斷流程圖2、器/計(jì)數(shù)器方式控制寄存器tmod:定時(shí)器/計(jì)
54、數(shù)器t0/t1都有四種工作方式,可通過(guò)對(duì)tmod編寫設(shè)置來(lái)選擇。tmod的低四位用于定時(shí)器/計(jì)數(shù)器0,高四位用于定時(shí)器/計(jì)數(shù)器1。其位定義見(jiàn)表4.2。表4.2 式控制寄存器tmod位定義表d7d6d5d4d3d2d1d0gatec/tm1m0gatec/tm1m0c/t:定時(shí)或計(jì)數(shù)功能選擇位,當(dāng)c/t=1時(shí),為計(jì)數(shù)方式;當(dāng)c/t=0時(shí),為定時(shí)方式。m1、m0:定時(shí)器工作方式選擇位,其值與工作方式對(duì)應(yīng)關(guān)系見(jiàn)表4.3。表4.3 定時(shí)器/計(jì)數(shù)器工作方式m1m0工作方式方式說(shuō)明00013位定時(shí)器/計(jì)數(shù)器01116位定時(shí)器/計(jì)數(shù)器102具有自動(dòng)重裝初值的8位定時(shí)器/計(jì)數(shù)器113兩個(gè)8位定時(shí)器/計(jì)數(shù)器gate:門控位,用于控制定時(shí)器/計(jì)數(shù)器的啟動(dòng)是否受外部中斷請(qǐng)求信號(hào)的影響。如果gate=1,則定時(shí)器/計(jì)數(shù)器0的啟動(dòng)受芯片引腳int0控制,則定時(shí)器/計(jì)數(shù)器1啟動(dòng)受芯片引腳int1控制;如果gate=0.則定時(shí)器/計(jì)數(shù)器的啟動(dòng)與int0、int1無(wú)關(guān)。一般情況下gate=0。3、時(shí)器/計(jì)數(shù)器控制寄存器
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 武昌首義學(xué)院《DMAX建模與渲染》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖北生態(tài)工程職業(yè)技術(shù)學(xué)院《自彈自唱訓(xùn)練》2023-2024學(xué)年第二學(xué)期期末試卷
- 長(zhǎng)春醫(yī)學(xué)高等??茖W(xué)?!稊?shù)控技術(shù)及裝備A》2023-2024學(xué)年第二學(xué)期期末試卷
- 定西師范高等??茖W(xué)?!恫≡飳W(xué)與醫(yī)學(xué)免疫學(xué)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 內(nèi)蒙古北方職業(yè)技術(shù)學(xué)院《竹工藝技法》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣西城市職業(yè)大學(xué)《地質(zhì)資源與地質(zhì)工程研究方法》2023-2024學(xué)年第二學(xué)期期末試卷
- 河南推拿職業(yè)學(xué)院《德語(yǔ)國(guó)家概況(1)》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶安全技術(shù)職業(yè)學(xué)院《環(huán)境景觀設(shè)計(jì)景觀設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 供應(yīng)商合同范本大全
- 有關(guān)臨時(shí)工勞動(dòng)合同范本
- 第16課數(shù)據(jù)管理與編碼(教案)四年級(jí)全一冊(cè)信息技術(shù)人教版
- 中建10t龍門吊安拆安全專項(xiàng)施工方案
- 國(guó)內(nèi)外測(cè)井技術(shù)現(xiàn)狀與展望文檔
- 大模型專題:2024大模型技術(shù)及其在金融行業(yè)的應(yīng)用探索報(bào)告
- 天津地區(qū)高考語(yǔ)文五年高考真題匯編-語(yǔ)言文字應(yīng)用
- 特殊作業(yè)安全管理監(jiān)護(hù)人專項(xiàng)培訓(xùn)課件
- 道路運(yùn)輸企業(yè)兩類人員安全考核試題及答案
- 衛(wèi)生技術(shù)人員準(zhǔn)入制度
- 簡(jiǎn)單酒店裝修合同書(shū)范本(30篇)
- 2024-2030年中國(guó)核桃油行業(yè)消費(fèi)趨勢(shì)及競(jìng)爭(zhēng)格局分析研究報(bào)告
- 安全、環(huán)境、職業(yè)健康安全目標(biāo)、指標(biāo)及管理方案
評(píng)論
0/150
提交評(píng)論