畢業(yè)論文 電子搶答器_第1頁
畢業(yè)論文 電子搶答器_第2頁
畢業(yè)論文 電子搶答器_第3頁
畢業(yè)論文 電子搶答器_第4頁
畢業(yè)論文 電子搶答器_第5頁
已閱讀5頁,還剩94頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

摘要伴隨計算機(jī)技術(shù)的高速發(fā)展,單片機(jī)以其自身的特點(diǎn),已廣泛應(yīng)用于智能儀器、工業(yè)控制、家用電器、電子玩具等各個領(lǐng)域。在知識競賽中,尤其是做搶答題目的時候,靠視覺是很難判斷出哪組先搶答成功。運(yùn)用單片機(jī)系統(tǒng)設(shè)計的搶答器,可使問題得以處理,雖然兩組的搶答時間相差幾微秒,也可辨別出哪組優(yōu)先答題。本次設(shè)計的8路搶答器重要是采用ATMEL企業(yè)的AT89S52單片機(jī)作為關(guān)鍵,實現(xiàn)控制8個獨(dú)立式鍵盤搶答按鈕,四位動態(tài)數(shù)碼顯示,手動復(fù)位等功能??刂葡到y(tǒng)的五個模塊分別為:單片機(jī)最小系統(tǒng)、顯示模塊、顯示驅(qū)動模塊、搶答開關(guān)模塊和音頻輸出模塊,搶答組數(shù)可以在八組以內(nèi)任意使用。通過本設(shè)計后,可以很快的判斷出是誰最快搶答成功,并且立即進(jìn)入答題倒計時;又是誰搶答過早,發(fā)出報警聲并且顯示犯規(guī)組號;比賽即將結(jié)束時,能發(fā)出報警聲,同步在顯示模塊上顯示出倒計時時間的提醒。關(guān)鍵詞:單片機(jī);鍵盤;顯示;搶答AbstractWiththerapiddevelopmentofcomputertechnology,SCMwithitsowncharacteristicshasbeenwidelyusedinintelligentinstruments,industrialcontrol,householdappliances,electronictoysandotherfields.Competitioninknowledge,especiallywhenansweringDevice,bywhichthevisualisverydifficulttodeterminethesuccessfulgroupthefirstanswer.UsingMCUsystemdesignResponder,theproblemcanbesolved,evenifthetimedifferencebetweenthetwogroupsanswerinafewmicroseconds,cantellwhichgroupfirstanswer.The8-waysystemdesignistheuseofdevicesAnswerAtmelCorporationAT89S52single-chipmicrocomputerasthecore,toachievecontrolofeightstand-alonekeyboardanswersinthebutton,thefourdynamicdigitaldisplays,andmanualresetfunctions.Thecontrolsystemsofthefivemodulesareasfollows:thesmallestsingle-chipsystem,displaymodule,displaydrivermodule,answerswitchmodule,andtheaudiooutputmodule,answerafewgroupscanbelessthanthearbitraryuseofeightgroups.Throughthisdesign,youcanquicklydeterminewhoisthefastestanswerinsuccess,andimmediatelyentertheanswercountdown;Andwhoanswerintooearly,analarmsoundanddisplaysthegroupnumberfouls;gameabouttheendofthealarmcanbeissuedthesametime,thedisplaymoduleshowstimecountdowntips.Keywords:SCM;Keyboard;Display;Answer目錄摘要 IAbstract II1序言 11.1單片機(jī)的應(yīng)用技術(shù) 11.2系統(tǒng)設(shè)計要點(diǎn) 21.3設(shè)計規(guī)定與功能 31.3.1設(shè)計基本規(guī)定 31.3.2設(shè)計重要功能 32硬件設(shè)計 52.1控制系統(tǒng)及所需元件 52.2各模塊方案選擇及硬件設(shè)計 52.2.1AT89S52功能簡介 62.2.2搶答器顯示模塊 92.2.3電源方案的選擇 92.2.4搶答器鍵盤的選擇 92.2.5外部振蕩電路 122.2.6復(fù)位電路 122.2.7蜂鳴器 132.2.8控制功能模塊 143軟件設(shè)計 153.1軟件功能 153.2搶答器流程圖 163.2.1搶答器系統(tǒng)軟件流程圖 163.2.2程序流程圖 163.3匯編程序?qū)崿F(xiàn)功能 184Proteus軟件仿真 234.1Proteus軟件簡介 234.2Proteus軟件構(gòu)建系統(tǒng)原理圖 234.3Proteus軟件仿真 244.3.1搶答和答題時間調(diào)整 274.3.2有效搶答處理 294.3.3無效搶答處理 295結(jié)論與展望 31道謝 33參照文獻(xiàn) 34附錄A搶答系統(tǒng)電路原理圖 35附錄B匯編程序 361序言電子技術(shù)和微型計算機(jī)的迅速發(fā)展,增進(jìn)微型計算機(jī)測量和控制技術(shù)的迅速發(fā)展和廣泛應(yīng)用,單片機(jī)(單片微型計算機(jī))的應(yīng)用已經(jīng)滲透到國民經(jīng)濟(jì)的各個部門和領(lǐng)域,它起到了越來越重要的作用。單片微型計算機(jī)就是將中央處理單元、存儲器、定期/計數(shù)器和多種接口都集成到一塊集成電路芯片上的微型計算機(jī)。因此一塊芯片就構(gòu)成了一臺計算機(jī)。它已成為工業(yè)控制領(lǐng)域、智能儀器儀表、尖端武器、平常生活中最廣泛使用的計算機(jī)。電子搶答器是以單片機(jī)作為控制關(guān)鍵。其工作原理是采用最小單片機(jī)系統(tǒng),用獨(dú)立式鍵盤來進(jìn)行搶答,采用四位動態(tài)數(shù)碼顯示。本次設(shè)計實現(xiàn)的功能為:容許8組選手搶答;能顯示搶答組號;設(shè)有搶答倒計時及答題時間倒計時;并且在答題過程中,假如選手求援,答題倒計時可以重置;同步如有選手犯規(guī),能發(fā)出報警聲并且顯示犯規(guī)組號;比賽結(jié)束時,能發(fā)出報警聲。1.1單片機(jī)的應(yīng)用技術(shù)單片機(jī)是一種特殊的計算機(jī),它是在一塊半導(dǎo)體芯片上集成了CPU、存儲器RAM、ROM以及輸入與輸出接口電路,這種芯片習(xí)慣稱為單片微型計算機(jī),簡稱單片機(jī)。單片機(jī)由硬件系統(tǒng)與軟件系統(tǒng)構(gòu)成。硬件系統(tǒng)是指構(gòu)成微機(jī)系統(tǒng)的實體與裝置,一般由運(yùn)算器、控制器、存儲器、輸入接口電路和輸入設(shè)備、輸出接口電路和輸出設(shè)備等構(gòu)成。其中運(yùn)算器和控制器一般做在一種集成芯片上,統(tǒng)稱中央處理單元(CenterProcessingUnit),簡稱CPU,是微機(jī)的關(guān)鍵部件。CPU配上寄存程序和數(shù)據(jù)的存儲器、輸入、輸出(Input/Output,簡稱I/O)接口電路以及外部設(shè)備即構(gòu)成單片機(jī)的硬件系統(tǒng)。軟件系統(tǒng)是微機(jī)系統(tǒng)所使用的多種程序的總稱,人們通過它對微機(jī)進(jìn)行控制并與微機(jī)系統(tǒng)進(jìn)行信息互換,使微機(jī)按照人的意圖完畢預(yù)定的任務(wù)。軟件系統(tǒng)與硬件系統(tǒng)共同構(gòu)成完整的單片微型計算機(jī)系統(tǒng),兩者相輔相成,缺一不可。由于單片機(jī)系統(tǒng)都是面向特定應(yīng)用的,因此單片機(jī)具有較高的性能價格比,體系小,高可靠性,控制功能強(qiáng),系統(tǒng)擴(kuò)展以便,硬件設(shè)計簡樸等長處,同步單片機(jī)開發(fā)工具具有很強(qiáng)的軟、硬件調(diào)試功能,使研制單片機(jī)應(yīng)用系統(tǒng)極為以便,再加之現(xiàn)場運(yùn)行環(huán)境的可靠性,因此單片機(jī)能滿足許多小型對象的嵌入式應(yīng)用規(guī)定,可廣泛應(yīng)用在儀器儀表、家用電器、智能玩具、辦公自動化產(chǎn)品,以及控制系統(tǒng)等領(lǐng)域中。1.2系統(tǒng)設(shè)計要點(diǎn)系統(tǒng)設(shè)計重要包括硬件設(shè)計和軟件設(shè)計兩大部分,根據(jù)控制系統(tǒng)的工作原理和技術(shù)性能,將硬件和軟件分開設(shè)計。硬件設(shè)計部分包括電路原理圖、合理選擇元器件、繪制線路圖,然后對硬件進(jìn)行調(diào)試、測試,以到達(dá)設(shè)計規(guī)定。軟件設(shè)計部分,首先在總體設(shè)計中完畢系統(tǒng)總框圖和各模塊的功能設(shè)計,確定詳細(xì)的工作計劃;然后進(jìn)行詳細(xì)設(shè)計,包括各模塊的流程圖,選擇合適的編程語言和工具,進(jìn)行代碼設(shè)計等;最終是對軟件進(jìn)行調(diào)試、測試,到達(dá)所需功能規(guī)定。在系統(tǒng)設(shè)計中,設(shè)計措施的選用是系統(tǒng)設(shè)計能否成功的關(guān)鍵。硬件電路是采用構(gòu)造化系統(tǒng)設(shè)計措施,該措施保證設(shè)計電路的原則化、模塊化。硬件電路的設(shè)計最重要的選擇用于控制的單片機(jī),并確定與之配套的外圍芯片,使所設(shè)計的系統(tǒng)既經(jīng)濟(jì)又高性能。硬件電路設(shè)計還包括輸入輸出接口設(shè)計,畫出詳細(xì)電路圖,標(biāo)出芯片的型號、器件參數(shù)值,根據(jù)電路圖在仿真機(jī)上進(jìn)行調(diào)試,發(fā)現(xiàn)設(shè)計不妥及時修改,最終到達(dá)設(shè)計目的。本系統(tǒng)軟件設(shè)計采用模塊化系統(tǒng)設(shè)計措施,先編寫各個功能模塊子程序,然后進(jìn)行組合與調(diào)整,通過調(diào)試后,最終到達(dá)設(shè)計功能規(guī)定。1.3設(shè)計規(guī)定與功能1.3.1設(shè)計基本規(guī)定 (1)搶答器同步供8名選手或8個代表隊比賽使用,分別用8個按鈕K1~K8表達(dá)。(2)設(shè)置裁判開關(guān)S1~S6,該開關(guān)由主持人控制。其中按鍵S1為搶答開始功能鍵,S2為停止鍵,S3為搶答時間調(diào)整鍵,S4為答題時間調(diào)整鍵,S5時間加1S鍵,S6為時間減1S鍵。(3)搶答器具有定期搶答功能,且一次搶答的時間由主持人設(shè)定(如30秒)。當(dāng)主持人啟動“開始”鍵后,定期器進(jìn)行減計時,同步揚(yáng)聲器發(fā)出短暫的聲響,聲響持續(xù)的時間0.5秒左右。(4)參賽選手在設(shè)定的時間內(nèi)進(jìn)行搶答,搶答有效,定期器停止工作,數(shù)碼管上顯示選手的編號和答題的時間(如60秒)。(5)假如定期時間已到,無人搶答,本次搶答無效,系統(tǒng)報警并嚴(yán)禁搶答。(6)假如選手犯規(guī),系統(tǒng)報警并顯示犯規(guī)組號。1.3.2設(shè)計重要功能(1)具有搶答控制,可由主持人操縱防止有人在主持人說“開始”前提前搶答違反規(guī)則。假如主持人未按“搶答開始”鍵,而有人按了搶答按鍵,犯規(guī)搶答,LED上不停閃爍FF和犯規(guī)號數(shù),并且響個不停,直到按下“停止”鍵為止。(2)具有定期功能,在30秒內(nèi)無人搶答表達(dá)所有參賽選手或者參賽隊對本題棄權(quán),此時報警器工作。(3)假如想調(diào)整搶答時間或答題時間,按“搶答時間調(diào)整”鍵或“答題時間調(diào)整”鍵進(jìn)入調(diào)整狀態(tài),此時會顯示目前設(shè)定的搶答時間或回答時間值,如想加一秒按一下“加1s”鍵,假如想減一秒按一下“減1s”鍵,時間LED上會顯示變化后的時間,調(diào)整范圍為0~99s,0s時再減1s會跳到99,99s時再加1s會變到0s。(4)主持人按“搶答開始”鍵,會有提醒音,并立即進(jìn)入搶答倒計時(預(yù)設(shè)30s搶答時間),如有選手搶答,會有提醒音,并會顯示其號數(shù)并立即進(jìn)入回答倒計時(預(yù)設(shè)60s搶答時間),不進(jìn)行搶答查詢,因此只有第一種按搶答的選手有效。倒數(shù)時間到不不小于5s會每秒響一下提醒音。(5)如倒計時期間,主持人想停止倒計時可以隨時按“停止”按鍵,系統(tǒng)會自動進(jìn)入準(zhǔn)備狀態(tài),等待主持人按“搶答開始”進(jìn)入下次搶答計時。2硬件設(shè)計2.1控制系統(tǒng)及所需元件控制系統(tǒng)重要由單片機(jī)應(yīng)用電路、存儲器接口電路、顯示接口電路構(gòu)成。其中單片機(jī)AT89S52是系統(tǒng)工作的關(guān)鍵,它重要負(fù)責(zé)控制各個部分協(xié)調(diào)工作。所需元件:該系統(tǒng)的關(guān)鍵器件是AT89S52。各口功能:P0.0-P0.6是數(shù)碼管的段選口,為其傳送段選信號;P1.0-P1.7是8組搶答信號的輸入口;P2.0-P2.2是數(shù)碼管的位選口;P3.0、P3.1由裁判控制,分別是搶答開始\錦囊功能鍵和停止鍵;P3.2(INT0)、P3.3(INT1)搶答倒計時時間以及答題倒計時時間設(shè)置口;P3.4、P3.5分別實現(xiàn)了時間的加1和減1功能;P3.2-P3.5可以實現(xiàn)對搶答倒計時時間以及答題倒計時時間進(jìn)行設(shè)置,并且加減調(diào)整;P3.6為蜂鳴器的控制口。在其外圍接上電復(fù)位電路、上拉電阻、數(shù)碼管、按鈕及揚(yáng)聲器。元件為:晶振X1、電容C1、C2、C3、電阻R1。2.2各模塊方案選擇及硬件設(shè)計電子搶答器用單片機(jī)來設(shè)計制作完畢的,由于其功能的實現(xiàn)重要是通過軟件編程來完畢的,因此采用單片機(jī)AT89S52,它是一種低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8kbytes的可反復(fù)擦寫的Flash只讀程序存儲器和256bytes的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL企業(yè)的高密度、非易失性存儲技術(shù)生產(chǎn),兼容原則MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,功能強(qiáng)大的AT89S52單片機(jī)可為您提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場所。2.2.1AT89S52功能簡介AT89S52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同步內(nèi)含2個外中斷口,3個16位可編程定期計數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89S52可以按照常規(guī)措施進(jìn)行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,尤其是可反復(fù)擦寫的Flash存儲器可有效地減少開發(fā)成本。同步AT89S52有PDIP、PQFP/TQFP及PLCC等三種封裝形式,以適應(yīng)不一樣產(chǎn)品的需求。1、重要功能特性:兼容MCS51指令系統(tǒng)。8k可反復(fù)擦寫(>1000次)FlashROM。32個雙向I/O口,256x8bit內(nèi)部RAM。3個16位可編程定期/計數(shù)器中斷,時鐘頻率0-24MHz。2個串行中斷,可編程UART串行通道。2個外部中斷源,共6個中斷源。2個讀寫中斷口線。3級加密位。低功耗空閑和掉電模式。軟件設(shè)置睡眠和喚醒功能。2、管腳闡明:AT89S52管腳圖如圖2-1所示:VCC(40腳)和VSS(20腳)為供電端口,分別接+5V電源的正負(fù)端。GND:接地;XTAL1(19腳)和XTAL2(18腳):振蕩器輸入輸出端口,外接12MHz晶振。RST(9腳):復(fù)位輸入端口,外接電阻電容構(gòu)成的復(fù)位電路。ALE(30腳):當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存容許)輸出脈沖用于鎖存地址的低8位字節(jié)。PSEN(29腳):程序儲存容許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)AT89S52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。PSEN(29腳):程序儲存容許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)AT89S52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。EA(31腳):外部訪問容許。欲使CPU僅訪問外部程序存儲器(地址為0000H—FFFFH),EA端口必須保持低電平(接地)。圖2-1AT89S52管腳圖P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時,每位能吸取電流的方式驅(qū)動8個TTL邏輯門電路,對端口P0寫“1”P1口:P1是一種帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸取或輸出電流)4個TTL邏輯門電路。對端口寫“1”P2口:P2是一種帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸取或輸出電流)4個TTL邏輯門電路。對端口P2寫“1”P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸取或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”2.2.2搶答器顯示模塊使用老式的數(shù)碼管顯示。數(shù)碼管具有:低能耗、低損耗、低壓、壽命長、耐老化、防曬、防潮、防火、防高(低)溫,對外界環(huán)境規(guī)定低,易于維護(hù),同步其精度高,稱量快,精確可靠,操作簡樸。數(shù)碼顯示是采用BCD編碼顯示數(shù)字,程序編譯輕易,資源占用較少。采用七段碼7SEG-MPX4-CC顯示,它是共陰極的由高電平點(diǎn)亮,如圖2-2所示。2.2.3電源方案的選擇系統(tǒng)需要5V電源來驅(qū)動單片機(jī)AT89S52。運(yùn)用電腦的USB接口可以提供5V電壓來驅(qū)動單片機(jī)。2.2.4搶答器鍵盤的選擇鍵盤是單片機(jī)不可缺乏的輸入設(shè)備,是實現(xiàn)人機(jī)對話的紐帶。鍵盤按構(gòu)造形式可以分為非編碼鍵盤和編碼鍵盤,前者用軟件措施產(chǎn)生鍵碼,而后者則用硬件措施來產(chǎn)生鍵碼。在單片機(jī)中使用的都是非編碼鍵盤,由于非編碼鍵盤構(gòu)造簡樸,成本低廉,非編碼鍵盤的類型諸多,常用的有獨(dú)立式鍵盤,行列式鍵盤等。圖2-2數(shù)碼管顯示模塊本設(shè)計采用獨(dú)立式鍵盤。鍵盤接口中使用多少根I/O線,鍵盤中就有幾種按鍵,鍵盤接口使用了8根I/O口線,該鍵盤就有8個按鍵,這種類型的鍵盤,其按鍵比較少,且鍵盤中各按鍵的工作互不干擾。因此可以根據(jù)實際需要對鍵盤中的按鍵靈活的編碼。如圖2-3所示。最簡樸的編碼方式就是根據(jù)I/O輸入口所直接反應(yīng)的對應(yīng)按鍵,按下的狀態(tài)進(jìn)行編碼,稱按鍵直接狀態(tài)碼,對于這樣編碼的獨(dú)立式鍵盤,CPU可以通過直接讀取I/O口的狀態(tài)來獲取按鍵的直接狀態(tài)編碼值,根據(jù)這個值直接進(jìn)行按鍵識別,這樣形式的鍵盤構(gòu)造簡樸,按鍵識別輕易。獨(dú)立式鍵盤的缺陷是需要占用比較多的I/O口線,當(dāng)單片機(jī)應(yīng)用系統(tǒng)鍵盤中需要的按鍵比較少或I/O口線比較富余時,可以采用這樣類型的鍵盤。圖2-3獨(dú)立式鍵盤CPU對鍵盤的掃描可以采用取程序控制的隨機(jī)方式,即只有在CPU空閑時才去掃描鍵盤,響應(yīng)操作人員的鍵盤輸入,但CPU在執(zhí)行應(yīng)用程序的過程中,不能響應(yīng)鍵盤輸入,對鍵盤的掃描可以采用定期方式,即運(yùn)用單片機(jī)內(nèi)部定期器每隔一定期間對鍵盤掃描一次,這樣控制方式,不管鍵盤上有無鍵閉合,CPU總是定期的關(guān)懷鍵盤狀態(tài)。在大多數(shù)狀況下,CPU對鍵盤也許進(jìn)行空掃描。為了提高CPU的效率而又能及時響應(yīng)鍵盤輸入,可以采用中斷方式,既CPU平時不必掃描鍵盤,只要當(dāng)鍵盤上有鍵盤閉合時就產(chǎn)生中斷祈求,向CPU申請中斷后,立即對鍵盤上的鍵盤進(jìn)行掃描,識別閉合鍵,并做對應(yīng)的處理。其模塊電路圖如圖2-5所示。采用八個BUTTON按鈕作為搶答的選擇按鈕,與AT89S52的P1.0-P1.7相連。圖2-5選手用鍵2.2.5外部振蕩電路外部振蕩電路單片機(jī)必須在AT89S52的驅(qū)動下才能工作.在單片機(jī)內(nèi)部有一種時鐘振蕩電路,只需要外接一種振蕩源就能產(chǎn)生一定的時鐘信號送到單片機(jī)內(nèi)部的各個單元,外部振蕩電路見圖2-6所示。圖2-6外部振蕩電路2.2.6復(fù)位電路外部中斷和內(nèi)部中斷并存,單片機(jī)有硬件復(fù)位端,只要輸入持續(xù)4個機(jī)器周期的高電平即可實現(xiàn)復(fù)位。硬件復(fù)位后的各狀態(tài)可知寄存器及存儲器的值都恢復(fù)到了初始值,應(yīng)為本設(shè)計功能中有倒計時時間的記憶功能,因此不能對單片機(jī)進(jìn)行硬件復(fù)位。只能用軟復(fù)位。軟復(fù)位實際上就是當(dāng)程序執(zhí)行完畢之后,將程序指針通過一條跳轉(zhuǎn)指令讓它跳轉(zhuǎn)到程序初始位置。復(fù)位電路采用圖2-7所示。圖2-7復(fù)位電路2.2.7蜂鳴器蜂鳴器是一種一體化構(gòu)造的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計算機(jī)、打印機(jī)、復(fù)印機(jī)、報警器、電子玩具、汽車電子設(shè)備、電話機(jī)、定期器等電子產(chǎn)品中作發(fā)聲器件,其圖形如圖2-8所示。圖2-8報警電路2.2.8控制功能模塊如圖2-9所示為搶答開始鍵、停止鍵、搶答時間調(diào)整鍵、回答時間調(diào)整鍵、加1S鍵、減1S鍵。如圖2-10所示為本設(shè)計的實物圖。圖2-9裁判用鍵連接圖圖2-10電子搶答器實物圖3軟件設(shè)計智力競賽搶答器規(guī)定有計時記憶功能,一次時間設(shè)置完,復(fù)位后不需重新進(jìn)行時間設(shè)定,通過鍵盤掃描輸出按鍵信息,再通過單片機(jī)將它轉(zhuǎn)換成能在七段數(shù)碼管上顯示字型碼。當(dāng)搶答完畢時,會在數(shù)碼管上顯示搶答者數(shù)字號碼提醒以表達(dá)搶答成功??蓪崿F(xiàn)八路搶答。在顯示時使用的是七段數(shù)碼管顯示在本設(shè)計中根據(jù)實際狀況采用的是動態(tài)顯示措施。并通過查表法將其在數(shù)碼管上顯示出來,其中P1口為字型碼輸入端,P2口低3位為位選輸入端。通過查表將字型碼送給7段數(shù)碼管顯示的數(shù)字。軟件必須去抖動,假如"開始鍵"按下就向下執(zhí)行,否者跳到開始。采用倒計時程序,使其具有倒計時功能?;卮鸬褂嫊r30秒。搶答時間5秒。采用發(fā)聲警報起到報警作用。3.1軟件功能1、假如想調(diào)整搶答時間或答題時間,按“搶答時間調(diào)整”鍵或“答題時間調(diào)整”鍵進(jìn)入調(diào)整狀態(tài),此時會顯示目前設(shè)定的搶答時間或回答時間值,如想加1s按一下“加1s”鍵,假如想減一秒按一下“減1S”鍵,LED上會顯示變化后的時間,調(diào)整范圍為0~99s,0s時再減1s會跳到99,99s時再加1s會變到0s。2、按“搶答開始”鍵,會有提醒音,并立即進(jìn)入搶答倒計時(預(yù)設(shè)30s搶答時間),如有選手搶答,會有提醒音,并會顯示其號數(shù)并立即進(jìn)入回答倒計時(預(yù)設(shè)60s答題時間),不進(jìn)行搶答查詢,因此只有第一種按搶答的選手有效。倒數(shù)時間到不不小于5s會每秒響一下提醒音。3、如倒計時期間,假如想停止倒計時可以隨時按“停止”按鍵,系統(tǒng)會自動進(jìn)入準(zhǔn)備狀態(tài),等待按“搶答開始”進(jìn)入下次搶答計時。4、假如未按“搶答開始”鍵,而有人按了搶答按鍵,犯規(guī)搶答,LED上不停閃爍FF和犯規(guī)號數(shù)并響個不停,直到按下“停止”鍵為止。5、P3.0為開始搶答,P3.1為停止,P1.0-P1.7為八路搶答輸入數(shù)碼管段選P0口,位選P2口低3位,蜂鳴器輸出為P3.6口。P3.2搶答時間調(diào)整鍵,P3.3回答時間調(diào)整,P3.4為時間加1調(diào)整,P3.5為時間減1調(diào)整。當(dāng)搶答開始時,判斷選手與否求援,如求援,裁判可以按“開始”鍵重新為選手計時。3.2搶答器流程圖3.2.1搶答器系統(tǒng)軟件流程圖搶答組數(shù)可以在八組內(nèi)任意使用,當(dāng)主持人按下開始按鍵S1后,當(dāng)有選手按下按鍵后,則程序就會掃描到是哪位選手搶答到,然后再跳轉(zhuǎn)到對的搶答的顯示程序模塊,最終在數(shù)碼管上顯示出來。其流程圖如圖3-1所示:3.2.2程序流程圖主程序流程圖如圖3-2所示。有效搶答處理程序流程圖如圖3-3所示。非法搶答處理程序流程圖如圖3-4所示。在主程序流程圖中,當(dāng)比賽開始前,系統(tǒng)程序會首先完畢初始化,當(dāng)主持人按下開始按鍵S1后,這標(biāo)志著選手可以開始搶答,系統(tǒng)就會檢測P1口與否有按鍵按下。假如此時P1口有按鍵按下,則會進(jìn)入有效搶答處理程序,否則會跳至搶答開始前;假如在主持人按下開始按鍵前,P1口有鍵按下,則進(jìn)入非法搶答處理程序。有效搶答處理程序:如圖3-3所示,當(dāng)進(jìn)入有效搶答后,系統(tǒng)發(fā)出報警聲,顯示搶答組號并且開始答題倒計時(預(yù)設(shè)60s),假如在答題倒計時選手啟用錦囊功能時候,主持人可以按下開始按鍵S1,此時可以重置倒計時,否則將到答題倒計時耗完為止。非法搶答處理程序:如圖3-4所示,當(dāng)在主持人未按下開始搶答鍵時P1口有鍵按下,則有選手犯規(guī),進(jìn)入非法搶答處理程序,此時系統(tǒng)發(fā)出報警聲并在數(shù)碼管上顯示犯規(guī)組號,報警聲將會持續(xù)直到按下停止鍵S2,否則將會一直發(fā)出報警聲。開始開始初始化第一組示顯示組號否是否是否是第二組第八組圖3-1系統(tǒng)流程圖3.3匯編程序?qū)崿F(xiàn)功能在程序設(shè)計階段,需要對程序的語法錯誤進(jìn)行糾正,同步也需要對程序與否能完畢預(yù)定功能進(jìn)行論證,假如單憑人力去做這項工作,不僅揮霍時間,同步效率也是很低的,這時就要用到匯編語言對程序進(jìn)行編譯,這里用到了WAVE軟件。WAVE軟件集成了編輯器、編譯器、調(diào)試器,支持軟件模擬,支持項目管理功能強(qiáng)大的觀測窗程序初始化程序初始化有效搶答處理Y開始結(jié)束P1口有鍵按下下P1口有鍵按下下?lián)尨痖_始非法搶答處理P1口有鍵按下下NYYNN圖3-2主程序流程圖口,支持所有的數(shù)據(jù)類型。樹狀構(gòu)造顯示,一目了然,支持ASM(匯編)、C語言,多語言多模塊源程序混合調(diào)試,在線直接修改、編譯、調(diào)試源程序,同步也可以對對應(yīng)的寄存器賦對應(yīng)的初值,運(yùn)用WAVE提供的單步及跟蹤功能,從而發(fā)現(xiàn)程序中的邏輯錯誤并能精確定位錯誤指令。因此WAVE軟件使程序的調(diào)試和編輯相稱以便。有效搶答有效搶答警報答題倒計時啟動鍵按下YN結(jié)束圖3-3有效搶答處理程序流程圖運(yùn)用WAVE軟件編譯通過的匯編程序,可以生成.HEX為后綴的文獻(xiàn),從而為下面的Proteus軟件仿真準(zhǔn)備。下面是部分功能程序:;=====查詢程序=====START:MOVR5,#0BHMOVR4,#0BHMOVR3,#0BHACALLDISPLAY;未開始搶答時候顯示FFFJBP3.0,NEXT;dddddddACALLDELAYJBP3.0,NEXT;去抖動,假如"開始鍵"按下就向下執(zhí)行,否者跳到非法搶答查詢。非法搶答非法搶答報警停止鍵按下NY結(jié)束圖3-4非法搶答處理程序流程圖ACALLBARK;按鍵發(fā)聲MOVA,R1MOVR6,A;送R1->R6,由于R1中保留了搶答時間SETBOK;搶答標(biāo)志位,用于COUNT只程序中判斷與否查詢搶答MOVR7,#01H;讀搶答鍵數(shù)據(jù)信號標(biāo)志MOVR3,#0AH;搶答只顯示計時,滅號數(shù)AJMPCOUNT;進(jìn)入倒計時程序,"查詢有效搶答的程序"在COUNT里面NEXT:JNBP1.0,FALSE1JNBP1.1,FALSE2JNBP1.2,FALSE3JNBP1.3,FALSE4JNBP1.4,FALSE5JNBP1.5,FALSE6JNBP1.6,FALSE7JNBP1.7,FALSE8AJMPSTART;=====INT0(搶答時間R1調(diào)整程序)=====INT0SUB:MOVA,R1MOVB,#0AHDIVABMOVR5,AMOVR4,BMOVR3,#0AHACALLDISPLAY;先在兩個時間LED上顯示R1JNBP3.4,INC0;P3.4為+1s鍵,如按下跳到INCOJNBP3.5,DEC0;P3.5為-1s鍵,如按下跳到DECOJNBP3.1,BACK0;P3.1為確定鍵,如按下跳到BACKOAJMPINT0SUBINC0:MOVA,R1CJNEA,#63H,ADD0;假如不是99,R2加1,假如加到99,R1就置0,重新加起。MOVR1,#00HACALLDELAY1AJMPINT0SUBADD0:INCR1ACALLDELAY1AJMPINT0SUBDEC0:MOVA,R1JZSETR1;假如R1為0,R1就置99,DECR1ACALLDELAY1AJMPINT0SUBSETR1:MOVR1,#63HACALLDELAY1AJMPINT0SUBBACK0:RETI4Proteus軟件仿真4.1Proteus軟件簡介Proteus(海神)的ISIS是一款Labcenter出品的電路分析實物仿真系統(tǒng),可仿真多種電路和IC,并支持單片機(jī),元件庫齊全,使用以便,是不可多得的專業(yè)的單片機(jī)軟件仿真系統(tǒng)。該軟件的特點(diǎn)是:(1)所有滿足我們提出的單片機(jī)軟件仿真系統(tǒng)的原則,并在同類產(chǎn)品中具有明顯的優(yōu)勢。(2)具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路構(gòu)成的系統(tǒng)的仿真、RS—232動態(tài)仿真、IC調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有多種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。(3)目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及多種外圍芯片。(4)支持大量的存儲器和外圍芯片??傊撥浖且豢罴瘑纹瑱C(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大,可用于仿真51、AVR、PIC等的單片機(jī)。4.2Proteus軟件構(gòu)建系統(tǒng)原理圖要進(jìn)行Proteus仿真,首先要運(yùn)用Proteus軟件構(gòu)建一種.DSN為后綴名的文獻(xiàn)。如圖4-1所示為Proteus軟件主窗口,在主窗口處點(diǎn)擊左上方的PickDevices按鈕,將會彈出PickDevices對話框,如圖4-2所示。在該對話框中輸入所需元件的封裝名稱,就可以找到對應(yīng)的元件了。即分別輸入AT89S52、7SEG-MPX4-CC、BUTTON、CAP、CAP-ELEC、CRYSTAL、RES、SPEAKER,分別得到單片機(jī)、數(shù)碼管、按鍵、電容、電解電容、晶振、電阻和報警器這些元器件。按照原理圖構(gòu)建的Proteus仿真原理圖如圖4-3所示:4.3Proteus軟件仿真雙擊仿真圖中的單片機(jī)AT89S52,將會出現(xiàn)如圖4-4所示的單片機(jī)對話框窗口:在ProgramFile中裝載由WAVE生成的后綴名為.HEX的文獻(xiàn),點(diǎn)擊仿真按鈕即可進(jìn)行仿真。點(diǎn)擊Proteus軟件仿真開始按鍵按鈕,則開始進(jìn)行仿真。如圖4-5所示為初始時的顯示。如圖4-6所示為當(dāng)主持人按下?lián)尨痖_始鍵后的顯示圖:當(dāng)主持人按下開始鍵S1后,啟動開始搶答。數(shù)碼管上顯示的“30”代表搶答時間。系統(tǒng)預(yù)設(shè)30S倒計時搶答,也可以通過搶答時間調(diào)整鍵S3調(diào)整倒計時時間。假如在搶答倒計時期間,沒有選手按下?lián)尨疰I,則視為選手自動放棄搶答機(jī)會。同樣在搶答倒計時5S后,系統(tǒng)會在每過1S,發(fā)出“嘟嘟”聲,直屆時間耗盡為止。圖4-1Proteus軟件主窗口圖4-2PickDevices對話框圖4-3Proteus仿真原理圖4.3.1搶答和答題時間調(diào)整搶答時間調(diào)整的詳細(xì)措施是:主持人按下開始按鍵S1后,接著按下?lián)尨饡r間調(diào)整鍵S3。假如按下一次“加1”鍵S5,則倒計時時間加1S,即31S;假如按下“減1”鍵S6,則倒計時減1S。答題倒計時時間同樣可以調(diào)整,詳細(xì)措施如下:主持人按下開始按鍵S1后,接著按下答題時間調(diào)整鍵S4。假如按下一次“加1”鍵S5,則答題倒計時時間加1S,不過當(dāng)60S時,“加1”后會直接置零;假如按下“減1”鍵S6,則倒計時減1S,當(dāng)為0S時,“減1”則會變成60S。圖4-4單片機(jī)對話框圖4-5初始顯示圖圖4-6啟動搶答時的顯示圖4.3.2有效搶答處理在搶答倒計時期間,假如有選手按下?lián)尨疰I,則為有效搶答。系統(tǒng)將會發(fā)出警報,并在數(shù)碼管上顯示搶答組號和答題倒計時時間,系統(tǒng)預(yù)設(shè)60S。選手需要在答題倒計時期間回答主持人提出的問題,否則視為自動放棄。系統(tǒng)同步在答題時間尚有5S的時候,會在每少一秒時發(fā)出“嘟嘟”聲,直到答題倒計時耗盡為止。如圖4-7所示為有效搶答6號選屆時的顯示圖。此外,假如在答題倒計時期間,選手選擇求援或者錦囊功能時,主持人可以按下?lián)尨痖_始鍵S1,此時系統(tǒng)會重置答題倒計時,回到答題倒計時原點(diǎn),即預(yù)設(shè)60S。4.3.3無效搶答處理假如當(dāng)主持人未按下開始搶答鍵S1,有選手搶答,這時候為非法搶答。此時系統(tǒng)會發(fā)出報警聲,并在數(shù)碼管上顯示犯規(guī)的組號,其數(shù)碼會產(chǎn)生閃爍。如圖4-8所示為非法搶答時1號犯規(guī)顯示圖。當(dāng)按下停止按鍵S2,這標(biāo)著著搶答結(jié)束,回到初始顯示圖,如圖4-5所示。圖4-7有效搶答6號選屆時的顯示圖圖4-8非法搶答時1號犯規(guī)顯示圖5結(jié)論與展望本論文在深入理解單片機(jī)原理和基礎(chǔ)理論上,重要設(shè)計了單片機(jī)控制模塊以及實現(xiàn)各項功能的模塊,最終實現(xiàn)了搶答器的工作。所做的重要工作:(1)在閱讀了大量的國內(nèi)外有關(guān)資料的基礎(chǔ)上,對與搶答器有關(guān)的基礎(chǔ)理論有了深入的理解,為系統(tǒng)設(shè)計奠定了理論基礎(chǔ)。(2)詳細(xì)分析本系統(tǒng)各模塊方案的選定,并最終選定適合本系統(tǒng)的模塊。(3)研究學(xué)習(xí)了AT89S52單片機(jī),掌握了芯片的功能應(yīng)用。同步對于其管腳圖以及工作原理的理解,為系統(tǒng)設(shè)計提供了以便。在這次有關(guān)電子搶答器的畢業(yè)設(shè)計中,我采用了單片機(jī)技術(shù),模擬電子技術(shù),以及仿真等有關(guān)技術(shù),將自己在學(xué)校四年所學(xué)的知識連成一串,理論聯(lián)絡(luò)實際,體現(xiàn)出了大學(xué)生的動手能力。通過查閱和搜集有關(guān)的文獻(xiàn),培養(yǎng)了自學(xué)能力和動手能力,并且由原先的被動的接受知識轉(zhuǎn)換為積極的尋求知識,這可以說是學(xué)習(xí)措施上的一種很大的突破。通過畢業(yè)論文的設(shè)計,我學(xué)會了怎樣將學(xué)到的知識轉(zhuǎn)化為自己的東西,學(xué)會了怎么更好的處理知識和實踐相結(jié)合的問題。把握重點(diǎn)、攻克難關(guān),學(xué)到用到、活學(xué)活用。目前,電子搶答器仍處在不停完善的過程中,同步搶答器功能的實現(xiàn)形式也多種各樣。不僅可以通過單片機(jī)實現(xiàn)搶答器,同步也可以通過數(shù)字編碼來實現(xiàn)。在本設(shè)計中由于作者水平有限,目前該系統(tǒng)尚有某些局限性之處,有待于深入完善的內(nèi)容如下:(1)本設(shè)計中當(dāng)搶答開始后,選手搶答后將立即進(jìn)入答題倒計時,這樣使得選手不能充足做好準(zhǔn)備去回答問題,影響比賽。假如可以將設(shè)計更改為在選手搶答到后,主持人按下開始回答按鍵后再進(jìn)入答題倒計時,會使得系統(tǒng)更完美。(2)由于時間與學(xué)識水平的限制,本文設(shè)計的硬件電路系統(tǒng)中尚有某些方面需要改善,如時鐘電路不穩(wěn)定等,這些均有待于后來深入的研究和完善。(3)由于設(shè)計中采用模塊化的程序設(shè)計措施,因此將各個軟件功能模塊系統(tǒng)的持續(xù)起來,構(gòu)成一種完全的系統(tǒng)也將是下一步需要完畢的一種重要工作。理清多種子程序之間的關(guān)系,對的處理多種中斷程序之間的關(guān)系,防止中斷沖突,提高系統(tǒng)的穩(wěn)定性。道謝當(dāng)我以學(xué)子的身份踏入河南理工大學(xué)的那天起,就注定了我將在這里度過我人生中最漂亮的青春年華。提筆寫下“道謝”,我才發(fā)現(xiàn)自己即將真正離開,人生亦從此展開新的畫卷。盡管不舍,卻更愛惜,由于我的生命中有那么多可愛的人值得感謝。他們使我的大學(xué)生活充斥了色彩,無論收獲、遺憾,對我來說都是一筆寶貴的財富。四年的大學(xué)生活不知不覺中就要結(jié)束了,在這段難忘的生活中,有我許多美好的回憶,然而這一刻我的畢業(yè)設(shè)計即將完畢.。在最終幾種月的畢業(yè)設(shè)計時間里,我碰到了重重障礙,并通過自己不停的推敲鉆研,最終順利的處理了。在這段日子里,我學(xué)到了諸多東西,重新鞏固了本來的知識,學(xué)到了那些沒有在大學(xué)課堂里學(xué)到的知識,為此后的工作和再學(xué)習(xí)指明了方向。首先感謝我的指導(dǎo)老師胡松華參照文獻(xiàn)[1]周潤景,袁偉亭,景曉松.Proteus在MCS-51&ARM7系統(tǒng)中的應(yīng)用百例[M].北京:電子工業(yè)出版社,.5-7[2]余發(fā)山,王福忠等.單片機(jī)原理及應(yīng)用技術(shù)[M].徐州:中國礦業(yè)大學(xué)出版社,[3]張凱,馬忠梅編著,MCS-51單片機(jī)綜合系統(tǒng)及其設(shè)計開發(fā)[M].北京:科學(xué)出版社,1996[4]歐陽文.ATMEL89系列單片機(jī)的原理及開發(fā)實踐[M].北京:中國電力出版社,[5]靳梔,潘育山,鄔芝權(quán).單片機(jī)原理及應(yīng)用C51編程技術(shù)[M].成都:西南交通大學(xué)出版社,[6]黃繼昌,喬蘇文,張海貴.實用報警電路[M].北京:人民郵電出版社,.2[7]求是科技.單片機(jī)經(jīng)典模塊設(shè)計實例導(dǎo)航[M].北京:人民郵電出版社,[8]龔云新,胡長盛.單片機(jī)實用技術(shù)教程[M].北京:北京師大出版社,.6[9]徐愛鈞.8051單片機(jī)實踐教程—asm51匯編語言與C51高級語言應(yīng)用[M].北京:電子工業(yè)出版社,.3[10]王凌霄.微型計算機(jī)原理及應(yīng)用[M].徐州:中國礦業(yè)大學(xué)出版社,[11]康華光.電子技術(shù)基礎(chǔ)(模擬部分)[M].高等教育出版社.1999[12]康華光.電子技術(shù)基礎(chǔ)(數(shù)字部分)[M].高等教育出版社.1999[13]何希才.常用電子電路應(yīng)用365例[M].北京:電子工業(yè)出版社,[14]張肅文.高頻電子線路[M].高等教育出版社.[15]徐曼.電子基礎(chǔ)與技能[M].北京:電子工業(yè)出版社,.6附錄A搶答系統(tǒng)電路原理圖附錄B匯編程序OKEQU20H;搶答開始標(biāo)志位 RINGEQU22H;響鈴標(biāo)志位 ORG0000H AJMPMAIN ORG0003H AJMPINT0SUB ORG000BH AJMPT0INT ORG0013H AJMPINT1SUB ORG001BH AJMPT1INT ORG0040HMAIN:CLRP3.6MOVR1,#30;初設(shè)搶答時間為30sMOVR2,#60;初設(shè)答題時間為60sMOVTMOD,#11H;設(shè)置未定期器/模式1MOVTH0,#0F0HMOVTL0,#0FFH;越高發(fā)聲頻率越高,越尖MOVTH1,#3CHMOVTL1,#0B0H;50ms為一次溢出中斷 SETBEA SETBET0 SETBET1 SETBEX0 SETBEX1;容許四個中斷,T0/T1/INT0/INT1 CLROK CLRRING SETBTR1 SETBTR0;一開始就運(yùn)行定期器,以開始顯示FFF.假如想重新計數(shù),重置TH1/TL1就可以了;=====查詢程序=====START:MOVR5,#0BHMOVR4,#0BHMOVR3,#0BHACALLDISPLAY;未開始搶答時候顯示FFFJBP3.0,NEXT;dddddddACALLDELAYJBP3.0,NEXT;去抖動,假如"開始鍵"按下就向下執(zhí)行,否者跳到非法搶答查詢ACALLBARK;按鍵發(fā)聲MOVA,R1MOVR6,A;送R1->R6,因R1保留了搶答時間SETBOK;搶答標(biāo)志位,用于COUNT只程序中判斷與否查詢搶答MOVR7,#01H;讀搶答鍵數(shù)據(jù)信號標(biāo)志,這里表達(dá)只讀一次有用信號MOVR3,#0AH;搶答只顯示計時,滅號數(shù)AJMPCOUNT;進(jìn)入倒計時程序,"查詢有效搶答的程序"在COUNT里面NEXT:JNBP1.0,FALSE1JNBP1.1,FALSE2JNBP1.2,FALSE3JNBP1.3,FALSE4JNBP1.4,FALSE5JNBP1.5,FALSE6JNBP1.6,FALSE7JNBP1.7,FALSE8 AJMPSTART;=====非法搶答處理程序=====FALSE1:MOVR3,#01HAJMPERRORFALSE2:MOVR3,#02HAJMPERRORFALSE3:MOVR3,#03HAJMPERRORFALSE4:MOVR3,#04HAJMPERRORFALSE5:MOVR3,#05HAJMPERRORFALSE6:MOVR3,#06HAJMPERRORFALSE7:MOVR3,#07HAJMPERRORFALSE8:MOVR3,#08HAJMPERROR;=====INT0(搶答時間R1調(diào)整程序)=====INT0SUB:MOVA,R1MOVB,#0AHDIVABMOVR5,AMOVR4,BMOVR3,#0AHACALLDISPLAY;先在兩個時間LED上顯示R1JNBP3.4,INC0;P3.4為+1s鍵,如按下跳到INCOJNBP3.5,DEC0;P3.5為-1s鍵,如按下跳到DECOJNBP3.1,BACK0;P3.1為確定鍵,如按下跳到BACKOAJMPINT0SUBINC0:MOVA,R1CJNEA,#63H,ADD0;假如不是99,R2加1,假如加到99,R1就置0,重新加起。MOVR1,#00HACALLDELAY1AJMPINT0SUBADD0:INCR1ACALLDELAY1AJMPINT0SUBDEC0:MOVA,R1JZSETR1;假如R1為0,R1就置99DECR1ACALLDELAY1AJMPINT0SUBSETR1:MOVR1,#63HACALLDELAY1AJMPINT0SUBBACK0:RETI;=====INT1(回答時間R2調(diào)整程序)=====INT1SUB:MOVA,R2MOVB,#0AHDIVABMOVR5,AMOVR4,BMOVR3,#0AHACALLDISPLAYJNBP3.4,INC1JNBP3.5,DEC1JNBP3.1,BACK1AJMPINT1SUBINC1:MOVA,R2CJNEA,#63H,ADD1MOVR2,#00HACALLDELAY1AJMPINT1SUBADD1:INCR2ACALLDELAY1AJMPINT1SUBDEC1:MOVA,R2JZSETR2DECR2ACALLDELAY1AJMPINT1SUBSETR2:MOVR2,#63HACALLDELAY1AJMPINT1SUBBACK1:RETI;=====倒計時程序(搶答倒計時和回答倒計時都跳到改程序)=====REPEAT:MOVA,R2;使用錦囊時重新計時MOVR6,ACLRRINGCOUNT:MOVR0,#00H;重置定期器中斷次數(shù)MOVTH1,#3CHMOVTL1,#0B0H;重置定期器RECOUNT:MOVA,R6;R6;保留了倒計時的時間,之前先將搶答時間或回答時間給R6MOVB,#0AHDIVAB;除十分出個位/十位MOV30H,A;十位存于(30H)MOV31H,B;個位存于(31H)MOVR5,30H;取十位MOVR4,31H;取個位MOVA,R6SUBBA,#07HJNCLARGER;不小于5s跳到LARGER,不不小于等于5s會提醒MOVA,R0CJNEA,#0AH,FULL;1s中0.5s向下運(yùn)行CLRRINGAJMPCHECKFULL:CJNEA,#14H,CHECK;下面是1s的狀況,響并顯示號數(shù)并清R0,重新計SETBRINGMOVA,R6JZQUIT;計時完畢MOVR0,#00HDECR6;一秒標(biāo)志減1AJMPCHECKLARGER:MOVA,R0CJNEA,#14H,CHECK;假如1s向下運(yùn)行,否者跳到查"停/顯示"DECR6;計時一秒R6自動減1MOVR0,#00HCHECK:JNBP3.1,QUIT;如按下停止鍵退出JNBOK,CHECKK;只在回答倒計時才有效AJMPNEXTTCHECKK:JNBP3.0,REPEAT;判斷與否使用錦囊NEXTT:ACALLDISPLAYJBOK,ACCOUT;假如是搶答倒計時,如是則查詢搶答,否者跳過查詢繼續(xù)倒數(shù)(這里起到鎖搶答作用)AJMPRECOUNTACCOUT:MOVA,36HJNBACC.0,TRUE1JNBACC.1,TRUE2JNBACC.2,TRUE3JNBACC.3,TRUE4JNBACC.4,TRUE5JNBACC.5,TRUE6JNBACC.6,TZ1JNBACC.7,TZ2AJMPRECOUNTTZ1:JMPTRUE7TZ2:JMPTRUE8QUIT:CLROK;假如按下了"停止鍵"執(zhí)行的程序CLRRINGAJMPSTART;=====正常搶答處理程序=====TRUE1:ACALLBARKMOVA,R2MOVR6,A;搶答時間R2送R6MOVR3,#01HCLROK;由于答題的計時不再查詢搶答,因此就鎖了搶答AJMPCOUNTTRUE2:ACALLBARKMOVA,R2MOVR6,A MOVR3,#02H CLROKAJMPCOUNTTRUE3:ACALLBARKMOVA,R2 MOVR6,AMOVR3,#03HCLROKAJMPCOUNTTRUE4:ACALLBARKMOVA,R2MOVR6,AMOVR3,#04HCLROKAJMPCOUNTTRUE5:ACALLBARKMOVA,R2MOVR6,AMOVR3,#05HCLROKAJMPCOUNTTRUE6:ACALLBARKMOVA,R2 MOVR6,AMOVR3,#06HCLROK AJMPCOUNTTRUE7:ACALLBARKMOVA,R2 MOVR6,AMOVR3,#07HCLROKAJMPCOUNTTRUE8:ACALLBARKMOVA,R2MOVR6,AMOVR3,#08HCLROKAJMPCOUNT;=====犯規(guī)搶答程序=====ERROR:MOVR0,#00HMOVTH1,#3CHMOVTL1,#0B0HMOV34H,R3;犯規(guī)號數(shù)暫存與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論