51單片機(jī)八路搶答器_第1頁(yè)
51單片機(jī)八路搶答器_第2頁(yè)
51單片機(jī)八路搶答器_第3頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、51單片機(jī)八路搶答器計(jì)課程設(shè)計(jì)設(shè)計(jì)題目:八路搶答器學(xué)院系別:電氣工程學(xué)院班級(jí):電氣1001設(shè)計(jì)學(xué)生:xxxx指導(dǎo)老帥:xxx設(shè)計(jì)時(shí)間:2012年6月4日-6月10日摘要搶答器是一種常見(jiàn)的電子產(chǎn)品,尤其是在各類智力競(jìng)猜中,為了實(shí)現(xiàn)選手的公平性,性能優(yōu)良的搶答器往往更能得到各單位的宵睞。這里通過(guò)兩種設(shè)計(jì)方案的對(duì)比,最終選定了用單片機(jī)實(shí)現(xiàn)搶答器電路。由丁單片機(jī)具有可編程定時(shí)器和中斷設(shè)備,便丁實(shí)現(xiàn)編程和時(shí)間的精確控制。所用方案電路結(jié)構(gòu)簡(jiǎn)單,易丁實(shí)現(xiàn),它用4個(gè)七段數(shù)碼管來(lái)顯示,且具有簡(jiǎn)單精準(zhǔn)的報(bào)警電路。所選方案的一個(gè)很重要的特點(diǎn)在丁具有靈活性,主持人可以根據(jù)題目難易進(jìn)行時(shí)間設(shè)定,這樣進(jìn)一步保證了公平性。

2、由丁它具有成本低廉,結(jié)構(gòu)簡(jiǎn)單,且性能優(yōu)良的諸多優(yōu)點(diǎn),必定會(huì)得到廣泛的應(yīng)用。關(guān)鍵詞:搶答器,單片機(jī),七段數(shù)碼管,時(shí)間設(shè)定目錄一方案的概述11.1.1 設(shè)計(jì)容與要求1設(shè)計(jì)容1設(shè)計(jì)要求11.1 設(shè)計(jì)方框圖2搶答器的程序流程3二搶答器單元設(shè)計(jì)與其說(shuō)明72.1主要芯片的介紹72.2程序流程圖10MAX721912MAX7219引腳說(shuō)明122.3.2基本的工作方法13MAX7219初始化142.3.4部分程序功能介紹142.4LCD簡(jiǎn)介162.4.1LCD和LED的區(qū)別162.4.3顯示電路設(shè)計(jì)和LCD的引腳功能說(shuō)明172.4.4液晶顯示模塊17三搶答器電路原圖與仿真193.1搶答器原理圖193.2仿真軟

3、件介紹203.3仿真測(cè)試效果21設(shè)計(jì)總結(jié)錯(cuò)誤!未定義書簽。參考文獻(xiàn)錯(cuò)誤!未定義書簽。附錄一錯(cuò)誤!未定義書簽。附錄二錯(cuò)誤!未定義書簽。方案的概述1.1.1 設(shè)計(jì)容與要求設(shè)計(jì)容1設(shè)計(jì)一個(gè)智力競(jìng)賽搶答器,可同時(shí)供8名選手或8個(gè)代表隊(duì)參加比賽,他們的編號(hào)分別是1、2、3、4、5、6、7、8,各用一個(gè)搶答按鈕,按鈕的編號(hào)與選手的編號(hào)相對(duì)應(yīng),分別是So、S、&S3、S4、&、&、S702給節(jié)目主持人設(shè)置一個(gè)控制開(kāi)關(guān),用來(lái)控制系統(tǒng)的活零(編號(hào)顯示數(shù)碼管滅燈)和搶答的開(kāi)始。3搶答器具有數(shù)據(jù)鎖存和顯示的功能。搶答開(kāi)始后,若有選手按動(dòng)搶答按鈕,編號(hào)立即鎖存,并在LED數(shù)碼管上顯示出選手的編

4、號(hào),同時(shí)蜂鳴器給出音響提示。此外,要封鎖輸入電路,禁止其他選手搶答。優(yōu)先搶答選手的編號(hào)一直保持到主持人將系統(tǒng)活零為止。1.1.2 4用中小規(guī)模集成電路組成智力競(jìng)賽搶答器電路,畫出各單元電路圖和總體邏輯框圖,正確描述各單元功能,合理選用電路器件,畫出完整的電路設(shè)計(jì)圖以與寫出設(shè)計(jì)總結(jié)報(bào)告設(shè)計(jì)要求1、如果想調(diào)節(jié)搶答時(shí)間或答題時(shí)間,按”搶答時(shí)間調(diào)節(jié)”鍵或”答題時(shí)間調(diào)節(jié)"鍵進(jìn)入調(diào)節(jié)狀態(tài),此時(shí)會(huì)顯示現(xiàn)在設(shè)定的搶答時(shí)間或回答時(shí)間值,如想加一秒按一下"加1s"鍵,如果想減一秒按一下"-1s"鍵,時(shí)間LED上會(huì)顯示改變后的時(shí)間,調(diào)整圍為0s99s,0s時(shí)再減1s

5、會(huì)跳到99,99s時(shí)再加1s會(huì)變到0s。2、主持人按"搶答開(kāi)始"鍵,會(huì)有提示音,并立刻進(jìn)入搶答倒計(jì)時(shí)(預(yù)設(shè)30s搶答時(shí)間),如有選手搶答,會(huì)有提示音,并會(huì)顯示其號(hào)數(shù)并立刻進(jìn)入回答倒計(jì)時(shí)(預(yù)設(shè)60s搶答時(shí)間),不進(jìn)行搶答查詢,所以只有第一個(gè)按搶答的選手有效。倒數(shù)時(shí)問(wèn)到小丁5s會(huì)每秒響一下提示音。3、如倒計(jì)時(shí)期間,主持人想停止倒計(jì)時(shí)可以隨時(shí)按"停止"按鍵,系統(tǒng)會(huì)自動(dòng)進(jìn)入準(zhǔn)備狀態(tài),等待主持人按"搶答開(kāi)始"進(jìn)入下次搶答計(jì)時(shí)。4、如果主持人未按”搶答開(kāi)始”鍵,而有人按了搶答按鍵,犯規(guī)搶答,LED上不斷閃爍FF和犯規(guī)號(hào)數(shù)并響個(gè)不停,直到按下”停止

