版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p><b> 1 系統(tǒng)設(shè)計4</b></p><p> 1.1 設(shè)計任務(wù)與要求4</p><p> 1.2 方案比較與論證4</p><p> 1.3 8051單片機(jī)系統(tǒng)說明5</p><p> 1
2、.3.1 8051單片機(jī)簡介5</p><p> 1.3.2 80C51的時序圖6</p><p> 1.4 8051引角及其功能6</p><p> 1.5 設(shè)計搶答器的目的與意義7</p><p> 2 主要元器件分析8</p><p> 2.1 80C51芯片8</p>
3、<p><b> 2.2 數(shù)碼管8</b></p><p> 3 硬件設(shè)計電路(使用PROTEL軟件設(shè)計)9</p><p> 3.1 單元電路設(shè)計9</p><p> 3.1.1 單片機(jī)最小系統(tǒng)單元設(shè)計9</p><p> 3.1.2 控制電路設(shè)計10</p><p
4、> 3.2 總電路設(shè)計12</p><p> 3.3 PROTEL繪制的PCB圖13</p><p><b> 4 程序設(shè)計14</b></p><p> 4.1、程序流程14</p><p> 4.2、源程序介紹17</p><p><b> 5 功能仿
5、真23</b></p><p><b> 致 謝27</b></p><p><b> 摘 要</b></p><p> 搶答器是一種應(yīng)用非常廣泛的設(shè)備,在各種競猜、搶答場合中,它能迅速、客觀地分辨出最先獲得發(fā)言權(quán)的選手。早期的搶答器只由幾個三極管可控硅、發(fā)光管等組成,能通過發(fā)光管的指示辨認(rèn)出選手
6、?,F(xiàn)在大多數(shù)搶答器均使用單片機(jī)和數(shù)字集成電路,并增加了許多新的功能,如選手號碼顯示、搶按器或搶按后的計時、選手得分顯示等功能。本文介紹了用8051系列單片機(jī)控制的八路智力搶答器。該搶答器除具有基本的搶答功能外,還具有定時、計時和報警功能。</p><p> 關(guān)鍵字:搶答器 ;單片機(jī);報警</p><p><b> 引 言</b></p><p&
7、gt; 在知識比賽與娛樂競賽中,特別是做搶答題目的時候,在搶答過程中,為了知道哪一組或哪一位選手先答題,必須要設(shè)計一個系統(tǒng)來完成這個任務(wù)。如果在搶答中,靠視覺是很難判斷出哪組先答題。利用單片機(jī)系統(tǒng)來設(shè)計搶答器,使以上問題得以解決,即使兩組的搶答時間相差幾微秒,也可分辨出哪組優(yōu)先答題。本文主要介紹了單片機(jī)搶答器設(shè)計及工作原理,以及它的實際用途。系統(tǒng)工作原理本系統(tǒng)采用8051單片機(jī)作為核心??刂葡到y(tǒng)的四個模塊分別為:存儲模塊、顯示模塊、語
8、音模塊、搶答開關(guān)模塊。該搶答器系統(tǒng)通過開關(guān)電路八個按鍵輸入搶答信號;利用蜂鳴器完成語音的錄放功能;利用存儲程序;利用一個數(shù)碼管來完成顯示功能。工作時,用按鍵通過開關(guān)電路輸入各路的搶答信號,經(jīng)單片機(jī)的處理,輸出控制信號,控制數(shù)碼管和蜂鳴器工作。在數(shù)碼管上顯示哪一組先答題,并通過數(shù)碼管顯示選手的序號以及開始倒計時,從而實現(xiàn)整個搶答過程。</p><p> “一種基于單片機(jī)的搶答器”與一般搶答器有四點不同:首先,搶答
9、器反應(yīng)異常靈敏。據(jù)了解,此搶答器的反應(yīng)時間僅為幾十微秒,大大縮短了搶答器的反應(yīng)時間,使搶答器可以迅速高效的工作。其次,搶答質(zhì)量有保證。在搶答過程中,當(dāng)有人首先槍答成功的同時,會伴有響亮的聲音提示,并且,不同的搶答器會有不同的聲音,為比賽更加公正透明化提供了依據(jù)。第三,搶答器設(shè)置了復(fù)位鍵。搶答的活動常常會有幾個環(huán)節(jié)構(gòu)成,為了保證在每個環(huán)節(jié)中槍答器都可以快速高效的運作,使得搶答更加順利的進(jìn)行,此類搶答器設(shè)置了復(fù)位鍵。最后,搶答器利用單片機(jī)技
10、術(shù)。利用這一技術(shù),保證了搶答器擁有上述功能的同時,提高了搶答器的壽命與質(zhì)量,讓搶答器可以更加實用的同時,提高了搶答器的技術(shù)含量。</p><p><b> 1 系統(tǒng)設(shè)計</b></p><p> 1.1 設(shè)計任務(wù)與要求</p><p> 設(shè)計并制作一個基于單片機(jī)8051最簡連線搶答器</p><p><b&
11、gt; 1、基本要求</b></p><p> <1>具有八路輸入,能夠識別最先輸入的信號,顯示選號,并有聲音提示。<2>對回答問題所用的時間進(jìn)行倒計時顯示,并提示結(jié)束時間報警。<3>具有搶答開關(guān)功能,按下該鍵后系統(tǒng)進(jìn)入搶答狀態(tài)。</p><p> <4>主持人能夠及時對電路進(jìn)行屏幕清零,進(jìn)行下一題的搶答2、發(fā)揮部分
12、<1>在按下?lián)尨痖_關(guān)之前的信號判斷為提前搶答,顯示選號,聲音提示,連續(xù)達(dá)到定次數(shù)后限制其搶答。<2>具有設(shè)置上述提及的時間、次數(shù)等參數(shù)的功能。 </p><p> 1.2 方案比較與論證</p><p> 方案一:系統(tǒng)各部分采用中小規(guī)模集成數(shù)字電路,用機(jī)械開關(guān)按鈕作為控制開關(guān),完成搶答輸入信號的觸發(fā)。該方案的特點是中小規(guī)模集成電路應(yīng)用技術(shù)成熟,性能可靠,能方便
13、地完成選手搶答的基本功能,但是由于系統(tǒng)功能要求較高,所以電路連接集成電路相對較多,而且過于復(fù)雜,并且制作過程工序比較煩瑣,使用不太方便。 方案二:該系統(tǒng)采用8051系列單片機(jī)80C51作為控制核心,該系統(tǒng)可以完成運算控制、信號識別以及顯示功能的實現(xiàn)。由于用了單片機(jī),使其技術(shù)比較成熟,應(yīng)用起來方便、簡單并且單片機(jī)周圍的輔助電路也比較少,便于控制和實現(xiàn)。整個系統(tǒng)具有極其靈活的可編程性,能方便地對系統(tǒng)進(jìn)行功能的擴(kuò)張和更改。MCS-51
14、單片機(jī)特點如下: <1>可靠性好:單片機(jī)按照工業(yè)控制要求設(shè)計,抵抗工業(yè)噪聲干擾優(yōu)于一般的CPU,程序指令和數(shù)據(jù)都可以寫在ROM里,許多信號通道都在同一芯片,因此可靠性高,易擴(kuò)充。</p><p> <2>單片機(jī)有一般電腦所必須的器件,如三態(tài)雙向總線,串并行的輸入及輸出引腳,可擴(kuò)充為各種規(guī)模的微電腦系統(tǒng)。 <3> 控制功能強(qiáng):單片機(jī)指令除了輸入輸出指令,邏輯判斷
15、指令外還有更豐富的條件分支跳躍指令。</p><p> 方案比較及其選用依據(jù),顯然方案二比方案一簡單的多,不但從性能上優(yōu)于方案一,而且在使用上及其功能的實現(xiàn)上都較方案一簡潔,并且由于單片機(jī)具有優(yōu)越的高集成電路性,使其工作速度更快、效率更高。另外80C51單片機(jī)采用12MHz的晶振,提高了信號的測量精度,并且使該系統(tǒng)可以通過軟件改進(jìn)來擴(kuò)張功能。而方案一采用了中小規(guī)模集成電路,有其復(fù)雜的電路性能,從而可能會使信號的
16、輸入輸出產(chǎn)生延時及不必要的誤差。依此依據(jù)選擇方案二比較適合。總原理圖見附錄2。</p><p><b> 其原理框圖如下:</b></p><p> 圖1-1 搶答器的原理框圖</p><p> 1.3 8051單片機(jī)系統(tǒng)說明</p><p> 1.3.1 8051單片機(jī)簡介</p><p
17、> 8051系列單片機(jī)是國際上流行多年的代表機(jī)型,是國內(nèi)高校教學(xué)和初學(xué)者入門首選的主流機(jī)型,也是在各種技術(shù)期刊和專業(yè)書籍中出現(xiàn)頻率最高的經(jīng)典機(jī)型。本文以標(biāo)準(zhǔn)80C51為模型,并適當(dāng)兼顧8051系列的共性和常用型號的特性。內(nèi)容主要包括:硬件架構(gòu)、ROM、RAM、指令系統(tǒng)、匯編程序基礎(chǔ)和匯編語言工具鏈、并行端口、定時器、中斷邏輯、復(fù)位邏輯、時鐘電路、電源電路等功能電路的結(jié)構(gòu)和工作原理,以及片內(nèi)程序存儲器編程原理。</p>
18、<p> 1.3.2 80C51的時序圖 </p><p> 時序圖如圖1-2所示:</p><p> 圖1-2 80C51的時序圖</p><p><b> 時序控制電路:</b></p><p> ①主持人將控制開關(guān)撥到“開始”位置時,揚聲器發(fā)聲,搶答電路和定時電路進(jìn)入正常搶答工作狀態(tài)。&
19、lt;/p><p> ?、诋?dāng)參賽選手按動搶答鍵時,揚聲器發(fā)聲,搶答電路和定時電路停止工作。</p><p> ③當(dāng)設(shè)定的搶答時間到,無人搶答時,揚聲器發(fā)聲,同時搶答電路和定時電路停止工作。</p><p> 圖1-3 時序控制電路</p><p> 1.4 8051引角及其功能</p><p> 電源端Vcc
20、 40腳 </p><p> 接地端GND 20腳 圖1-4 80C51的引腳</p><p> 時鐘信號輸入端 XTAL2 18腳</p><p> 時鐘電路引腳 XTAL1 19腳 </p><p> 復(fù)位信號輸入端
21、RST 9腳 ,高電平有效 </p><p> 地址鎖存允許信號端ALE 30腳 ,</p><p> 6分頻振蕩周期, PSEN 29腳 </p><p> 程序存儲器允許輸出信號端 用于讀取外部的程序存儲器,每個機(jī)器周期中兩次有效。</p>
22、<p> EA 31腳 外部程序存儲器地址允許輸入,接高電平時,執(zhí)行片內(nèi)程序存儲器的內(nèi)容,當(dāng)PC超過0fffH時,自動變0。接低電平時,訪問外部程序存儲器。</p><p> P0 39~32腳 8位準(zhǔn)雙向I/O,在做輸入時,要先向口地址80H寫1,此時由內(nèi)部上拉提成高阻態(tài)。</p><p> P1 1~8腳 8位準(zhǔn)雙向I/O口</p>
23、;<p> 1.5 設(shè)計搶答器的目的與意義</p><p> 通過這次課程設(shè)計,掌握80C51單片機(jī)的原理,了解簡單多功能搶答器組成原理,初步掌握多功能搶答器的調(diào)整及測試方法,提高動手能力和排除故障的能力。同時通過本課題設(shè)計與裝配、調(diào)試,提高自己的動手能力,鞏固已學(xué)的理論知識,建立單片機(jī)理論和實踐的結(jié)合,了解多功能搶答器各單元電路之間的關(guān)系及相互影響,從而能正確設(shè)計、計算定時計數(shù)的各個單元電路。
24、初步掌握多功能搶答器的調(diào)整及測試方法,提高動手能力和排除故障的能力。</p><p><b> 設(shè)計思路:</b></p><p> 搶答器是一種應(yīng)用非常廣泛的設(shè)備,在各種競賽、搶答場合中,它能迅速、客觀地分辨出最先獲得發(fā)言權(quán)的選手。早期的搶答器只由幾個三極管、可控硅、發(fā)光管等組成,能通過發(fā)光管的指示辯認(rèn)出選手號碼?,F(xiàn)在大多數(shù)搶答器均使用單片機(jī)(如MCS-51型)
25、和數(shù)字集成電路,并增加了許多新功能,如選手號碼顯示、搶按前或搶按后的計時、選手得分顯示等功能。</p><p> 本課題利用80C51單片機(jī)及外圍接口實現(xiàn)的搶答系統(tǒng),利用單片機(jī)的定時器/計數(shù)器定時和記數(shù)的原理,將軟、硬件有機(jī)地結(jié)合起來,使得系統(tǒng)能夠正確地進(jìn)行計時,同時使數(shù)碼管能夠正確地顯示時間和選手號碼。用開關(guān)做鍵盤輸出,蜂鳴器發(fā)生提示。系統(tǒng)達(dá)到要求:在搶答中,只有開始后搶答才有效,如果在開始搶答前</p
26、><p> 搶答為無效;搶答限定時間和回答問題的時間可設(shè)在1-99s設(shè)定;可以顯示是哪位</p><p> 選手有效搶答和無效搶答,正確按鍵后有音樂提示;搶答時間和回答問題時間倒記時顯示,時間完后系統(tǒng)自動復(fù)位;按鍵鎖定,在有效狀態(tài)下,按鍵無效非法。而基于單片機(jī)的競賽搶答器能解決上述的各個問題。</p><p> 2 主要元器件分析</p><
27、p> 2.1 80C51芯片</p><p> 80C51內(nèi)含8位CPU;廣泛的布爾處理能力:32根雙向且分別可尋址的I/O線;128字節(jié)RAM;2個16位定時器/計數(shù)器;全雙工異步串行口(UART);2個中斷優(yōu)先級;5個中斷源;片內(nèi)有時鐘震蕩器;4K字節(jié)片內(nèi)ROM程序儲存器;可尋址的64K字節(jié)外部程序儲存空間;可尋址得64K字節(jié)外部數(shù)據(jù)儲存空間;無片內(nèi)ROM的8051形式是8031,EPROM型是7
28、51,8051AH是采用HMOS工藝制造,所以其管腳與8051兼容。</p><p><b> 2.2 數(shù)碼管</b></p><p> 數(shù)碼管有8個輸入接口和一個共陰極端,8個輸入端分別接A,B,C,D,E,F,G七個顯示管和一個小數(shù)點端DP,數(shù)碼管引腳圖如圖2-1。數(shù)碼管代替二極管,也就是用一位數(shù)字的顯示來代替兩位的二極管,完成同樣的故障顯示功能。數(shù)碼管可以把
29、我們需要的POST代碼顯示出來,在PC的操作系統(tǒng)引導(dǎo)工作完成前,數(shù)碼管顯示的代碼總處于變化狀態(tài)。</p><p> 圖2-1 數(shù)碼管引腳圖</p><p><b> 1、數(shù)碼管使用條件</b></p><p> ?。?)段及小數(shù)點上加限流電阻。</p><p> ?。?)使用電壓:段:根據(jù)發(fā)光顏色決定;小數(shù)點:根據(jù)發(fā)
30、光顏色決定。</p><p> ?。?)使用電流:靜態(tài):總電流80mA(每段10mA);動態(tài):平均電流4-5mA,峰值電流100mA。</p><p> 2、數(shù)碼管使用注意事項說明</p><p> (1)數(shù)碼管表面不要用手觸摸,不要用手去弄引角;</p><p> ?。?)焊接溫度:260度;焊接時間:5s;</p>&l
31、t;p> ?。?)表面有保護(hù)膜的產(chǎn)品,可以在使用前撕下來。</p><p> 3 硬件設(shè)計電路(使用PROTEL軟件設(shè)計)</p><p> 3.1 單元電路設(shè)計</p><p> 3.1.1 單片機(jī)最小系統(tǒng)單元設(shè)計</p><p> 根據(jù)上面的方案分析,本設(shè)計的硬件部分可缺的震蕩、復(fù)位電路構(gòu)成了本設(shè)計的接線圖, 控制系統(tǒng)主要由
32、單片機(jī)應(yīng)用電路、存儲器接口電路、顯示接口電路,搶答電路,主持人控制電路等組成。其中單片機(jī)8051是系統(tǒng)工作的核心,它主要負(fù)責(zé)控制各個部分協(xié)調(diào)工作. 所需元件:該系統(tǒng)的核心器件是8051。在其外圍接上復(fù)位電路、上拉電阻、數(shù)碼管、按鈕及蜂鳴器。元件為:晶振X1、電容C1、C2、 電阻RES、外部中斷0,P3.2由裁判控制,是搶答開始鍵。P1.0-P1.7是8組搶答的輸入口, P2.0--P2.3口為數(shù)碼管的段選口,位選口用的是P0
33、.0--P0.7輸出,P3.7口為蜂鳴器輸出口。P0口和P1口要分別接上上拉電阻。</p><p><b> 設(shè)計如圖3-1所示</b></p><p> 圖3-1 單片機(jī)基本電路</p><p> 3.1.2 控制電路設(shè)計</p><p> 八個開關(guān)按鈕電路圖3-2:</p><p>
34、; 圖3-2 按鈕電路</p><p> 2)蜂鳴器電路圖3-3所示:</p><p> 圖3-3 蜂鳴器電路</p><p> 該電路是由單片機(jī)P3.7端口輸出信號經(jīng)過三極管驅(qū)動放大后使蜂鳴器發(fā)出聲音。</p><p> 數(shù)碼管顯示電路,如圖3-4所示:</p><p> 圖3-4 數(shù)碼管顯示電路<
35、;/p><p> 該數(shù)碼管電路使用的是共陽數(shù)碼管,通過P0.0-P0.7控制數(shù)碼管的A-G的各個相應(yīng)段,P2.0-P2.3輸出信號通過三極管功率放大后控制哪一個數(shù)碼管顯示。</p><p> 主持人控制電路,如圖3-5所示:</p><p> 圖3-5 主持人控制電路</p><p> 當(dāng)主持人宣布答題開始時,主持人按下迅速S11,如圖
36、可使P3.7端口的電壓拉低,相當(dāng)是給單片機(jī)一個中斷,單片機(jī)開始倒計時。</p><p> 3.2 總電路設(shè)計</p><p> 本系統(tǒng)程序設(shè)計采用T0的溢出中斷來實現(xiàn)倒計時定時,采用T0的溢出中斷來使喇叭發(fā)出一定頻率的聲音;用一個兩位LED來顯示倒計時,另外用一個兩位LED顯示選手號。其中,倒計時顯示的兩位LED用的是共陰極接法,選手號顯示LED用的是共陰極接法;并且通過動態(tài)顯示法(
37、即位選控制)來實現(xiàn)四個LED的同時顯示。如附錄1所示。</p><p> 3.3 PROTEL繪制的PCB圖</p><p> 如圖,我們將繪制出的PCB圖打印出來如圖所示,最后就可以經(jīng)過自己刷板或者工廠刷板后得到我們的印制電路板了。</p><p> 圖3-6 搶答器PCB圖</p><p> 圖3-7 印制板底部布線圖
38、 圖3-8 印制板元器件面擺放圖</p><p><b> 4 程序設(shè)計</b></p><p><b> 4.1、程序流程</b></p><p> 由方案分析知,本設(shè)計涉及到的功能子程序包括:查詢程序、非法搶答處理程序、INT0(調(diào)搶答時間)、INT1(調(diào)回答時間)、倒計時程序、
39、正常搶答處理程序、犯規(guī)搶答程序、顯示程序、發(fā)聲程序、T0溢出中斷(響鈴程序)、T1溢出中斷(計時程序)。</p><p> 由設(shè)計的硬件部分看到,本設(shè)計采用P3.2、P3.3分別接搶答時間調(diào)節(jié)和答題時間調(diào)節(jié)按鈕,即通過外部中斷0、外部中斷1分別控制搶答、答題時間的調(diào)整。因此,設(shè)計的軟件部分可分為工作模塊、外部中斷0模塊、外部中斷1模塊。對流程圖的分析,也分三部分來介紹。</p><p>
40、 工作時(非調(diào)節(jié)時間時)的流程</p><p> 平時正常工作時,程序的流程圖繪制如圖4-1:</p><p> 圖4-1 搶答器工作流程圖</p><p> 對工作流程圖中的某些部分解釋如下:</p><p> 初始化部分:包括對定時計數(shù)器的工作方式、初始化數(shù)值的設(shè)置,還包括對搶答時間與答題時間的預(yù)設(shè),另外,還應(yīng)對外部中斷0、
41、外部中斷1進(jìn)行開放。</p><p> 搶答倒計時:當(dāng)主持人按下?lián)尨疰I后,系統(tǒng)進(jìn)入中斷程序,開始計時,本次設(shè)計為10S。 </p><p> 犯規(guī)程序部分:包括對犯規(guī)選手號的顯示、報警器的間斷工作,程序停止運行,并顯示犯規(guī)的選手號碼。</p><p> 另外,由于在設(shè)計要求主持人能隨時對工作過程終止,因此,要不斷查詢停止鍵的狀態(tài),一旦按下,便回到初始化后的狀態(tài)
42、;在倒計時過程中設(shè)定5S報警,因此程序在運行中要不斷與5S比較,當(dāng)小于5S時,還需調(diào)用發(fā)聲程序;小于5S后, 又需要不斷將與0較,當(dāng)其等于零時,立即返回。</p><p> 2)外部中斷0(搶答時間調(diào)整)流程</p><p> 外部中斷0(搶答時間調(diào)整)的流程圖見圖4-2:</p><p> 圖4-2 中斷程序流程圖</p><p>
43、; 一旦因P3.2對應(yīng)鍵的按下,便進(jìn)入INT0中斷過程。程序開始對答題選手進(jìn)行時間倒計時,本設(shè)計為10S倒計時,當(dāng)時間還剩5S時,調(diào)入報警子程序,驅(qū)動蜂鳴器發(fā)聲。</p><p> 另外,在中斷過程中還需要不時對停止按鈕進(jìn)行查詢,一旦發(fā)現(xiàn)其按下,立即中斷返回。由于本中斷過程在返回前一直是循環(huán)執(zhí)行的,因此,只需要在每次循環(huán)末查詢一次即可,如流程圖所示。</p><p><b>
44、 3)答題程序流程</b></p><p> 圖4-3 答題流程圖 </p><p> 與搶答時間調(diào)整類似,一旦因P3.2對應(yīng)的按鈕按下,便進(jìn)入INT0中斷過程。通過不斷對P3.2(減1s)進(jìn)行不斷的查詢,來對答題時間進(jìn)行調(diào)整,同上,在中斷過程中,也還需要不時對停止按鈕進(jìn)行查詢,一旦發(fā)現(xiàn)其按下,立即中斷返回。</p><p> 至此,流程圖已
45、介紹完畢,下面將對設(shè)計的源程序進(jìn)行介紹:</p><p><b> 4.2、源程序介紹</b></p><p> 根據(jù)流程圖中的介紹,本設(shè)計的源程序除主程序外,好包括查詢程序、非法搶答處理程序、搶答時間調(diào)整程序、答題時間調(diào)整程序、倒計時程序、正常搶答處理程序、犯規(guī)搶答程序、顯示程序、發(fā)聲程序、T0溢出中斷程序、T1溢出中斷中斷程序。下面將對下面將對其一一介紹。完整
46、的源程序參見附錄2</p><p> a)主程序:包括對兩個定時計數(shù)器的初始化、開中斷、搶答時間和答題時間的預(yù)設(shè)等相關(guān)設(shè)置:</p><p> MAIN: MOV TMOD,#11H ;設(shè)定時器計數(shù)器為模式1</p><p> MOV TH0,#0F0H</p><p> MOV TL0,#0FFH ;設(shè)置喇叭的發(fā)聲頻率&
47、lt;/p><p> MOV TH1,#3CH</p><p> MOV TL1,#0B0H ;設(shè)置T1的溢出中斷周期為50ms </p><p> SETB ET0 ;開放T0</p><p> SETB EX0 ;開放外部中斷0</p><p> CLR OK
48、 ;OK為開始鍵按下的標(biāo)志位(為1時表示按下)</p><p> CLR RING ;RING為響鈴的標(biāo)志位</p><p> SETB TR0 ; 一開始就運行定時器,以開始顯示10.如果想重新計數(shù),重置TH1/TL1就可以了</p><p> MOV R1,#10 ;初設(shè)搶答時間為10s&l
49、t;/p><p> MOV R2,#20 ;初設(shè)答題時間為20s</p><p> b)查詢程序:對開始鍵、停止鍵、時間控制鍵、八路搶答鍵進(jìn)行查詢,若為按下,則消抖后,轉(zhuǎn)入相應(yīng)功能子程序(或調(diào)用某子程序):</p><p> START: MOV R5,#00H ;倒計時個位賦初值0</p><p> MO
50、V R4,#01H ;倒計時十位賦初值1</p><p> MOV R3,#0BH ;選手號賦初值F</p><p> ACALL DISPLAY ;未開始搶答時,顯示10</p><p> JB P3.2,NEXT ;開始鍵未按下(值為1),則跳至NEXT</p><p> ACALL
51、DELAY ;按下,則調(diào)顯示子程序,同時也起到延時作用</p><p> JB P3.2,NEXT ;去抖動,若開始鍵未按下,則跳到非法搶答查詢</p><p> ACALL BARK ;按鍵發(fā)聲</p><p><b> MOV A,R1</b></p><p> MOV R6
52、,A ;送R1->R6,因為R1中保存了搶答時間</p><p> SETB OK ;搶答標(biāo)志位,用于COUNT只程序中判斷是否查詢搶答</p><p> MOV R7,#01H ;讀搶答鍵數(shù)據(jù)信號標(biāo)志,這里表示只讀一次有用信號</p><p> MOV R3,#0AH ;搶答只顯示計時,滅號數(shù)</p>&
53、lt;p> AJMP COUNT ;進(jìn)入倒計時程序,"查詢有效搶答的程序"在COUNT里面</p><p> NEXT: JNB P1.0,FALSE1 ;下面為查詢是否有選手犯規(guī),是則跳入非法搶</p><p> JNB P1.1,FALSE2 ;答處理程序</p><p> JNB P1.2,FALSE3</
54、p><p> JNB P1.3,FALSE4</p><p> JNB P1.4,FALSE5</p><p> JNB P1.5,FALSE6</p><p> JNB P1.6,FALSE7</p><p> JNB P1.7,FALSE8</p><p> AJMP START&l
55、t;/p><p> c) 非法搶答處理程序</p><p> 隨著查詢程序,若在查詢程序中發(fā)現(xiàn)有選手提前搶答,則程序轉(zhuǎn)到非法搶答處理程序開始執(zhí)行。比如,檢測到選手1犯規(guī),則執(zhí)行以下語句:</p><p> FALSE1: MOV R3,#01H ;送選手號</p><p> AJMP ERROR ;轉(zhuǎn)犯規(guī)搶答程序<
56、;/p><p> 按照以上方法,可以得到FALSE2至FALSE8的編寫方法,可參見附錄源程序中的非法搶答處理程序部分。 </p><p> d) INT0處理程序(搶答時間程序)</p><p> 當(dāng)P3.2按下后,程序轉(zhuǎn)入INT0中斷處理程序,程序流程參見圖四INT0流程圖。另外,在調(diào)用顯示程序前,還需要對當(dāng)前搶答時間進(jìn)行十六進(jìn)制——十進(jìn)制轉(zhuǎn)換,將個位存入
57、R4,十位存入R5,選手號不顯示(R3存入0AH),具體編寫參見附錄源程序。</p><p><b> e) 倒計時程序</b></p><p> 這里的倒計時程序包括搶答倒計時和答題倒計時,為了編寫方便,最后五秒的倒計時提示也包含在本部分。</p><p> 程序中,首先要對T0溢出中斷次數(shù)清零(一次中斷為50ms),因為定時計數(shù)器0選
58、用的是方式1,沒有自動載入計數(shù)初值的功能,這里還需要對其賦初(3CB0H),每當(dāng)T0溢出中斷次數(shù)達(dá)到20次(50ms×20=1s),就對倒計時減一。同樣,這里需要調(diào)用到顯示子程序,因此,也需要將倒計時轉(zhuǎn)換為十進(jìn)制,分別個位、十位分別存入R4、R5。如果是在搶答倒計時,在倒計時過程中,若查詢有人搶答,則要立即跳轉(zhuǎn)到正常處理程序執(zhí)行。當(dāng)?shù)褂嫊r小于等于5s時,通過每秒鐘響0.5s鈴來給與提示。另外,還要不斷對停止鍵查詢,一旦發(fā)現(xiàn)其按
59、下,則跳轉(zhuǎn)到查詢程序。</p><p> 若倒計時及時完畢,也是跳轉(zhuǎn)到查詢程序。</p><p> g)正常搶答處理程序</p><p> 在進(jìn)行搶答倒計時的過程中,若有選手搶答,則程序轉(zhuǎn)入搶答倒計時執(zhí)行。先按鍵發(fā)聲,再將答題時間送入R6,進(jìn)入答題倒計時,并將選手號送R3,以便顯示。另外,還需要對開始標(biāo)志位清零,來封鎖其他選手的搶答。這里以選手一的搶答為例:若
60、檢測到選手一最先搶答,則執(zhí)行以下程序:</p><p> TRUE1: ACALL BARK ;調(diào)用發(fā)聲提示,按鍵發(fā)聲</p><p> MOV A,R2 </p><p> MOV R6,A ;答題時間R2送倒數(shù)計時R6</p><p> MOV R3,#01H ;選手號送R3(以便顯示)</
61、p><p> CLR OK ;封鎖其他選手搶答</p><p> AJMP COUNT ;跳至倒計時程序</p><p> 同理,可以得到其他選手的處理程序。詳細(xì)程序請參見附錄源程序中正常搶答處理程序部分。</p><p><b> h) 犯規(guī)搶答程序</b></p><p&
62、gt; 當(dāng)選手在開始鍵按下之前進(jìn)行了搶答,程序先轉(zhuǎn)到非法處理程序執(zhí)行,非法處理程序確定是哪位選手犯規(guī)后,就轉(zhuǎn)入犯規(guī)搶答程序。</p><p> 在進(jìn)入犯規(guī)處理程序后,首先對定時計數(shù)器1的溢出中斷次數(shù)清零,并對其賦初值(3CB0H),再滅顯示0.3s,接著顯示選手號并響鈴0.5s。直至檢查到停止按鈕按下,才返回到查詢程序。</p><p> ERROR: MOV R0,#00H
63、 ;定時計數(shù)器1的溢出中斷次數(shù)清零</p><p> MOV TH1,#3CH ;對定時計數(shù)器其賦初值</p><p> MOV TL1,#0B0H</p><p> MOV 34H,R3 ;犯規(guī)選手號暫存入(34H)</p><p> HERE: MOV A,R0</p>
64、<p> CJNE A,#06H,FLASH ;0.3s內(nèi),滅顯示并停止響鈴</p><p> CLR RING ;響鈴標(biāo)志清零</p><p> MOV R3,#0AH ;滅選手號</p><p> MOV R4,#0AH ;滅倒計時</p><p> MO
65、V R5,#0AH </p><p> AJMP CHECK1 ;檢查停止鍵</p><p> FLASH: CJNE A,#0CH,CHECK1 ;閃爍程序,(后 0.5s), </p><p> SETB RING ;響鈴</p><p> MOV R0,#00H ;溢
66、出中斷數(shù)清零</p><p> MOV R3,34H ;取回選手號</p><p> MOV R5,#0BH</p><p> MOV R4,#0BH ;顯示犯規(guī)選手號數(shù)</p><p> AJMP CHECK1 ;檢查停止鍵</p><p> CH
67、ECK1: JNB P3.1,QUIT1 ;按下則返回</p><p> ACALL DISPLAY ;調(diào)用顯示程序</p><p><b> AJMP HERE</b></p><p> QUIT1: CLR RING ;返回前準(zhǔn)備(開始、響鈴標(biāo)志位清零)</p><
68、;p> CLR OK </p><p> AJMP START ;返回至查詢程序</p><p><b> i) 顯示程序</b></p><p> 這里的顯示包括對時間和選手號的顯示。從程序來講包括對搶答、答題倒計時,調(diào)節(jié)倒計時,最先搶答選手號,犯規(guī)選手號的顯示。根據(jù)
69、前面的安排,用R3存選手號,R4存倒計時十位,R4存倒計時個位。</p><p> 本顯示程序采用查表法,動態(tài)顯示各位。</p><p> 下面就以R3(選手號)的動態(tài)顯示為例,來介紹程序的編寫。</p><p> MOV DPTR,#DAT1 ;取表的首地址</p><p> MOV A,R3 ;取R3值(
70、決定與表首地址的偏移)</p><p> MOVC A,@A+DPTR ;查表</p><p> CPL A ;這里用的是共陽極顯示,需要將共陰極的段選碼取反</p><p> MOV P2,#001B ;位選確定。這里與硬件接法密切相關(guān)</p><p> MOV P0,A
71、 ;送段選信號</p><p> 從程序中可以看到,顯示程序的編寫,需要嚴(yán)格根據(jù)具體接線編寫。R4與R5的顯示程序與此大同小異,只需要將位選改為對應(yīng)位即可,具體參見附錄中源程序部分。</p><p> j) 發(fā)聲程序與T0中斷程序</p><p> 一旦開始鍵或搶答鍵按下,或因非法搶答,或者倒計時進(jìn)入最后5s,都需要調(diào)用到發(fā)聲子程序,它與T0中斷程序共同來完
72、成發(fā)聲的功能。</p><p> 發(fā)生程序的要完成的操作比較簡單,即只需將響鈴標(biāo)志位置1一段時間后,再將其清零。時間的長短通過調(diào)用延時程序來控制。其形式為:</p><p> BARK: SETB RING</p><p> ACALL DELAY </p><p><b> CLR RIN
73、G </b></p><p><b> RET</b></p><p> 而T0中斷程序,是根據(jù)為其設(shè)定的中斷頻率(由初值確定),來檢測響鈴標(biāo)志位,若其為1,則將P3.7取反,來發(fā)出一定頻率的聲音。由于定時計數(shù)器設(shè)定的模式為模式一,這里還需要對其重新載入初值。具體編寫參見附錄源程序。</p><p> 除了上面介紹的功能子程序
74、,本設(shè)計還時時要用到延時程序,包括對按鍵消抖的延時、顯示延時。具體編寫參見附錄源程序中延時程序部分。 </p><p> 至此,所有子程序的編寫已介紹完畢。</p><p><b> 5 功能仿真</b></p><p> 在試驗檢測前,利用Proteus軟件對本設(shè)計進(jìn)行了仿真, 對各個要求進(jìn)行了驗證.</p><
75、;p> 仿真運行后,界面如圖5-1:</p><p> 圖5-1 開始運行后界面</p><p> 按下?lián)尨痖_始鍵后,進(jìn)入圖5-2界面,進(jìn)入搶答倒計時:</p><p> 圖5-2 搶答倒計時</p><p> 當(dāng)3號選手最先按下?lián)尨疰I后,進(jìn)入下面界面?;卮鸬褂嫊r開始工作:</p><p> 圖5-
76、3 回答倒計時界面</p><p> 當(dāng)8號選手最先按下?lián)尨疰I后,進(jìn)入下面界面?;卮鸬褂嫊r開始工作:</p><p> 圖5-4 回答倒計時界面</p><p> 有人在開始鍵按下前搶答,即犯規(guī)搶答時,界面如下,將顯示搶答選手號碼。:</p><p> 圖5-5 犯規(guī)搶答界面</p><p><b&g
77、t; 結(jié) 論</b></p><p> 搶答器主要應(yīng)用在一些娛樂活動中,搶答器又稱第一信號鑒頻器。搶答器的出現(xiàn)解決了過去舉手搶答的方式。這樣不但增強(qiáng)了可靠性,而且提高了公平性,值得選手信賴。由于搶答器的出現(xiàn)為娛樂領(lǐng)域中的搶答環(huán)節(jié)提供了方便。</p><p> 搶答器應(yīng)用的一個關(guān)鍵問題是對其工作的穩(wěn)定性,可靠性,快速性的設(shè)計要求嚴(yán)格。搶答器主要利用數(shù)字電路的編碼,譯碼和定
78、時功能來實現(xiàn),或者利用單片機(jī)控制來完成,即智能化設(shè)計。</p><p> 本設(shè)計定位于本學(xué)科發(fā)展方向?qū)纹瑱C(jī)的編程及數(shù)字電路的應(yīng)用進(jìn)行研究,并且得到一些有意義的結(jié)論。搶答器的出現(xiàn)已經(jīng)很多年,并且種類很多。目前搶答器的功能是較為完善的,即智能化,可靠性高,速度快,工作穩(wěn)定。本設(shè)計采用了部分智能化,在搶答時間方面還須改進(jìn),而且在準(zhǔn)確性方面也有待于改進(jìn)。本設(shè)計的進(jìn)一步設(shè)計應(yīng)該是無限時的答題時間控制且用單片機(jī)來完成。&
79、lt;/p><p> 一年多的單片機(jī)學(xué)習(xí)主要是課本上理論知識的學(xué)習(xí),這些理論知識遠(yuǎn)不能滿足對單片機(jī)的應(yīng)用的要求,這次設(shè)計給我們提供了一次很好的理論聯(lián)系實際的機(jī)會,使得我們對單片機(jī)的功能以及應(yīng)用有了更深刻的了解和認(rèn)識。</p><p> 另外,程序設(shè)計是本次設(shè)計的一個難點,由于對指令的運用不夠熟練使得在編程時屢屢碰壁。特別對于一些中斷程序,因涉及到一些標(biāo)志位而使得編程難度更高,雖然通過查資料
80、以及同學(xué)老師的指導(dǎo)解決了這些問題,但編程方面的欠缺還是很大的,這為我以后的學(xué)習(xí)業(yè)敲響了警鐘,在以后我應(yīng)加強(qiáng)這方面的練習(xí)以提高自己。</p><p> 由于時間以及自己的能力有限,這次的設(shè)計中難免會有一些遺漏和不足,希望老師批評指正。</p><p><b> 致 謝</b></p><p> 四年的大學(xué)生活即將結(jié)束,為期半個月的課程設(shè)計
81、也接近了尾聲。此次課程設(shè)計的完成,凝聚著許多人的關(guān)懷和幫助。首先要感謝我敬愛的指導(dǎo)教師xx老師,他對我的學(xué)習(xí)和工作嚴(yán)格要求,并耐心地教導(dǎo)激勵我們積極進(jìn)取,培養(yǎng)我們形成良好的科研作風(fēng),所有這些,我們將終生受益。在此,我對xx老師的培養(yǎng)和幫助深表感謝,本設(shè)計是在xx老師的悉心指導(dǎo)下完成的,在整個實際階段,xx老師除了給我提出方案外,也留給我主動解決問題的空間,使我在整個過程中很好的鍛煉了自主分析和解決問題的能力。</p>&l
82、t;p> 課程設(shè)計本身就是一個將理論和實際工作結(jié)合起來的演習(xí),是xx老師的指導(dǎo)和幫助教會我獨立思考,自主分析和解決問題,為我今后走出校門邁向工作崗位奠定了堅實的基礎(chǔ),并激勵著我在今后的人生道路上不斷開拓進(jìn)取,勇往直前。我再一次對xx老師的培養(yǎng)和關(guān)懷表示誠摯的謝意!同時,還要感謝和我一起同學(xué)們,他們在我設(shè)計期間給予我很多幫助,沒有大家的幫助,我將無法順利完成設(shè)計,再次致以衷心的感謝。</p><p> 再
83、次真誠地感謝所有在我四年讀書期間幫助過我的老師、同學(xué)和朋友!</p><p><b> 參考文獻(xiàn)</b></p><p> [1]李朝青.單片機(jī)原理及接口技術(shù)(修訂版).北京:北京航空航天大學(xué)出版社,1998[2]李廣弟.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,1992[3]何立民.單片機(jī)應(yīng)用技術(shù)大全.北京:北京航空航天大學(xué)出版社, 1994[4]張毅剛.
84、 單片機(jī)原理及接口技術(shù).哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990[5]譚浩強(qiáng).單片機(jī)課程設(shè)計. 北京:清華大學(xué)出版社,1989</p><p><b> 附錄1</b></p><p><b> 總程序清單</b></p><p> OK EQU 20H ;搶答開始標(biāo)志位;</p><p>
85、 RING EQU 22H ;響鈴標(biāo)志位</p><p><b> ORG 0000H</b></p><p><b> AJMP MAIN</b></p><p><b> ORG 0003H</b></p><p> AJMP INT0SUB ;跳轉(zhuǎn)到搶答時間&l
86、t;/p><p><b> ORG 000BH</b></p><p> AJMP T0INT ;T0溢出中斷</p><p><b> ORG 0013H</b></p><p> MAIN: MOV R1,#10H ;初設(shè)搶答時間為10s</p><p>
87、 MOV R2,#5FH ;初設(shè)答題時間為20s</p><p> MOV TMOD,#11H ;設(shè)置未定時器/模式1</p><p> MOV TH0,#0F0H</p><p> MOV TL0,#0FFH ;越高發(fā)聲頻率越高,越尖</p><p><b> SETB EA</b></p>
88、<p><b> SETB ET0</b></p><p><b> SETB EX0</b></p><p><b> CLR OK</b></p><p><b> CLR RING</b></p><p> SETB TR0
89、 </p><p> START: MOV R5,#0BH</p><p> MOV R4,#0BH</p><p> MOV R3,#0BH</p><p> ACALL DISPLAY ;未開始搶答時候顯示FF </p><p> JB P1.0,NEXT ;ddddddd&
90、lt;/p><p> ACALL DELAY</p><p> JB P1.0,NEXT ;去抖動,如果"開始鍵"按下就向下執(zhí)行,否者跳到非法搶答查詢</p><p> ACALL BARK ;按鍵發(fā)聲</p><p><b> MOV A,R1</b></p><p>
91、; MOV R6,A ;送R1->R6,因為R1中保存了搶答時間</p><p> SETB OK ;搶答標(biāo)志位,用于COUNT只程序中判斷是否查詢搶答</p><p> MOV R3,0AH ;搶答只顯示計時,滅號數(shù)</p><p> AJMP COUNT ;進(jìn)入倒計時程序,"查詢有效搶答的程序"在COUN
92、T里面</p><p> NEXT: JNB P1.1,FALSE1</p><p> JNB P1.2,FALSE2</p><p> JNB P1.3,FALSE3</p><p> JNB P1.4,FALSE4</p><p> JNB P1.5,FALSE5</p><p&g
93、t; JNB P1.6,FALSE6</p><p> AJMP START</p><p> FALSE1: ACALL BARK ;按鍵發(fā)聲</p><p> MOV R3,#01H</p><p> AJMP ERROR</p><p> FALSE2: ACALL BARK</p>
94、<p> MOV R3,#02H</p><p> AJMP ERROR</p><p> FALSE3: ACALL BARK</p><p> MOV R3,#03H</p><p> AJMP ERROR</p><p> FALSE4: ACALL BARK</p><
95、;p> MOV R3,#04H</p><p> AJMP ERROR</p><p> FALSE5: ACALL BARK</p><p> MOV R3,#05H</p><p> AJMP ERROR</p><p> FALSE6: ACALL BARK</p><p&g
96、t; MOV R3,#06H</p><p> AJMP ERROR</p><p> INT0SUB:MOV A,R1</p><p> MOV B,#0AH</p><p><b> DIV AB</b></p><p><b> MOV R5,A</b>&l
97、t;/p><p><b> MOV R4,B</b></p><p> MOV R3,#0AH</p><p> ACALL DISPLAY ;先在兩個時間LED上顯示R1</p><p> JNB P3.7,BACK0 ;P3.7為確定鍵,如按下跳到BACKO</p><p>
98、AJMP INT0SUB</p><p> BACK0: RETI :</p><p> COUNT: MOV R0,#00H ;重置定時器中斷次數(shù)</p><p> MOV TH0,#3CH</p><p> MOV TL0,#0B0H ;重置定時器</p><p><b> RECO
99、UNT:</b></p><p> MOV A,R6 ;R6保存了倒計時的時間,之前先將搶答時間或回答時間給R6</p><p> MOV B,#0AH</p><p> DIV AB ;除十分出個位/十位</p><p> MOV 30H,A ;十位存于(30H)</p&g
100、t;<p> MOV 31H,B ;個位存于(31H)</p><p> MOV R5,30H ;取十位</p><p> MOV R4,31H ;取個位</p><p><b> MOV A,R6</b></p><p> SUBB A,#07H</p>
101、;<p> JNC LARGER ;大于5s跳到LARGER,小于等于5s會提醒</p><p><b> MOV A,R0</b></p><p> CJNE A,#0AH,FULL;1s中0.5s向下運行</p><p><b> CLR RING </b></p><
102、;p> AJMP CHECK</p><p> FULL: CJNE A,#14H,CHECK;下面系1s的情況,響并顯示號數(shù)并清R0,重新計</p><p><b> SETB RING</b></p><p><b> MOV A,R6</b></p><p> JZ QUIT
103、 ;計時完畢</p><p> MOV R0,#00H</p><p> DEC R6 ;一秒標(biāo)志減1</p><p> AJMP CHECK</p><p><b> LARGER:</b></p><p><b> MOV A,R0&l
104、t;/b></p><p> CJNE A,#14H,CHECK;如果1s向下運行,否者跳到查"停/顯示"</p><p> DEC R6 ;計時一秒R6自動減1</p><p> MOV R0,#00H</p><p> CHECK: JNB P1.7,QUIT ;如按下停止鍵退出
105、</p><p> ACALL DISPLAY</p><p> JB OK,ACCOUT ;如果是搶答倒計時,如是則查詢搶答,否者跳過查詢繼續(xù)倒數(shù)</p><p> AJMP RECOUNT</p><p> ACCOUT:JNB P1.0,TRUE0</p><p> JNB P1.1,TRUE1<
106、;/p><p> JNB P1.2,TRUE2</p><p> JNB P1.3,TRUE3</p><p> JNB P1.4,TRUE4</p><p> JNB P1.5,TRUE5</p><p> JNB P1.6,TRUE6</p><p> JNB P1.7,TRUE7&
107、lt;/p><p> AJMP RECOUNT</p><p> QUIT: CLR OK ;如果按下了"停止鍵"執(zhí)行的程序</p><p><b> CLR RING</b></p><p> AJMP START</p><p> TRUE0: A
108、CALL BARK ;按鍵發(fā)聲</p><p><b> MOV A,R2</b></p><p> MOV R6,A ;搶答時間R2送R6</p><p> MOV R3,#01H</p><p> CLR OK ;因為答題的計時不再查詢搶答,所以就鎖了搶答</p
109、><p> AJMP COUNT</p><p> TRUE1: ACALL BARK;</p><p><b> MOV A,R2</b></p><p><b> MOV R6,A</b></p><p> MOV R3,#02H</p><p&
110、gt;<b> CLR OK</b></p><p> AJMP COUNT</p><p> TRUE2: ACALL BARK;</p><p><b> MOV A,R2</b></p><p><b> MOV R6,A</b></p><
111、p> MOV R3,#03H</p><p><b> CLR OK</b></p><p> AJMP COUNT</p><p> TRUE3: ACALL BARK;</p><p><b> MOV A,R2</b></p><p><b>
112、 MOV R6,A</b></p><p> MOV R3,#04H</p><p><b> CLR OK</b></p><p> AJMP COUNT</p><p> TRUE4: ACALL BARK;</p><p><b> MOV A,R2<
113、/b></p><p><b> MOV R6,A</b></p><p> MOV R3,#05H</p><p><b> CLR OK</b></p><p> AJMP COUNT</p><p> TRUE5: ACALL BARK;</p&g
114、t;<p><b> MOV A,R2</b></p><p><b> MOV R6,A</b></p><p> MOV R3,#06H</p><p><b> CLR OK</b></p><p> TRUE6: ACALL BARK;</
115、p><p><b> MOV A,R2</b></p><p><b> MOV R6,A</b></p><p> MOV R3,#06H</p><p><b> CLR OK</b></p><p> TRUE7: ACALL BARK;&l
116、t;/p><p><b> MOV A,R2</b></p><p><b> MOV R6,A</b></p><p> MOV R3,#06H</p><p><b> CLR OK</b></p><p> AJMP COUNT</p&
117、gt;<p> ERROR: MOV R0,#00H</p><p> MOV TH1,#3CH</p><p> MOV TL1,#0B0H</p><p> MOV 34H,R3 ;犯規(guī)號數(shù)暫存與(34H)</p><p> HERE: MOV A,R0</p><p>
118、 CJNE A,#0AH,FLASH ;0.5s向下運行->滅并停響</p><p><b> CLR RING </b></p><p> MOV R3,#0AH</p><p> MOV R4,#0AH</p><p> MOV R5,#0AH ;四燈全滅</p><
119、p> AJMP CHECK1</p><p> FLASH: CJNE A,#14H,CHECK1 ;下面系1s的情況,響并顯示號數(shù)并清R0,重新計</p><p><b> SETB RING</b></p><p> MOV R0,#00H</p><p> MOV R3,34H ;取
120、回號數(shù)</p><p> MOV R5,#0BH</p><p> MOV R4,#0BH ;顯示FF和號數(shù)</p><p> AJMP CHECK1</p><p> CHECK1:JNB P1.7,QUIT1</p><p> ACALL DISPLAY</p><p&g
121、t;<b> AJMP HERE</b></p><p> QUIT1: CLR RING</p><p><b> CLR OK</b></p><p> AJMP START</p><p><b> DISPLAY:</b></p><p&g
122、t; MOV DPTR,#DAT1;利用P0口做段選碼口輸出/P2低四位做位選碼輸出</p><p><b> MOV A,R5</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,#01H</p><p><b> MOV P0,A</b></p
123、><p> ACALL DELAY</p><p> MOV DPTR,#DAT2</p><p><b> MOV A,R4</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,#02H</p><p><b> MO
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)八路搶答器課程設(shè)計
- 單片機(jī)課程設(shè)計---八路搶答器
- 單片機(jī)八路搶答器課程設(shè)計
- 課程設(shè)計---單片機(jī)八路搶答器設(shè)計
- 單片機(jī)課程設(shè)計--八路智力競賽搶答器
- 單片機(jī)課程設(shè)計八路搶答器設(shè)計
- 課程設(shè)計-單片機(jī)原理基于單片機(jī)的八路搶答器設(shè)計
- 單片機(jī)課程設(shè)計報告--八路搶答器
- 單片機(jī)八路搶答器)
- 單片機(jī)課程設(shè)計---基于51單片機(jī)的八路競賽搶答器的設(shè)計
- 課程設(shè)計--基于單片機(jī)控制的八路搶答器計
- 課程設(shè)計--基于單片機(jī)控制的八路搶答器計
- 智力搶答器單片機(jī)課程設(shè)計
- 基于單片機(jī)的八路智能搶答器課程設(shè)計
- 基于單片機(jī)的八路智能搶答器課程設(shè)計
- 基于51單片機(jī)的八路搶答器課程設(shè)計
- 智力搶答器單片機(jī)課程設(shè)計
- 單片機(jī)課程設(shè)計--智力搶答器
- 基于51單片機(jī)的八路搶答器課程設(shè)計
- 八路搶答器單片機(jī)畢業(yè)設(shè)計
評論
0/150
提交評論