米閣 何建軍 謝日華 侯穎 何汶俊
【摘要】 隨著人們對(duì)生活質(zhì)量的追求,作為娛樂項(xiàng)目的搶答器越來越受到人們的青睞。本設(shè)計(jì)是八路搶答器,利用AT89C51單片機(jī)、LED數(shù)碼管等實(shí)現(xiàn)的搶答系統(tǒng)。主要分為兩個(gè)部分,分別為主控系統(tǒng)和參賽者系統(tǒng)。主控系統(tǒng)有開始和結(jié)束控制按鈕、時(shí)限設(shè)定等,參賽者系統(tǒng)有搶答按鈕、計(jì)時(shí)顯示等。最后通過仿真運(yùn)行得到結(jié)果。
【關(guān)鍵詞】 AT89C5 硬件 軟件 仿真
一、概述
1.1 單片機(jī)搶答器的背景和現(xiàn)狀
隨著電氣時(shí)代、電子時(shí)代的結(jié)束,現(xiàn)已進(jìn)入的計(jì)算機(jī)時(shí)代。除了PC機(jī)外還有一類為單片機(jī),它的體積很小,在整個(gè)裝置中起到了核心的作用。本系統(tǒng)采用AT89C51單片機(jī)作為整個(gè)控制核心。這個(gè)控制系統(tǒng)包含了四個(gè)模塊,分別是:顯示模塊、存儲(chǔ)模塊、語音模塊以及搶答器開關(guān)模塊。
二、設(shè)計(jì)概述
2.1 總體設(shè)計(jì)
搶答器的工作原理主要是采用單片機(jī)這個(gè)最小系統(tǒng),通過鍵盤進(jìn)行搶答,并動(dòng)態(tài)顯示組號(hào)。主持人按下開始搶答按紐時(shí),蜂鳴發(fā)出響聲提示,且數(shù)碼管進(jìn)行30秒倒計(jì)時(shí),若有人在30秒搶答,蜂鳴器響聲提示并顯示他的組號(hào)。之后主持人按下復(fù)位開關(guān)為下一題的搶答做準(zhǔn)備。
2.2系統(tǒng)的基本功能為:
1、設(shè)計(jì)基本單元的搶答路數(shù),及可擴(kuò)展單元路數(shù)。2、記錄搶答時(shí)間,有爭議時(shí)可查閱時(shí)間紀(jì)錄。3、設(shè)置開始搶答鍵,顯示及音響提示開始音,具有提前搶答處理功能。4、建立并論證游戲規(guī)則的公平性,如開始提示音起始或結(jié)束。5、搶答時(shí)間辨別0.1S。
三、系統(tǒng)硬件電路設(shè)計(jì)
1、AT89C51單片機(jī)硬件電路。本設(shè)計(jì)使用到的元器件包括:AT89C51芯片、LED顯示器、七段LED數(shù)碼管的譯碼。其中系統(tǒng)的核心是AT89C51,它主要負(fù)責(zé)控制各個(gè)部分,讓各個(gè)部分協(xié)調(diào)工作。并在其外圍接入復(fù)位模塊,數(shù)碼管,按鈕以及振蕩器等。2、時(shí)鐘頻率電路。單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作。此電路外接一個(gè)振蕩源就就能產(chǎn)生一定的時(shí)鐘信號(hào)并送到單片機(jī)內(nèi)部的各個(gè)單元,來調(diào)控單片機(jī)運(yùn)行的工作速度。因?yàn)楸驹O(shè)計(jì)要達(dá)到分辨時(shí)間為0.1s,因此設(shè)置定時(shí)器的基準(zhǔn)時(shí)間為1ms,設(shè)置100ms按鍵采集一次,即達(dá)到設(shè)計(jì)要求的0.1s。3、開始按鍵。搶答器必須在按下開始按鍵之后才被視為有效搶答,開始鍵由主持人控制,最后仿真時(shí)按下此鍵表示搶答開始。4、八路選手搶答鍵。本數(shù)字搶答器的設(shè)計(jì)為8路按鍵輸入,將采用獨(dú)立按鍵的方式。在此次設(shè)計(jì)中在p1.0-p1.7接口處接入八路鍵盤,單片機(jī)通過讀取p1.0-p1.7的值來判斷當(dāng)前的輸入的是8個(gè)按鍵中的哪一個(gè)。5、顯示電路。4本設(shè)計(jì)數(shù)碼管采用的是共陰極的,由高電平點(diǎn)亮。其中數(shù)碼管的顯示一般情況下包含兩種:靜態(tài)顯示和動(dòng)態(tài)顯示。動(dòng)態(tài)顯示不會(huì)有閃爍感,能夠節(jié)省大量的I/O端口,而且產(chǎn)生較低的功耗。因此本設(shè)計(jì)采用動(dòng)態(tài)顯示。6、蜂鳴器音頻輸出電路。單片機(jī)的I/O口驅(qū)動(dòng)能力有限,而蜂鳴器發(fā)聲需要較高的電流,在這里利用三極管放大電流來使蜂鳴器獲得足夠的驅(qū)動(dòng)電流。蜂鳴器音頻輸出電路的功能是用來發(fā)出警報(bào)聲,起到提醒的作用。
四、系統(tǒng)軟件設(shè)計(jì)
在進(jìn)行微機(jī)控制系統(tǒng)設(shè)計(jì)時(shí),除了系統(tǒng)硬件設(shè)計(jì)外,大量的工作就是如何根據(jù)每個(gè)生產(chǎn)對(duì)象的實(shí)際需要設(shè)計(jì)相應(yīng)的應(yīng)用程序。本系統(tǒng)軟件采用模塊化結(jié)構(gòu),采用C語言,由主程序﹑鍵盤子程序、顯示驅(qū)動(dòng)子程序等構(gòu)成。
五、制作與調(diào)試
1、仿真軟件介紹。但在本次設(shè)計(jì)中我們編寫簡單的C語言,設(shè)置使其生成HEX文件,再與Proteus結(jié)合, 將hex文件導(dǎo)入單片機(jī)內(nèi),進(jìn)行仿真。通過Keil與 Proteus的整合調(diào)試來實(shí)現(xiàn)系統(tǒng)的總調(diào),Keil為軟件調(diào)試界面,而 Proteus是作為硬件仿真以及調(diào)試的界面。
2、仿真結(jié)果與分析。當(dāng)仿真開始運(yùn)行時(shí),搶答鍵和蜂鳴器都處于開啟狀態(tài),當(dāng)主持人重新按下開始鍵時(shí),這表示搶答正式開始,并且數(shù)碼管會(huì)顯示30秒倒計(jì),同時(shí)通過蜂鳴器發(fā)出的聲音來提醒選手搶答已經(jīng)開始了。
如圖所示,是搶答成功的情況,顯示屏上顯示的數(shù)字有18和5,這表明在開始后18秒時(shí)由5號(hào)選手搶得,且有蜂鳴器發(fā)出提示聲。
結(jié)論:本文以AT89C51單片機(jī)為核心設(shè)計(jì)了八路搶 答器系統(tǒng),通過軟件仿真和硬件測(cè)試實(shí)現(xiàn)了智能特性,具有反應(yīng)快、操作簡便、以及成本低廉等特點(diǎn)。
參 考 文 獻(xiàn)
[1] 李光飛.單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo)[M].北京:北京航天航空大學(xué)出版社,2004
[2] 李朝青.單片機(jī)原理及接口技術(shù)(第3版)[M].北京:北京航空航天大學(xué)出版社,2002
[3] 黃正謹(jǐn).綜合電子設(shè)計(jì)與實(shí)踐[M].東南大學(xué)出版社,2002-3