6、"鍵為止。5、P3.0為開(kāi)始搶答,P3.1為停止,p1.0-p1.7為八路搶答輸入數(shù)碼管段選P0口,位選P2口低3位,蜂鳴器輸出為P3.6口。P3.2搶答時(shí)間調(diào)整整,P3.3回答時(shí)間調(diào)整,P3.4為時(shí)間加1調(diào)整,P3.5為時(shí)間減1調(diào)整。6、當(dāng)參賽選手在回答問(wèn)題時(shí)要求使用錦囊,則主持人按下?lián)尨痖_(kāi)始鍵,計(jì)時(shí)重新開(kāi)始。1.1 設(shè)計(jì)方框圖如圖(1-1)所示為八路智力搶答器設(shè)計(jì)的物理模塊劃分如下:顯示模塊(倒計(jì)時(shí)、選手號(hào))語(yǔ)音提示模塊圖1-1設(shè)計(jì)物理框圖通過(guò)主持人的相關(guān)操作(包括開(kāi)始、停止、調(diào)時(shí)、錦囊使用等),以與選手的搶答,顯示模塊與語(yǔ)音模塊應(yīng)能迅速做出正確回應(yīng)。如主持人按下開(kāi)始,語(yǔ)音模塊立

7、刻給以語(yǔ)音提示,顯示模塊立刻顯示搶答倒計(jì)時(shí);當(dāng)有選手搶答,顯示模塊應(yīng)馬上顯示最先搶答的選手號(hào),并進(jìn)入答題倒計(jì)時(shí)而這一切,都有賴丁本設(shè)計(jì)的核心模塊一51單片機(jī)來(lái)控制。通過(guò)一系列的匯編程序,來(lái)控制、實(shí)現(xiàn)相應(yīng)的邏輯功本設(shè)計(jì)部分的較為復(fù)雜的邏輯控制,都是用相應(yīng)的匯編程來(lái)控制實(shí)現(xiàn)的根據(jù)相應(yīng)的設(shè)計(jì)要求,對(duì)本設(shè)計(jì)可作如下分析:1、由設(shè)計(jì)要求1,本設(shè)計(jì)應(yīng)具有搶答時(shí)間調(diào)整和回答時(shí)間調(diào)整程序,并由相應(yīng)引腳來(lái)控制:P3.2搶答時(shí)間調(diào)整,P3.3回答時(shí)間調(diào)整,P3.4為加1s,P3.5為減1s;2、根據(jù)設(shè)計(jì)要求2,本設(shè)計(jì)應(yīng)具有搶答、回答倒計(jì)時(shí)功能,即倒計(jì)時(shí)程序。通過(guò)查詢開(kāi)始鍵的狀態(tài)來(lái)決定是否進(jìn)入搶答倒計(jì)時(shí),開(kāi)始鍵按下

8、后有人搶答便立即進(jìn)入回答倒計(jì)時(shí),倒計(jì)時(shí)小丁5s時(shí),調(diào)用發(fā)聲程序;3、程序中應(yīng)不斷查詢”停止"鍵的狀態(tài),一旦其按下,應(yīng)立即退出,并進(jìn)入查詢程序(用來(lái)查詢開(kāi)始鍵與八路搶答鍵的狀態(tài));4、為使本設(shè)計(jì)具有錦囊功能,在回答倒計(jì)時(shí)過(guò)程中,若按下開(kāi)始鍵,回答倒計(jì)時(shí)重新開(kāi)始。1.2 搶答器的程序流程本設(shè)計(jì)采用P3.2、P3.3分別接搶答時(shí)間調(diào)節(jié)和答題時(shí)間調(diào)節(jié)按鈕,即通過(guò)外部中斷0、外部中斷1分別控制搶答、答題時(shí)間的調(diào)整。因此,設(shè)計(jì)的軟件部分可分為工作模塊、外部中斷0模塊、外部中斷1模塊。對(duì)流程圖的分析,也分三部分來(lái)介紹。(1)工作時(shí)(非調(diào)節(jié)時(shí)間時(shí))的流程平時(shí)正常工作時(shí),程序的流程圖繪制如圖1-2:對(duì)

9、工作流程圖中的某些部分解釋如下:初始化部分:包括對(duì)定時(shí)計(jì)數(shù)器的工作方式、初始化數(shù)值的設(shè)置,還包括對(duì)搶答時(shí)間與答題時(shí)間的預(yù)設(shè),另外,還應(yīng)對(duì)外部中斷0、外部中斷1進(jìn)行開(kāi)放。搶答倒計(jì)時(shí)、回答倒計(jì)時(shí)部分:由丁二者功能的相似性,本設(shè)計(jì)將二者在一個(gè)子程序一一倒計(jì)時(shí)程序中一起編寫。犯規(guī)程序部分:包括對(duì)犯規(guī)選手號(hào)的顯示、報(bào)警器的問(wèn)斷工作。另外,由丁在設(shè)計(jì)要求主持人能隨時(shí)對(duì)工作過(guò)程終止,因此,要不斷查詢停止鍵的狀態(tài),一旦按下,便回到初始化后的狀態(tài);在倒計(jì)時(shí)過(guò)程中還要不斷將與5S比較,當(dāng)小丁5S時(shí),還需調(diào)用發(fā)聲程序;小丁5S后,乂需要不斷將與0較,當(dāng)其等丁零時(shí),立即返回犯規(guī)程序搶答倒甘時(shí)停止商安下7止倒計(jì)時(shí)”我N

10、有人搶答?發(fā)聲發(fā)聲提示NY*回答倒計(jì)時(shí)倒汁時(shí)=的倒計(jì)時(shí)T?開(kāi)始1切始優(yōu):i=開(kāi)始鍵按下“圖1-2工作流程圖(2)外部中斷0(搶答時(shí)間調(diào)整)流程外部中斷0(搶答時(shí)間調(diào)整)的流程圖見(jiàn)圖1-3:圖1-3INT0流程圖一旦因P3.2對(duì)應(yīng)鍵的按下,便進(jìn)入INT0中斷過(guò)程。通過(guò)不斷對(duì)P3.4(加1s)和P3.5(減1s)進(jìn)行不斷的查詢,來(lái)對(duì)搶答時(shí)間進(jìn)行調(diào)整:發(fā)現(xiàn)P3.4按下,就對(duì)原搶答時(shí)間加1s,發(fā)現(xiàn)P3.5下,就對(duì)原搶答時(shí)間減1s并調(diào)用顯示程序。根據(jù)設(shè)計(jì)要求,當(dāng)加至99s時(shí),若再加1s,則時(shí)間變?yōu)?;當(dāng)減至0s后,若再減一秒,時(shí)間變?yōu)?9s。因此,流程中應(yīng)該對(duì)當(dāng)前時(shí)間丁99s或0s比較,再作出相應(yīng)處理。

11、另外,在中斷過(guò)程中還需要不時(shí)對(duì)停止按鈕進(jìn)行查詢,一旦發(fā)現(xiàn)其按下,立即中斷返回。由丁本中斷過(guò)程在返回前一直是循環(huán)執(zhí)行的,因此,只需要在每次循環(huán)末查詢一次即可,如流程圖所示(3)外部中斷1(答題時(shí)間調(diào)整)流程外部中斷1(答題時(shí)間調(diào)整)流程與外部中斷1流程小異。其程序流程參見(jiàn)圖1-4:與搶答時(shí)間調(diào)整類似,一旦因P3.3對(duì)應(yīng)的按鈕按下,便進(jìn)入INT1中斷過(guò)程。通過(guò)不斷對(duì)P3.4(加1s)和P3.5(減1s)進(jìn)行不斷的查詢,來(lái)對(duì)搶答時(shí)間進(jìn)行調(diào)整:發(fā)現(xiàn)P3.4按下,就對(duì)原搶答時(shí)間加1s,發(fā)現(xiàn)P3.5下,就對(duì)原搶答時(shí)間減1s并調(diào)用顯示程序。當(dāng)加至99s時(shí),若再加1s,則時(shí)間變?yōu)?;當(dāng)減至0s后,若再減一秒,

12、時(shí)間變?yōu)?9s。因此,流程中應(yīng)該對(duì)當(dāng)前時(shí)間丁99s或0s比較,再作出相應(yīng)處理。同上,在中斷過(guò)程中,也還需要不時(shí)對(duì)停止按鈕進(jìn)行查詢,一旦發(fā)現(xiàn)其按下,立即中斷返回。二搶答器單元設(shè)計(jì)與其說(shuō)明2.1主要芯片的介紹AT89SC52勺引腳圖如圖2-1所示P10Pl1P12P13P1.4P1.5P16m"3T7777/4040更3?3?35343?VCCPO.OP0JP0.2P0.3P0.4P0.5nnM圖2-1AT89SC52芯片引腳圖1)主要性能本方案所使用的主要芯片是AT89SC52它與MCS-51單片機(jī)產(chǎn)品兼容、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、1000次擦寫周期、全靜態(tài)操作:0Hz3

13、3Hz、三級(jí)加密程序存儲(chǔ)器、32個(gè)可編程I/O口線、三個(gè)16位定時(shí)器/計(jì)數(shù)器八個(gè)中斷源、全雙工UART申行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時(shí)器、雙數(shù)據(jù)指針、掉電標(biāo)識(shí)符。2)功能特性描述At89sc52是一種低功耗、高性能CMOS8微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適丁常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89SC5羽眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下

14、標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工申行口,片晶振與時(shí)鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM定時(shí)器/計(jì)數(shù)器、申口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。8位微控制器8K字節(jié)在系統(tǒng)可編程FlashAT89S52。3)P0、P1口介紹P0口:P0口是一組8位漏極開(kāi)路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流

15、的方式驅(qū)動(dòng)8個(gè)TTL邏輯門電路,對(duì)端口P0寫“1”時(shí),可作為高阻抗輸入端用。在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問(wèn)期間激活部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。P1口:P1是一個(gè)帶部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過(guò)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)椴看嬖谏侠娮?,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。與AT89C51不同之處是,P1.0和P1.1還可分別作

16、為定時(shí)/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX),參見(jiàn)表2-1表2-1P1.0P2.0引腳功能特性4)本方案中用到的一些引腳介紹XTAL1:振蕩器反相放大器的與部時(shí)鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。特殊功能寄存器:在AT89C52片存儲(chǔ)器中,80H-FFH共128個(gè)單元為特殊功能寄存器(SFB°并非所有的地址都被定義,從80H-FFH共128個(gè)字節(jié)只有一部分被定義,還有相當(dāng)一部分沒(méi)有定義。對(duì)沒(méi)有定義的單元讀寫將是無(wú)效的,讀出的數(shù)值將不確定,而寫入的數(shù)據(jù)也將丟失。不應(yīng)將數(shù)據(jù)“1”寫入未定義的單元,由丁這些單元在將來(lái)的產(chǎn)品中可能賦予新的功

17、能,在這種情況下,復(fù)位后這些單元數(shù)值總是“0”。AT89C5舔了與AT89C51所有的定時(shí)/計(jì)數(shù)器0和定時(shí)/計(jì)數(shù)器1夕卜,還增加了一個(gè)定時(shí)/計(jì)數(shù)器2。定時(shí)/計(jì)數(shù)器2的控制和狀態(tài)位位丁T2CON,T2MQDf存器對(duì)(RCAO2HRCAP2L是定時(shí)器2在16位捕獲方式或16位自動(dòng)重裝載方式下的捕獲/自動(dòng)重裝載寄存器。2.2程序流程圖設(shè)定時(shí)間內(nèi)是否有人搶答成?復(fù)位進(jìn)人就緒狀態(tài)F設(shè)定搶答時(shí)間確定,開(kāi)如t(0-99s:之間)F言搶答JF否曰F封鎖鍵盤,進(jìn)入倒計(jì)時(shí)答題時(shí)ra(規(guī)定為如的1!是否按時(shí)搶答?超時(shí)報(bào)警指示進(jìn)入下一輪搶答圖2-2程序流程圖2.3 MAX72192.3.1MAX7219引腳說(shuō)明引腳說(shuō)

18、明見(jiàn)表2-2表2-2MAX7219引腳說(shuō)明引腳號(hào)名稱功能說(shuō)明1Din申行數(shù)據(jù)輸入端在CLK的上升沿?cái)?shù)據(jù)被鎖入芯片部16位移位寄存器。2.3.58.10.11DIG0DIG78位LED位選線,從共陰極LED中吸入電流。4.9GND地線(兩個(gè)GN況、須連在F)。12Load鎖入輸入的數(shù)據(jù)在Load上升沿最后的16位申行數(shù)據(jù)被鎖入。13CLK時(shí)鐘輸入,最局時(shí)鐘頻率為10MHZ在CLK的上升沿?cái)?shù)據(jù)被鎖入部移位寄存器,在CLK的下降沿,數(shù)據(jù)從Dout腳被輸出。14172023Seg"SegG.DP7段驅(qū)動(dòng)和小數(shù)點(diǎn)驅(qū)動(dòng)18Iset該腳通過(guò)一個(gè)電阻與V+相連,設(shè)置峰值段電流。19V+電源電壓,+5

19、V。24Dout申行數(shù)據(jù)輸出。輸入到Din的數(shù)據(jù)在16.5個(gè)時(shí)鐘周期后在Dout腳發(fā)出,該腳用丁與級(jí)聯(lián)擴(kuò)展2.3.1 基本的工作方法MAX721西8031單片機(jī)連接采用三線申行接口,典型應(yīng)用電路如表2-3所示表2-316位數(shù)據(jù)包的數(shù)據(jù)格式如下:D0D7D8D11D12D13D14D15LSBDATAMSBADDRESSxxxxD7D08位數(shù)據(jù)位,D7最高位,D0最低位;D11D8:4位地址位;D15D12:無(wú)關(guān)位,通常全取1。MAX721疝過(guò)D11D84位地址位譯碼,可尋址14個(gè)部寄存器,分別是8個(gè)LED顯小位寄存器,5個(gè)控制寄存器和1個(gè)空操作寄存器。LED顯小寄存器由部8X8靜態(tài)RAM勾成,

20、操作者可直接對(duì)位寄存器進(jìn)行個(gè)別尋址,以刷新和保持?jǐn)?shù)據(jù),只要V+超過(guò)2V(一般為+5V)。控制寄存器包括:譯碼模式,顯示亮度調(diào)節(jié),掃描限制(選擇掃描位數(shù)),關(guān)斷和顯示測(cè)試寄存器。MAX721酗驅(qū)動(dòng)程序首先必須對(duì)5個(gè)控制寄存器(地址分配見(jiàn)表2-4)初始設(shè)置即初始化,各控制寄存器設(shè)置含義如下:譯碼模式選擇寄存器(地址=F9H;共有4種譯碼模式供選擇,當(dāng)數(shù)據(jù)位全0時(shí)選擇“非譯碼方式”。在此方式下,8個(gè)數(shù)據(jù)位分別一一對(duì)應(yīng)7個(gè)段和小數(shù)點(diǎn)。通常選擇此方式。掃描限制寄存器:地址=FBH用丁設(shè)置顯示的LED個(gè)數(shù)(18),當(dāng)D2D1D0111、D7D6D5D4D3關(guān)時(shí),可接8個(gè)LED管。亮度調(diào)節(jié)寄存器:地址=FA

21、H共有16級(jí)選擇,用丁LED顯示亮度的強(qiáng)弱設(shè)置。關(guān)斷模式寄存器:地址=FCH有兩種模式選擇:一種是關(guān)斷狀態(tài)模式(D0=0);一種是正常操作狀態(tài)(D41),通常選擇正常操作狀態(tài)。顯示測(cè)試寄存器:地址=FFH有兩種選擇用丁設(shè)置LED是測(cè)試狀態(tài)還是正常操作狀態(tài):當(dāng)在測(cè)試狀態(tài)時(shí)(D41)各位全應(yīng)亮,一般選擇正常操作狀態(tài)(D0=0)0表2-4寄存器地址分配表寄存器名稱地址D任D12D11D10D9D8空操作XXXX0000Digit0XXXX0001DigitlXXXX0010Digit2XXXX0011Digit3XXXX0100Digit4XXXX0101Digit5XXXX0110Digit6XX

22、XX0111Digit7XXXX1000譯碼模式XXXX1001皆度調(diào)節(jié)XXXX1010掃描限制XXXX1011關(guān)斷模式XXXX1100顯示測(cè)試XXXX1111MAX7219初始化表2-5初始化設(shè)置各項(xiàng)的選擇與對(duì)應(yīng)數(shù)值設(shè)置項(xiàng)目選擇顛倒后的數(shù)值(16位)顯小是度17/325F1FH掃描限制07位DFEFH譯碼方式非譯碼方式9F00H顯示測(cè)試正常操作FF00H關(guān)斷方式正常操作3F80H2.3.4部分程序功能介紹全部程序見(jiàn)附錄二,下面僅介紹部分程序由丁在讀搶答數(shù)據(jù)口的時(shí)候,單片機(jī)首先進(jìn)入倒計(jì)時(shí)程序,再調(diào)用顯示程序,最后才檢測(cè)按鍵口,然而在檢測(cè)按鍵口時(shí)動(dòng)態(tài)掃描要調(diào)用三次(4ms)延時(shí)程序.這樣就會(huì)導(dǎo)致

23、讀數(shù)據(jù)口出現(xiàn)滯后,造成1號(hào)優(yōu)先最高.8號(hào)最低.故采用在延時(shí)子程序中加了讀數(shù)據(jù)口程序.保證了靈敏度和可靠性,程序如下:=加減時(shí)間延時(shí)(起到不會(huì)按下就加N個(gè)數(shù))=DELAY1:MOV35H,#08HLOOPO:ACALLDISPLAYDJNZ35H,LOOP0RET;=延時(shí)4236個(gè)機(jī)器周期(去抖動(dòng)用到)=DELAY:MOV32H,#12HLOOP:MOV33H,#0AFHLOOP1:DJNZ33H,LOOP1DJNZ32H,LOOPRET;=時(shí)4236個(gè)機(jī)器周期(顯示用到)=DELAY2:MOV32H,#43HLOOP3:MOV33H,#1EHMOA,R7;每隔6070個(gè)機(jī)器周期讀一次P1口,全

24、為1時(shí)為無(wú)效數(shù)據(jù),繼續(xù)讀,有一個(gè)不為1時(shí),轉(zhuǎn)到正常搶答處理JNZAAAA1;沒(méi)讀到有效數(shù)據(jù)時(shí)繼續(xù)轉(zhuǎn)到AAAA1LOOP2:DJNZ33H,LOOP2DJNZ32H,LOOP3RET;=教搶答按鍵數(shù)據(jù)口程序=主持人時(shí)間設(shè)定程序如下:ACALLDISPLAY在兩個(gè)時(shí)間LED上顯示R1JNBP3.4,INC0;P3.4為+1s鍵,如按下跳到INCOJNBP3.5,DEC0;P3.5為-1s鍵,如按下跳到DECOJNBP3.1,BACK0;P3.1為確定鍵,如按下跳到BACKO2.4LCD簡(jiǎn)介2.4.1LCD和LED的區(qū)別LED為英文(LightEmittingDiode)的縮寫,是發(fā)光二極管的一種,

25、LCD是液晶顯示器,兩者相差太多.但是用LED的點(diǎn)陣也能組成顯示器,適用丁戶外大屏幕顯示,分辨率較低。LCD為英文(LiquidCrystalDisplay)的縮寫,即液晶顯示器,是一種數(shù)字顯示技術(shù),通過(guò)液晶和彩色過(guò)濾器過(guò)濾光源,在平面面板上產(chǎn)生圖象。與傳統(tǒng)的陰極射線管LCD占用空間小,低功耗,低輻射,無(wú)閃爍,降低視覺(jué)疲勞。LCD技術(shù)能夠顯示更加活晰,明亮的圖象。LED是發(fā)光二極管特點(diǎn):自發(fā)光,從遠(yuǎn)處可以看見(jiàn),價(jià)格相對(duì)較低缺點(diǎn);顯示的容少,一般是數(shù)碼,LED電子滾動(dòng)顯示,等等,很耗電,控制復(fù)雜。由丁LC比匕LED的效果好,所以本設(shè)計(jì)我們選擇了LCD乍為我們?cè)O(shè)計(jì)的顯示器。2.4.2單片機(jī)和分立元

26、件的區(qū)別單片機(jī)相當(dāng)丁一個(gè)集成電路,將一些功能都集成在一個(gè)芯片中,在一小塊芯片中能實(shí)現(xiàn)各種功能的器件。分立元件是指電阻電感電容等器件。這是相對(duì)丁集成電路來(lái)說(shuō)的,比如一個(gè)電路,他用了一個(gè)集成電路,外加一些零件即能實(shí)現(xiàn)需要的功能,而一般來(lái)說(shuō),用分立元件也能實(shí)現(xiàn),但體積可能會(huì)大一些,可靠性可能也差一些。通過(guò)兩者的比較,單片機(jī)明顯優(yōu)丁分立元件,所以本設(shè)計(jì)我們選擇了用單片機(jī)。其系統(tǒng)硬件設(shè)計(jì)如圖2-3對(duì)比度控制液晶顯示單片機(jī)鍵盤輸六圖2-3單片機(jī)系統(tǒng)硬件設(shè)計(jì)2.4.3顯示電路設(shè)計(jì)和LCD的引腳功能說(shuō)明液晶顯示模塊是一種將液晶顯示器件、連接件、集成電路、PCB路板、背光源、結(jié)構(gòu)件等裝配在一起的組件。英文名稱叫

27、“LCDModule”,簡(jiǎn)稱“LCM,中文稱為“液晶顯示模塊”,其流程圖如2-4所示,實(shí)物圖如2-5所示。VSSVdddVoRSR/WDB0DB7如圖2-4LCD流程圖圖2-5LCD1602實(shí)物圖2.4.4液晶顯示模塊表2-6LCD引腳功能編虧符號(hào)引腳說(shuō)明編虧符號(hào)引腳說(shuō)明1VSS電源地9D2雙向數(shù)據(jù)口2VDD電源正極10D3雙向數(shù)據(jù)口3VL對(duì)比度調(diào)節(jié)11D4雙向數(shù)據(jù)口4RS數(shù)據(jù)/命令選擇12D5雙向數(shù)據(jù)口5R/W讀/寫選擇13D6雙向數(shù)據(jù)口6E模塊使能端14D7雙向數(shù)據(jù)口7D0雙向數(shù)據(jù)口15BLK背光源地8D1雙向數(shù)據(jù)口16BLA背光源正極VDD電源正極,4.55.5V,通常使用5V電壓;VL

28、:LCD對(duì)比度調(diào)節(jié)端,電壓調(diào)節(jié)圍為05V。接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,但對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,因此通常使用一個(gè)10K的電位器來(lái)調(diào)整對(duì)比度,或者直接申接一個(gè)電阻到地;RS:MClg入數(shù)據(jù)或者指令選擇端。MCI®寫入指令時(shí),使RS為低電平;MCI®寫入數(shù)據(jù)時(shí),使RS為高電平;R/W讀寫控制端。R/W為高電平時(shí),讀取數(shù)據(jù);R/W為低電平時(shí),寫入數(shù)據(jù);E:LCD模塊使能信號(hào)控制端。寫數(shù)據(jù)時(shí),需要下降沿觸發(fā)模塊。D0D7:8位數(shù)據(jù)總線,三態(tài)雙向。如果MCH勺I/O口資源緊的話,該模塊也可以只使用4位數(shù)據(jù)線D4-D7接口傳送數(shù)據(jù)。本充電器就是采用4位數(shù)據(jù)傳送方式;

29、BLALED背光正極。需要背光時(shí),BLA申接一個(gè)限流電阻接VDDBLK接地,實(shí)測(cè)該模塊的背光電流為50mA右;BLKLED背光地端。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按能顯示多少個(gè)“8”可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽(yáng)極數(shù)碼管和共陰極數(shù)碼管。共陽(yáng)數(shù)碼管是指將所有發(fā)光二極管的陽(yáng)極接到一起形成公共陽(yáng)極(COM)勺數(shù)碼管。共陽(yáng)數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極CO呢到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極

30、接到一起形成公共陰極(COM)勺數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極CO噬到地線GNM,當(dāng)某一字段發(fā)光二極管的陽(yáng)極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陽(yáng)極為低電平時(shí),相應(yīng)字段就不亮。三搶答器電路原圖與仿真3.1搶答器原理圖搶答器電路原理框圖如圖3-1所示,其中右上部分是4個(gè)七段數(shù)碼管,作為顯示輸出部分,左上部分是鐘控部分,除了S1-S8是選手控制按鈕,其余按鈕式主持人控制系統(tǒng)。Ih圖3-1搶答器電路原理框圖QR8330R7330R2330330R4330R6330R5330P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.

31、7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A123938373635343321222324"-254-各按鍵功能介紹如下: SET鍵為復(fù)位鍵,按下復(fù)位鍵系統(tǒng)進(jìn)入就緒狀態(tài);B1、B2分別為30s、60s預(yù)置時(shí)間鍵;“+”、“-”鍵可以調(diào)節(jié)時(shí)間;EN鍵用來(lái)確定自設(shè)時(shí)間;0涮用來(lái)確定一切就緒,按下它系統(tǒng)就進(jìn)入倒計(jì)時(shí)搶答;S1-S8為8個(gè)搶答按鍵。3.2仿真軟件介紹1)Proteus軟件簡(jiǎn)介Proteus組合了高級(jí)原理布圖、混合模式SPICE仿真,PCB設(shè)計(jì)以與自動(dòng)布線來(lái)實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)系統(tǒng)。ISIS是Proteus系統(tǒng)的中心,它遠(yuǎn)不僅是一個(gè)圖表

32、庫(kù)。它是具有控制原理圖畫圖的外觀設(shè)計(jì)環(huán)境。Proteus軟件是一種低投資的電子設(shè)計(jì)自動(dòng)化軟件,提供可仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件和多達(dá)30多個(gè)元件庫(kù)。Proteus軟件提供多種現(xiàn)實(shí)存在的虛擬儀器儀表。此外,Proteus還提供圖形顯示功能,可以將線路上變化的信號(hào),以圖形的方式實(shí)時(shí)地顯示出來(lái)。這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗,盡可能減少儀器對(duì)測(cè)量結(jié)果的影響,Proteus軟件提供豐富的測(cè)試信號(hào)用丁電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。提供SchematicDrawing、SPICE仿真與PCB®計(jì)功能,同時(shí)可以仿真單片機(jī)和周邊

33、設(shè)備,可以仿真51系列、AVRPIC等常用的MCU并提供周邊設(shè)備的仿真,例如373、led、示波器等。Proteus提供了大量的元件庫(kù),有RAIMROM鍵盤、馬達(dá)、LEDLCDAD/DA部分SPI器件、部分IIC器件,編譯方面支持Keil和MPLA辟編譯器。一臺(tái)計(jì)算機(jī)、一套電子仿真軟件,在加上一本虛擬實(shí)驗(yàn)教程,就可相當(dāng)丁一個(gè)設(shè)備先進(jìn)的實(shí)驗(yàn)室。以虛代實(shí)、以軟代硬,就建立一個(gè)完善的虛擬實(shí)驗(yàn)室。在計(jì)算機(jī)上學(xué)習(xí)電工基礎(chǔ),模擬電路、數(shù)字電路、單片機(jī)應(yīng)用系統(tǒng)等課程,并進(jìn)行電路設(shè)計(jì)、仿真、調(diào)試等。2)基本操作步驟1.打開(kāi)PROTEU作界面。2. 選擇“P',從元件庫(kù)中提取需要的元器件(選中雙擊),選

34、擇完點(diǎn)0K在編輯區(qū)畫電路圖,修改元件參數(shù)。3. 進(jìn)行電路仿真。5.保存文件。3)使用Proteus軟件的便利。1. 培養(yǎng)學(xué)習(xí)者實(shí)驗(yàn)設(shè)計(jì)能力,并降低科研投入,不擔(dān)心燒壞設(shè)備和元器件支持創(chuàng)新性設(shè)計(jì)。2. 培養(yǎng)團(tuán)隊(duì)合作能力。3. 提高實(shí)驗(yàn)質(zhì)量,擴(kuò)展學(xué)習(xí)者的思路和提高學(xué)習(xí)者的學(xué)習(xí)興趣。3.3仿真測(cè)試效果經(jīng)測(cè)試達(dá)到了設(shè)計(jì)的效果,下面用發(fā)光LED代替報(bào)警系統(tǒng),則可以看到測(cè)試效果。操作說(shuō)明:主持人按下復(fù)位鍵SET,如果題目比較容易調(diào)節(jié)搶答時(shí)間為22s,按下B1鍵,然后調(diào)節(jié)“-”按鈕,顯示從30的倒計(jì)時(shí),等顯示時(shí)間減到22時(shí),停止按動(dòng)“-”按鈕,再按EN鍵確定,然后按下ON=F始搶答,同時(shí)揚(yáng)聲器響,顯示如圖3

35、-2所示;5號(hào)選手按下鍵搶答成功,立即進(jìn)入倒計(jì)時(shí)答題狀態(tài)如圖3-3所示;如果在所設(shè)時(shí)間選手未能按時(shí)答題,則發(fā)出報(bào)警,如圖3-4和3-5所示。若8位選手均未能在設(shè)定時(shí)間正常搶答,系統(tǒng)同樣進(jìn)入報(bào)警狀態(tài),本系統(tǒng)所有的報(bào)警時(shí)間都設(shè)置為5s。R4330R8330R7330R2330R6330U1C3ONNID1LED-RED28212223XRystalC1SETS1S2XTAL1P0.0/AD0FP0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6RSTP0.7/AD7P2.0/A8P2.1/A9P2.2/A10PSENP2.3/A11ALEP2.

36、4/A12EA-P2.5/A13P2.6/A14P2.7/A15P1.0/T2P3.0/RXDP1.1/T2EXP3.1/TXDP1.2P3.2/MT0-P1.3P3.3/INTP1.4P3.4/T0P1.5P3.5/T1P1.6P3.6/WR-P1.7P3.7/RD1.2310f1215f圖3-2搶答器搶答狀態(tài)S6S7圖3-3搶答器倒計(jì)時(shí)答題狀態(tài)C2U1XTAL1X1CRYSTALXTAL2J1.0/I2=1.7=1.1/T2EX=1.2=1.3=1.4=1.5=1.610pfSET3031R8330330R7TR2R4R5R6330330330P0.3/AD3P3.0/RXDP3.7/RD

37、1D1S6S7LED-REDS7P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P2.0/A8P2.1/A9P0.0/AD0P0.1/AD1P0.2/AD2=3.4/T0=3.5/T1=3.6/WRR3.1/TXD=3.2/INT0R3.3/INW330圖3-4搶答器報(bào)警狀態(tài).11R7II330R2r3303301R4廠,XTAL1R0.0/AD0R0.1/AD1R0.2/AD2XTAL2R0.3/AD3R0.4/AD4=0.5/AD5R0.6/AD6RSTR0.7/AD7R2.0/

38、A8R2.1/A9R2.2/A10=SENR2.3/A11ALER2.4/A12EAR2.5/A13R2.6/A14=2.7/A15R1.0/T2R3.0/RXDR1.1/T2EXR3.1/TXD=12R3.2/INT0=13=3.3/nNTT=14R3.4/T0=1.5R3.5/T1=1.6R3.6/TOR-=1.7R3.7/RD圖3-5搶答器報(bào)警狀態(tài)終總結(jié)此次畢業(yè)設(shè)計(jì)要求我們?cè)诶蠋煹闹笇?dǎo)下獨(dú)立進(jìn)行查閱資料,設(shè)計(jì)方案與組織實(shí)驗(yàn)等工作,并寫出報(bào)告。這次實(shí)驗(yàn)對(duì)于提高我們的素質(zhì)和科學(xué)實(shí)驗(yàn)?zāi)芰Ψ浅S幸?,為以后從事電子電路方面的設(shè)計(jì),研制電子產(chǎn)品打下基礎(chǔ)。通過(guò)這一周的學(xué)習(xí),發(fā)現(xiàn)了白己的很多不足,白己知

39、識(shí)的很多漏洞,看到了白己的實(shí)踐經(jīng)驗(yàn)還是比較缺乏,理論聯(lián)系實(shí)際的能力還急需提高。通過(guò)這次畢業(yè)設(shè)計(jì),為完成這次畢業(yè)設(shè)計(jì)我們確實(shí)很辛苦,但苦中仍有樂(lè),和團(tuán)隊(duì)人員這一周的日子,讓我們有說(shuō)有笑,相互幫助,配合默契,多少人間歡樂(lè)在這里灑下,大學(xué)里兩年的相處還趕不上這兩個(gè)月的實(shí)習(xí),我感覺(jué)我和同學(xué)們之間的距離更加近了。這個(gè)工程確實(shí)很累,但當(dāng)我們仿真實(shí)驗(yàn)成功的時(shí)候,當(dāng)我們連好線,按下按鈕,LED?了起來(lái),喇叭響起的是我一生以來(lái)最好聽(tīng)的聲音,我們的心中就不免興奮,不免激動(dòng)。對(duì)我們而言,知識(shí)上的收獲重要,精神上的豐收更加可喜。在此要特別感我的指導(dǎo)老師對(duì)我們的指導(dǎo),在此向老師說(shuō)一聲,老師您辛苦了!當(dāng)然我也要感我們同組

40、的人的積極合作。在老師的啟發(fā)和我們共同的努力下,我們才能順利的完成畢業(yè)設(shè)計(jì)。在以后的工作中,我一定會(huì)更加努力的學(xué)習(xí),充分的發(fā)揮白己的特長(zhǎng)。1 參考文獻(xiàn)朱運(yùn)利.單片機(jī)技術(shù)應(yīng)用.:機(jī)械工業(yè),2005年1月第一版.2 大彪.電子技能與實(shí)訓(xùn).:電子工業(yè),2004年7月.3 全力,德申.微機(jī)控制技術(shù)與應(yīng)用.:機(jī)械工業(yè),2004年1月第一版.4 閻石.數(shù)字電子電路.:中央廣播電視大學(xué),1993.5 毅坤,善久,龔雪紅.單片微型計(jì)算機(jī)原理應(yīng)用.:電子科技大學(xué),2003.6 田良,黃正瑾,建元.綜合電子設(shè)計(jì)與實(shí)踐.:東南大學(xué).7 素行.模擬電子電路.:中央廣播電視大學(xué),1994.8 康平光.電子技術(shù)基礎(chǔ).:高

41、等教育,2003.9 華.MCS-51單片機(jī)接口技術(shù)與應(yīng)用.:航天航空大學(xué).附錄完整的源程序:OKEQU20H;搶答開(kāi)始標(biāo)志位RINGEQU22H;響鈴標(biāo)志位ORG0000HAJMPMAINORG0003HAJMPINT0SUBORG000BHAJMPT0INTORG0013HAJMPINT1SUBORG001BHAJMPT1INTORG0040HMAIN:MOVR1,#30;初設(shè)搶答時(shí)間為30sMOVR2,#60;初設(shè)答題時(shí)間為60sMOVTMOD,#11H置未定時(shí)器/模式1MOVTH0,#0F0HMOVTL0,#0FFH;越高發(fā)聲頻率越高,越尖MOVTH1,#3CHMOVTL1,#0B0H

42、;50ms為一次溢出中斷SETBEASETBET0SETBET1SETBEX0SETBEX1;允許四個(gè)中斷,T0/T1/INT0/INT1CLROKCLRRINGSETBTR1SETBTR0;START:MOVR5,#0BHMOVR4,#0BHMOVR3,#0BHACALLDISPLAY;未開(kāi)始搶答時(shí)候顯示FFFP3.0,NEXT;dddddddACALLDELAYP3.0,NEXT;去抖動(dòng),如果"開(kāi)始鍵”按下就向下執(zhí)行,否者跳到非法搶答查詢ACALLBARK按鍵發(fā)聲MOVA,R1MOVR6,A;送R1->R6,因?yàn)镽1中保存了搶答時(shí)間SETBOK;搶答標(biāo)志位,用于COUNTS

43、程序中判斷是否查詢搶答MOVR7,#01H;讀搶答鍵數(shù)據(jù)信號(hào)標(biāo)志,這里表示只讀一次有用信號(hào)MOVR3,#0AH搶答只顯示計(jì)時(shí),滅號(hào)數(shù)AJMPCOUNT®入倒計(jì)時(shí)程序,"查詢有效搶答的程序"在COUNT里面NEXT:JNBP1.0,FALSE1JNBP1.1,FALSE2JNBP1.2,FALSE3JNBP1.3,FALSE4JNBP1.4,FALSE5JNBP1.5,FALSE6JNBP1.6,FALSE7JNBP1.7,FALSE8AJMPSTART;=<法搶答處理程序=FALSE1:MOVR3,#01HAJMPERRORFALSE2:MOVR3,#02H

44、AJMPERRORFALSE3:MOVR3,#03HAJMPERRORFALSE4:MOVR3,#04HAJMPERRORFALSE5:MOVR3,#05HAJMPERRORFALSE6:MOVR3,#06HAJMPERRORFALSE7:MOVR3,#07HAJMPERRORFALSE8:MOVR3,#08HAJMPERROR;=INT噬答時(shí)間R1調(diào)整程序)=INT0SUB:MOVA,R1MOVB,#0AHDIVABMOVR5,AMOVR4,BMOVR3,#0AHACALLDISPLAY;先在兩個(gè)時(shí)間LED上顯示R1JNBP3.4,INC0;P3.4為+1s鍵,如按下跳到INCOJNBP3.

45、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:RET

46、I;=INT1(回答時(shí)間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,#63HACALLDELAY1AJM

47、PINT1SUBBACK1:RETI;=倒計(jì)時(shí)程序(搶答倒計(jì)時(shí)和回答倒計(jì)時(shí)都跳到改程序)=REPEAT:MOVA,R2;使用錦盤時(shí)重新計(jì)時(shí)MOVR6,ACLRRINGCOUNT:MOVR0,#00H重置定時(shí)器中斷次數(shù)MOVTH1,#3CHMOVTL1,#0B0H;重置定時(shí)器RECOUNT:MOVA,R6;R睬存了倒計(jì)時(shí)的時(shí)間,之前先將搶答時(shí)間或回答時(shí)間給R6MOVB,#0AHDIVAB;除十分出個(gè)位/十位MOV30H,A;十位存于(30H)MOV31H,B;個(gè)位存于(31H)MOVR5,30H;取十位MOVR4,31H;取個(gè)位MOVA,R6SUBBA,#07HJNCLARGE啾于5s跳到LAR

48、GER、于等于5s會(huì)提醒MOVA,R0CJNEA,#0AH,FULL;1s中0.5s向下運(yùn)行CLRRINGAJMPCHECKFULL:CJNEA,#14H,CHECK;下面是1s的情況,響并顯示號(hào)數(shù)并清R0,重新計(jì)SETBRINGMOVA,R6JZQUIT;計(jì)時(shí)完畢MOVR0,#00HDECR6;一秒標(biāo)志減1AJMPCHECKLARGER:MOVA,R0CJNEA,#14H,CHECK如果1s向下運(yùn)行,否者跳到查"停/顯示"DECR6;計(jì)時(shí)一秒R6自動(dòng)減1MOVR0,#00HCHECK:JNBP3.1,QUIT;如按下停止鍵退出JNBOK,CHECKK只在回答倒計(jì)時(shí)才有效A

49、JMPNEXTTCHECKK:JNBP3.0,REPEAT;判斷是否使用錦盤NEXTT:ACALLDISPLAYOK,ACCOUT如果是搶答倒計(jì)時(shí),如是則查詢搶答,否者跳過(guò)查詢繼續(xù)倒數(shù)(這里起到鎖搶答作用)AJMPRECOUNTACCOUT:MOVA,36HJNBACC.0,TRUE1JNBACC.1,TRUE2JNBACC.2,TRUE3JNBACC.3,TRUE4JNBACC.4,TRUE5JNBACC.5,TRUE6JNBACC.6,TZ1JNBACC.7,TZ2AJMPRECOUNTTZ1:JMPTRUE7TZ2:JMPTRUE8QUIT:CLROK;如果按下了"停止鍵&qu

50、ot;執(zhí)行的程序CLRRINGAJMPSTART;=常搶答處理程序=TRUE1:ACALLBARKMOVA,R2MOVR6,A;搶答時(shí)間R2送R6MOVR3,#01HCLROK;因?yàn)榇痤}的計(jì)時(shí)不再查詢搶答,所以就鎖了搶答AJMPCOUNTTRUE2:ACALLBARKMOVA,R2MOVR6,AMOVR3,#02HCLROKAJMPCOUNTTRUE3:ACALLBARKMOVA,R2MOVR6,AMOVR3,#03HCLROKAJMPCOUNTTRUE4:ACALLBARKMOVA,R2MOVR6,AMOVR3,#04HCLROKAJMPCOUNTTRUE5:ACALLBARKMOVA,R2MOVR6,AMOVR3,#05HCLROKAJMPCOUNTTRUE6:ACALLBARKMOVA,R2MOVR6,AMOVR3,#06HCLROKAJMPCOUNTTRUE7:

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論