基于單片機(jī)的十六路搶答器.doc_第1頁
基于單片機(jī)的十六路搶答器.doc_第2頁
基于單片機(jī)的十六路搶答器.doc_第3頁
基于單片機(jī)的十六路搶答器.doc_第4頁
基于單片機(jī)的十六路搶答器.doc_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

學(xué)士學(xué)位畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的十六路搶答器的設(shè)計(jì)學(xué)生姓名: 學(xué) 號(hào):指導(dǎo)教師: 所在學(xué)院:信息技術(shù)學(xué)院專 業(yè):電氣工程及其自動(dòng)化中國大慶2013年05月黑龍江八一農(nóng)墾大學(xué)本科畢業(yè)設(shè)計(jì)(論文)任務(wù)書學(xué)生姓名所在班級(jí)導(dǎo)師姓名導(dǎo)師職稱論文題目基于單片機(jī)的十六路搶答器的設(shè)計(jì)題目分類1應(yīng)用與非應(yīng)用類:工程 科研 教學(xué)建設(shè) 理論分析模擬2軟件與軟硬結(jié)合類:軟件硬件軟硬結(jié)合非軟硬件(1、2類中必須各選一項(xiàng)適合自己題目的類型在內(nèi)打)主要研究內(nèi)容及指標(biāo):采用AT89S52單片機(jī)為控制核心,并分別從硬件和軟件兩方面對設(shè)計(jì)思想進(jìn)行闡述。硬件設(shè)計(jì)包括:單片機(jī)最小系統(tǒng),按鍵電路、顯示電路、報(bào)警電路;軟件設(shè)計(jì)包括Keil編譯程序、Proteus電路仿真、Protel DXP電路制板。主要參考文獻(xiàn):1 王青萍. 八路智力競賽搶答器的設(shè)計(jì)J. 湖北教育學(xué)院學(xué)報(bào), 2007, (08): 65-67.2 王振宇, 李惠敏. 實(shí)驗(yàn)電子技術(shù)M. 天津: 天津大學(xué)出版社, 1998: 63-83.3 李建忠. 單片機(jī)原理與應(yīng)用M. 西安: 西安電子科技大學(xué)出版社, 2002,2: 121-123.4 王幸之, 鐘愛琴, 王雷, 王閃. AT89系列單片機(jī)原理與接口技術(shù)M. 北京: 北京航空航天大學(xué)出版社, 2004: 62-67.5 張洪潤, 易濤. 單片機(jī)應(yīng)用技術(shù)教程M. 北京: 清華大學(xué)出版社, 2003,10: 119-122.階段規(guī)劃:2012年12月19日 至 2013年01月06日 準(zhǔn)備階段 2013年01月07日 至 2013年01月20日 系統(tǒng)分析準(zhǔn)備,硬件設(shè)計(jì)初步2013年02月25日 至 2013年03月17日 系統(tǒng)設(shè)計(jì)分析,硬件書面完成2013年03月18日 至 2013年04月14日 硬件加工做版,編碼測試及改進(jìn)2013年04月15日 至 2013年04月28日 整理論文材料及論文撰寫2013年04月29日 至 2013年05月20日 答辯準(zhǔn)備開題時(shí)間2013年1月7日完成論文時(shí)間2013年5月16日專家審定意見:系主任簽字:年 月 日注:1任務(wù)書由指導(dǎo)教師填寫后交給學(xué)生,要求學(xué)生妥善保存。2此任務(wù)書夾于論文扉頁與論文一并裝訂,作為論文評分依據(jù)之一。摘要摘要搶答器是一種通過數(shù)碼顯示和警示等手段,準(zhǔn)確、公正、直觀地判斷出第一搶答者的設(shè)備。本文介紹了一種以AT89S52為核心的十六路搶答器系統(tǒng),并分別從硬件和軟件兩方面對設(shè)計(jì)思想進(jìn)行了闡述。硬件設(shè)計(jì)包括:單片機(jī)最小系統(tǒng),按鍵電路、顯示電路、報(bào)警電路;軟件設(shè)計(jì)包括Keil編譯程序、Proteus電路仿真、Protel DXP電路制板。經(jīng)過調(diào)試和運(yùn)行,該系統(tǒng)達(dá)到了預(yù)期目標(biāo),具有反應(yīng)靈敏、功能齊全、實(shí)用性強(qiáng)的特點(diǎn)。關(guān)鍵詞:單片機(jī) 搶答器 數(shù)碼顯示 報(bào)警IIABSTRACTAbstractCalling Implement could accurate, impartial, penetrating to decide who is the No.1 to press the button, and shows the results through nixietube. A kind of multipath calling implement is introduced in the thesis, and the AT89S52 is its hard core. Hardware design include: the smallest MCS system, keyboard circuit, display circuit, alarm circuit; Software design include: Keil compiler, Proteus simulation, Protel DXP system circuit board. Also, the design method of the control system was expounded from aspects of the software and the hardware. And after debugging and running, the system reached the expected target, which have many advantages such as fast reaction, all ready function and good practicability. Keywords: MCS Respond Digital display Alarm目錄目錄摘要IAbstractII前言IV1緒論12 電路原理圖的設(shè)計(jì)22.1 電路組成框圖22.2 電路原理圖23 系統(tǒng)硬件電路設(shè)計(jì)43.1單片機(jī)最小系統(tǒng)43.2按鍵電路93.3顯示電路103.4報(bào)警電路114 系統(tǒng)軟件的設(shè)計(jì)124.1系統(tǒng)程序流程圖124.2搶答成功流程圖135 系統(tǒng)仿真145.1 Proteus軟件介紹145.2仿真測試145.3仿真結(jié)果分析16總結(jié)19參考文獻(xiàn)19致謝19附錄A20附錄B21III前言前言隨著計(jì)算機(jī)技術(shù)的發(fā)展,單片機(jī)技術(shù)已經(jīng)成為計(jì)算機(jī)技術(shù)中的一個(gè)獨(dú)特的分支,單片機(jī)的應(yīng)用領(lǐng)域也越來越廣泛,特別是在工業(yè)控制和儀表儀器智能化中扮演著舉足輕重的角色。在單片機(jī)家族的眾多成員中,52系列單片機(jī)以其優(yōu)越的性能、成熟的技術(shù)、高可靠性和高性價(jià)比,成為國內(nèi)單片機(jī)應(yīng)用領(lǐng)域內(nèi)的主流。各種知識(shí)競賽、文娛活動(dòng)的廣泛開展,使搶答器成了必不可少的電子設(shè)備,它為參賽選手提供了公正、客觀、快速的裁決,已逐漸發(fā)展成為一種成型的電子產(chǎn)品,但市面上所售搶答器價(jià)格一般較貴且多為小規(guī)模集成電路構(gòu)成,其性能單一,工作起來不夠理想。本文介紹了一種以AT89S52為核心的智能搶答器,它充分利用了單片機(jī)系統(tǒng)的優(yōu)點(diǎn),具有結(jié)構(gòu)簡單、功能強(qiáng)大、可靠性好、成本較低,實(shí)用性強(qiáng)的特點(diǎn)。16黑龍江八一農(nóng)墾大學(xué)畢業(yè)設(shè)計(jì)(論文)1緒論搶答器在電視臺(tái)、商業(yè)機(jī)構(gòu)、學(xué)校及企事業(yè)單位都有廣泛應(yīng)用,它為各種競賽增添了刺激性、娛樂性,在一定程度上豐富了人們的業(yè)余生活。它的基本功能是:有幾個(gè)小組參賽,當(dāng)主持人允許搶答的情況下,優(yōu)先搶答者發(fā)出搶答信號(hào),此時(shí)其他參賽組的搶答電路即失去控制作用;在主持人解除搶答信號(hào)后,電路才自動(dòng)恢復(fù)到各組又均可搶答的狀態(tài)中。本課題目標(biāo)是開發(fā)并且制作一種結(jié)構(gòu)簡單、實(shí)用性強(qiáng)、基于單片機(jī)的搶答器,從而公正、快速、準(zhǔn)確的裁決出第一搶答者。采用52系列單片機(jī)AT89S52作為控制核心,該系統(tǒng)可以完成運(yùn)算控制、信號(hào)識(shí)別以及顯示功能的實(shí)現(xiàn)。由于使用單片機(jī)作為控制核心,其技術(shù)比較成熟,應(yīng)用起來方便、簡單,并且周圍的輔助電路也比較少,便于控制和實(shí)現(xiàn)。整個(gè)系統(tǒng)具有極其靈活的可編程性,能方便地對系統(tǒng)進(jìn)行功能的擴(kuò)展和更改。由于單片機(jī)具有優(yōu)越的高集成電路性,而且AT89S52單片機(jī)可以采用12MHz的晶振,提高了信號(hào)的測量精度,并且使該系統(tǒng)可以通過軟件改進(jìn)來擴(kuò)展功能,比采用中小規(guī)模集成數(shù)字電路,用機(jī)械開關(guān)按鈕作為控制開關(guān),完成搶答輸入信號(hào)的觸發(fā)的設(shè)計(jì)要簡單的多, 并且采用AT89S52單片機(jī)的設(shè)計(jì)使系統(tǒng)工作速度更快、效率更高。2 電路原理圖的設(shè)計(jì)搶答器的工作原理是采用單片機(jī)最小系統(tǒng),用查詢式鍵盤進(jìn)行搶答。采用動(dòng)態(tài)顯示組號(hào)。主持人按下開始搶答鍵才可以搶答。主持人按下開始搶答按紐(P1.1),蜂鳴響聲提示,且數(shù)碼管顯示10秒倒計(jì)時(shí)(10秒內(nèi)搶答有效),有人在10秒內(nèi)搶答,蜂鳴器響聲提示并顯示他的組號(hào),回答完問題后主持人按下復(fù)位開關(guān)為下一題的搶答做準(zhǔn)備;若倒計(jì)時(shí)至5秒沒有人搶答,蜂鳴器響聲提示搶答時(shí)間將要結(jié)束,時(shí)間結(jié)束仍未有人搶答,此題由主持人公布答案后按下復(fù)位開關(guān)進(jìn)行下一道題的搶答。根據(jù)設(shè)計(jì)功能的要求,電路應(yīng)該包括控制電路,按鍵電路,以及用來顯示裁決結(jié)果的顯示電路。除了用數(shù)碼管顯示目前的動(dòng)作情形,同時(shí)也需要用聲音提醒或者警告操作人員,因此也在電路設(shè)計(jì)時(shí)加入了報(bào)警電路。2.1 電路組成框圖搶答器電路總體設(shè)計(jì)方框圖如圖1所示: 按鍵電路控制電路顯示電路報(bào)警電路圖1 搶答器總體設(shè)計(jì)方框圖2.2 電路原理圖搶答器電路原理圖如圖2所示,控制電路以單片機(jī)AT89S52為核心,按鍵電路采用矩陣式鍵盤的接法,顯示電路采共陽極數(shù)碼管動(dòng)態(tài)顯示,報(bào)警采用蜂鳴器報(bào)警電路。圖2 搶答器電路原理圖3 系統(tǒng)硬件電路設(shè)計(jì)3.1單片機(jī)最小系統(tǒng)(1)系統(tǒng)結(jié)構(gòu)單片機(jī)應(yīng)用的最小系統(tǒng)示意圖如圖3所示,只有單片機(jī)和時(shí)鐘電路、復(fù)位電路構(gòu)成的最簡單電路,并行總線不用于外圍擴(kuò)展,可作為應(yīng)用系統(tǒng)的I/O口使用。圖3單片機(jī)的最小系統(tǒng)(2)系統(tǒng)特點(diǎn)有大量可使用的I/O口;沒有并行擴(kuò)展,應(yīng)用系統(tǒng)結(jié)構(gòu)簡單;外圍器件只能通過UART口的串行移位方式或虛擬串行擴(kuò)展總線進(jìn)行擴(kuò)展。(3)AT89S52單片機(jī)AT89S52的主要工作特性如下:片內(nèi)程序存儲(chǔ)器內(nèi)含8KB的Flash程序存儲(chǔ)器,可擦寫壽命為10000次;片內(nèi)數(shù)據(jù)存儲(chǔ)器內(nèi)含256字節(jié)的RAM;具有32根可編程I/O口線;具有3個(gè)可編程定時(shí)器;中斷系統(tǒng)是具有8個(gè)中斷源、6個(gè)中斷矢量、2個(gè)級(jí)優(yōu)先權(quán)的中斷結(jié)構(gòu);串行口是具有一個(gè)全雙工的可編程串行通信口;具有一個(gè)數(shù)據(jù)指針DPTR;低功耗工作模式有空閑模式和掉電模式;具有可編程的3級(jí)程序鎖定位;單片機(jī)AT89S52工作電源電壓為5(1+0.2)V,且典型值為5V;單片機(jī)AT89S52最高工作頻率為24MHz,單片機(jī)正常工作時(shí),都需要有一個(gè)時(shí)鐘電路和一個(gè)復(fù)位電路。AT89S52的內(nèi)部結(jié)構(gòu)圖如圖4所示:ROM并行接口RAM串行接口定時(shí)器/計(jì)數(shù)器中斷系統(tǒng)內(nèi)部總線、SFR特殊功能寄存器P0TXD RXDINTO INT1CPU微處理器P1P2P3內(nèi)部總線T0 T1圖4 AT89S52內(nèi)部結(jié)構(gòu)圖52單片機(jī)有4個(gè)8位并行輸入/輸出接口:P0、P1、P2和P3口這四個(gè)口既可以并行輸入或輸出8位數(shù)據(jù),又可按位使用,即每一位均能獨(dú)立做輸入或輸出用。圖5為各接口的電氣結(jié)構(gòu)示意圖:圖5 P0、P1、P2、P3口的電氣結(jié)構(gòu)圖I/O端口的結(jié)構(gòu)鎖存器加引腳的典型結(jié)構(gòu)52的I/O端口都由內(nèi)部總線實(shí)現(xiàn)操作控制。P0-P3四個(gè)I/O端口都可以用作普通I/O口,因此,要求有輸出鎖存功能。內(nèi)部總線又是分時(shí)操作,故每個(gè)I/O端口都有相應(yīng)的鎖存器。然而,I/O端口又是外部的輸入/輸出通道,必須有相應(yīng)的引腳,故形成了I/O端口的鎖存器加引腳的典型結(jié)構(gòu)。I/O的復(fù)用結(jié)構(gòu)I/O端口的總線復(fù)用。在使用并行擴(kuò)展總線時(shí),P0口可做數(shù)據(jù)總線口和低8位地址總線口,P0口為三態(tài)雙向口。P0口輸出并行總線的地址/數(shù)據(jù)信號(hào);P2口輸出高8位地址信號(hào)。I/O端口的功能復(fù)用。P3口為復(fù)用的I/O端口,口內(nèi)有復(fù)用輸出功能的控制端;引腳也有復(fù)用輸入功能的控制端。P3口的第二功能輸入引腳功能表如表1所示:表1 P3口的第二功能輸入引腳端口引腳第二功能說 明P3.0RXD串行數(shù)據(jù)接受P3.1TXD串行數(shù)據(jù)發(fā)送P3.2外部中斷0申請P3.3外部中斷1申請P3.4T0定時(shí)/計(jì)數(shù)器0輸入P3.5T1定時(shí)/計(jì)數(shù)器1輸入P3.6外部數(shù)據(jù)存儲(chǔ)器寫選通P3.7外部數(shù)據(jù)存儲(chǔ)器讀選通準(zhǔn)雙向口結(jié)構(gòu)P0、P1、P2、P3口作為普通I/O口使用時(shí),都是準(zhǔn)雙向口結(jié)構(gòu),準(zhǔn)雙向口的典型結(jié)構(gòu)如圖(5)-b所示,準(zhǔn)雙向口的輸入操作和輸出操作本質(zhì)不同,輸入操作是讀引腳狀態(tài);輸出操作是對口鎖存器的寫入操作。由口鎖存器和引腳電路可知:當(dāng)由內(nèi)部總線給口鎖存器置0或1時(shí),鎖存器中的“1”或“0”狀態(tài)立即反映到引腳上。但是在輸入操作(讀引腳)時(shí),如果口鎖存器狀態(tài)為“0”,引腳被鉗位在“0”狀態(tài),導(dǎo)致無法讀出引腳的高電平輸入。I/O端口的應(yīng)用特性端口的自動(dòng)識(shí)別。無論是P0、P2口的總線復(fù)用,還是P3口的功能復(fù)用,內(nèi)部資源會(huì)自動(dòng)選擇,不需要通過指令的狀態(tài)選擇??阪i存器的讀、改、寫操作。許多涉及到I/O端口的操作,實(shí)際上只是設(shè)計(jì)口鎖存器的讀出、修改、寫入的操作。這些指令都是一些邏輯運(yùn)算指令、置位/清除指令、條件轉(zhuǎn)移指令以及將I/O口作為目的地址的操作指令。P0口作為普通I/O口使用。當(dāng)不使用并行擴(kuò)展總線時(shí),P0、P2口都可以做普通I/O口。但是P0口為開漏結(jié)構(gòu),作I/O口時(shí)必須外加上拉電阻。I/O口的驅(qū)動(dòng)特性。P0口每一個(gè)I/O口可輸出驅(qū)動(dòng)8個(gè)TTL負(fù)載。而P1-P3口只能驅(qū)動(dòng)4個(gè)。(4)時(shí)鐘電路時(shí)鐘電路用于產(chǎn)生AT89S52單片機(jī)工作時(shí)所需要的時(shí)鐘信號(hào)。設(shè)計(jì)中采用了比較典型的內(nèi)部時(shí)鐘方式,如圖6所示:其工作原理是:片內(nèi)高增益反向放大器X1、X2外接作為反饋元件的晶體(呈感性)與電容組成的并聯(lián)諧振回路構(gòu)成一個(gè)自激振蕩器向內(nèi)部時(shí)鐘電路提供振蕩時(shí)鐘。振蕩器的頻率主要取決于晶體的振蕩頻率,一般晶體可以在1.2-12MHz之間任選。電容的大小影響振蕩器電路的穩(wěn)定性和快速性,其值有微調(diào)作用,通常取30pF左右。在設(shè)計(jì)電路板時(shí),晶振和電容應(yīng)盡可能的靠近芯片,以減小分布電容,保證振蕩器振蕩的穩(wěn)定性。圖6 單片機(jī)外接晶體的接法(5)復(fù)位電路復(fù)位是單片機(jī)的初始化操作,其主要功能是將程序計(jì)數(shù)器PC初始化為0000H,使單片機(jī)從0000H單元開始執(zhí)行程序。復(fù)位操作不影響片內(nèi)RAM的內(nèi)容,但是對SFR(特殊功能寄存器)中的一些寄存器有影響。圖7 系統(tǒng)的復(fù)位電路單片機(jī)的復(fù)位是靠外部電路復(fù)位的。復(fù)位電路中的電阻、電容數(shù)值的設(shè)置,是為了保證在RST管腳處至少保持兩個(gè)機(jī)器周期(24個(gè)振蕩周期)的高電平而完成復(fù)位過程的,也就是在斯密特觸發(fā)器的輸入端維持在最低閥值電壓以上足夠長時(shí)間,使斯密特觸發(fā)器產(chǎn)生一個(gè)正脈沖。電阻值通常為1K,電容值通常為22uF。圖7為復(fù)位電路的接法。 3.2按鍵電路(1)鍵盤接口和鍵輸入軟件中應(yīng)解決的幾個(gè)問題消除抖動(dòng)按鍵的合斷過程存在一個(gè)抖動(dòng)的暫態(tài)過程,這種抖動(dòng)的暫態(tài)過程大約經(jīng)過5-10ms的時(shí)間,人的肉眼是察覺不到的,但對于高速的CPU是有反應(yīng)的,可能產(chǎn)生誤處理。為了保證鍵動(dòng)作一次,僅作一次處理,必須采取措施以消除抖動(dòng)。本設(shè)計(jì)中采用了軟件消抖的方法。軟件消抖是用延時(shí)來躲過暫態(tài)抖動(dòng)過程,執(zhí)行一段大于10ms的延時(shí)程序后,再讀取穩(wěn)定的鍵狀態(tài)。鍵盤的監(jiān)測方法對于計(jì)算機(jī)應(yīng)用系統(tǒng),鍵盤掃描只是CPU工作的一部分,鍵盤處理只是在有鍵按下時(shí)才有意義。對于是否有鍵按下的信息輸入方式有中斷方式和查詢方式兩種。(2)矩陣式鍵盤工作原理用I/O線組成行、列結(jié)構(gòu),按鍵設(shè)置在行與列的交點(diǎn)上,這樣可以節(jié)約I/O口線。44矩陣式鍵盤的示意圖如圖8所示:圖8 44矩陣式鍵盤的示意圖檢測鍵盤上有無鍵按下可采用查詢工作方式。首先由P3口的高四位輸出0電平,從P3口的低四位讀取鍵盤的狀態(tài);再從P3口的低四位輸出0電平,從P3口的高四位讀取鍵盤狀態(tài)。將兩次讀取的結(jié)果組合起來就可以得到一組特征編碼,如表2所示:表2 44矩陣式鍵盤鍵碼表按鍵名稱K0K1K2K3K4K5K6K7K8特征鍵碼77H7BH0BBH0DBH7DH0BDH0DDH7EH0BEH按鍵名稱K9KAKBKCKDKEKF未按特征鍵碼0DEH0B7H0D7H0EEHOEDH0EBH0E7H0FFH3.3顯示電路顯示電路為二位共陽極LED動(dòng)態(tài)顯示接口電路。單個(gè)共陽極8段數(shù)碼管的段選碼如表3所示:表3 8段共陽數(shù)碼管段選碼表顯示字符0123456789共陽極段選碼C0HF9HA4HB0H99H92H02HF8H80H90H共陽極LED數(shù)碼管將發(fā)光二極管的陽極短接后作為公共陽極,當(dāng)驅(qū)動(dòng)信號(hào)為低電平、“+”端接高電平時(shí)才能發(fā)光。這樣的多位顯示,將所有位的選線并聯(lián)在一起,由一個(gè)8位I/O口控制,實(shí)現(xiàn)各部分的分時(shí)選通。由于所有位選皆由一個(gè)I/O口控制,在每一瞬間2位LED會(huì)顯示相同的字符。想要每一位顯示不同的字符,就必須采用掃描方法輪流點(diǎn)亮各位LED,即在每一瞬間只使某一位顯示字符。在此瞬間,段選控制I/O口輸出相應(yīng)字型碼,而位選則控制I/O口在該顯示位送出低電平,以保證該位顯示相應(yīng)字符。如此輪流,使每一位分時(shí)顯示該位應(yīng)顯示字符。其管腳配置及顯示接口電路如圖9所示: 圖9 共陽極數(shù)碼管管腳配置及顯示接口電路3.4報(bào)警電路設(shè)計(jì)中采用了蜂鳴器報(bào)警電路,如果有條件還可以采用更高級(jí)的語音報(bào)警電路,那樣更加直觀方便。電路的接法如圖10所示:圖10 蜂鳴器報(bào)警電路工作工程:蜂鳴器經(jīng)過74LS04接在P1.0口,當(dāng)P1.0輸出為低電平“0”時(shí),74LS04端輸出為“1”,晶體管導(dǎo)通,蜂鳴器兩端獲得約+5V的電壓而鳴叫;當(dāng)P1.0輸出為高電平“1”時(shí),三極管截止,蜂鳴器停止鳴叫。電路中74LS04不僅起到了反向作用,還有增大負(fù)載能力的作用。4 系統(tǒng)軟件的設(shè)計(jì)眾多軟件的聯(lián)合使用對應(yīng)用系統(tǒng)的設(shè)計(jì)起到了很重要的作用,在實(shí)物制作之前對設(shè)計(jì)進(jìn)行仿真,可以檢驗(yàn)程序的執(zhí)行結(jié)果是否與設(shè)計(jì)的功能相同,這樣可以對程序進(jìn)行改進(jìn)。在這里用到了Keil C和Proteus。為了能夠達(dá)到搶答的公平、公正、合理,應(yīng)該在主持人發(fā)布搶答命令之前必須先設(shè)定搶答的時(shí)間,因而在編開始搶答前的程序得先編寫設(shè)定時(shí)間的程序,當(dāng)時(shí)間設(shè)好了之后,主持人按開始鍵發(fā)布搶答命令,當(dāng)有選手搶答成功,則程序打開定時(shí)中斷,然后調(diào)用鍵盤掃描子程序,編寫鍵盤掃描程序,其他選手在此之后按鍵無效。當(dāng)在掃描到有人按下了搶答鍵,馬上關(guān)閉T0、調(diào)用顯示程序、封鎖鍵盤。4.1系統(tǒng)程序流程圖NY開始并響聲提示設(shè)定定時(shí)器初值并啟動(dòng)定時(shí)器10秒搶答倒計(jì)時(shí)開始顯示調(diào)用讀鍵子程序作為延時(shí)程序是否有按鍵按下調(diào)用顯示搶答者的子程序10秒到時(shí)中斷 圖11 系統(tǒng)程序流程圖4.2搶答成功流程圖響聲提示設(shè)定定時(shí)器初值并啟動(dòng)顯示搶答者且響聲提示RET開始 圖12 搶答成功流程圖5 系統(tǒng)仿真5.1 Proteus軟件介紹在該設(shè)計(jì)中,利用Proteus軟件進(jìn)行仿真。Proteus運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)數(shù)字電路、模擬電路、數(shù)?;旌想娐罚悄壳拔ㄒ荒軐?shí)現(xiàn)對51、PIC、AVR、HC11、ARM等處理器的仿真軟件。5.2仿真測試 5.2.1 開始搶答仿真主持人按開始按鈕后,進(jìn)入搶答10秒倒計(jì)時(shí),仿真結(jié)果如圖13。圖13 10秒搶答倒計(jì)時(shí)開始5.2.2搶答成功仿真主持人按開始按鈕后,10秒內(nèi)搶答則為成功搶答。仿真圖為3號(hào)選手成功搶答搶答成功仿真如圖14。圖14 3號(hào)選手成功搶答若倒計(jì)時(shí)至5秒仍沒有人搶答,蜂鳴器發(fā)出聲音提醒選手所剩搶答時(shí)間,倒計(jì)時(shí)結(jié)束蜂鳴器鳴響提示搶答結(jié)束。圖15為倒計(jì)時(shí)結(jié)束仍無人搶答仿真。 圖15 倒計(jì)時(shí)結(jié)束仍無人搶答5.3 仿真結(jié)果分析通過對電路的仿真,可以看出基于AT89S52單片機(jī)控制的搶答器在PROTEUS軟件上可以很好的實(shí)現(xiàn)搶答報(bào)警、搶答成功顯示、搶答倒計(jì)時(shí)等一系列功能。當(dāng)仿真開始運(yùn)行時(shí),各個(gè)模塊處于初始狀態(tài)。此時(shí)顯示器顯示為10秒。主持人按下開始鍵,此時(shí)表示搶答正式開始,并且數(shù)碼管顯示10秒倒計(jì)時(shí),同時(shí)蜂鳴器發(fā)出聲音提醒選手搶答開始了。若有人在10秒內(nèi)按下?lián)尨疰I,蜂鳴器響聲提示并顯示他的組號(hào),選手搶答成功。若倒計(jì)時(shí)至5秒沒有人搶答,蜂鳴器響聲提示搶答時(shí)間將要結(jié)束。從仿真的測試結(jié)果來看,此設(shè)計(jì)還是能比較好的實(shí)現(xiàn)預(yù)期的目標(biāo)。總結(jié)總結(jié)通過本次課程設(shè)計(jì)使我對Proteus仿真軟件的使用程序設(shè)計(jì)有了更進(jìn)一步的了解和掌握。在最初編寫過程中,我也曾經(jīng)因?yàn)閷?shí)踐經(jīng)驗(yàn)的缺乏失落過,也曾經(jīng)因仿真成功而熱情高漲。特別是Proteus仿真軟件的使用,不知是由于電腦的問題還是怎么,這個(gè)軟件的安裝就花了我很長的時(shí)間,好不容易安裝好了,又對軟件的使用一點(diǎn)都不熟悉,要從頭開始學(xué)起,對芯片原理進(jìn)行仿真畫圖,剛剛開始時(shí)候真的很難下手,因?yàn)槭怯⑽陌娴能浖芏鄸|西都看不太明白,都是通過自己一個(gè)個(gè)來慢慢琢磨,才把仿真圖畫了出來,然后把寫好的程序?qū)胄酒?,進(jìn)行仿真,當(dāng)看到程序正常運(yùn)行的那一刻,心中真是有幾分的喜悅。雖然這只是一次的較簡單的課程設(shè)計(jì),可是平心而論,也耗費(fèi)了我不少的心血。我想說:為完成這次課程設(shè)計(jì)我們確實(shí)很辛苦,但苦中仍有樂,和同學(xué)們相互幫助,當(dāng)蜂鳴器響了起來是對我這段日子以來最好的告慰。而且對于論文的總體構(gòu)思也有了很多經(jīng)驗(yàn),相信自己經(jīng)過這一次的訓(xùn)練與學(xué)習(xí),對于今后的畢業(yè)論文會(huì)有更多幫助。這次課程設(shè)計(jì)讓我充分理解了AT89S52單片機(jī)的工作原理,知道了搶答器的硬件和軟件的實(shí)現(xiàn)過程,并且通過自己動(dòng)手編寫程序來控制搶答器的工作,我感到非常有成就感,也鍛煉了我的編程能力。在剛開始編程的時(shí)候,我感到很茫然,不知道怎么樣下手,但是通過自己的仔細(xì)的分析和老師的細(xì)心的指導(dǎo),在認(rèn)真分析了原來已有的代碼后,和應(yīng)有的硬件后,經(jīng)過多次調(diào)試和測試終于成功了。該設(shè)計(jì)與普通搶答器相比,有以下幾方面優(yōu)勢:(1)具有清零裝置和搶答控制,可由主持人操縱避免有人提前搶答而無效。(2)具有定時(shí)功能,在規(guī)定時(shí)間內(nèi)無人搶答表示所有參賽選手或參賽隊(duì)對本題棄權(quán)。實(shí)物的制作僅僅是在實(shí)驗(yàn)室完成的,在實(shí)際應(yīng)用中還有許多問題需要考慮,比如選手是分散在主席臺(tái)下的,那么選手的按鍵就要通過總線進(jìn)行連接,而不是實(shí)驗(yàn)板上簡單的矩陣鍵盤式的連接。另外,搶答器的功能有待進(jìn)一步增強(qiáng),比如增加計(jì)分功能。而功能的擴(kuò)展恰恰體現(xiàn)了本設(shè)計(jì)中選用單片機(jī)作為核心控制器的優(yōu)勢簡單的接線、靈活的可編程性。19參考文獻(xiàn)參考文獻(xiàn)1 王青萍. 八路智力競賽搶答器的設(shè)計(jì)J. 湖北教育學(xué)院學(xué)報(bào), 2007, (08): 65-67.2 寧志剛, 黃智偉, 唐慧, 胡芬芬, 八位數(shù)顯搶答器課程設(shè)計(jì)方法研討J,實(shí)驗(yàn)室研究與探索, 2009, 28(1): 65-67.3 程相波, 衛(wèi)安軍. 基于MCS51單片機(jī)的八路搶答器設(shè)計(jì)方法研究J. 北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報(bào), 2007, (02): 31-34. 4 宋春華, 劉江濤, 王貴恩, 裴小英. 基于單片機(jī)控制的數(shù)字搶答器J. 河南機(jī)電高等專科學(xué)校學(xué)報(bào), 2005, (05): 28-29.5 張毅剛, 彭喜元, 姜守達(dá), 喬立巖. 新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì)M. 哈爾濱: 哈爾濱工業(yè)大學(xué)出版社, 2003: 223-231.6 何立民. 單片機(jī)高級(jí)教程-應(yīng)用與設(shè)計(jì)M. 北京: 北京航空航天大學(xué)出版社, 2000. 8: 103-109.7 李建忠. 單片機(jī)原理與應(yīng)用M. 西安: 西安電子科技大學(xué)出版社, 2002,2: 121-123.8 王幸之, 鐘愛琴, 王雷, 王閃. AT89系列單片機(jī)原理與接口技術(shù)M. 北京: 北京航空航天大學(xué)出版社, 2004: 62-67.9 張洪潤, 易濤. 單片機(jī)應(yīng)用技術(shù)教程M. 北京: 清華大學(xué)出版社, 2003,10: 119-122.10 蔡朝洋. 單片機(jī)控制實(shí)習(xí)與專題制作M. 北京: 北京航空航天大學(xué)出版社, 2006,11: 317-323.11 戴佳, 苗龍, 陳斌. 51單片機(jī)應(yīng)用系統(tǒng)開發(fā)典型實(shí)例M, 北京: 中國電力出版社, 2005,7: 121-137.12 楊欣, 王玉鳳, 劉湘黔. 電路設(shè)計(jì)與仿真-基于Multisim 8與 Protel 2004M. 北京: 清華大學(xué)出版社, 2006: 32-106.13 王振宇, 李惠敏. 實(shí)驗(yàn)電子技術(shù)M. 天津: 天津大學(xué)出版社, 1998: 63-83.14A,Tadeev et al.Influence of Pd and Pt additives on themicrostructural and electrical properties B.1998.19 H .Hinkers et al.An amperometric microsensor array with 1024individually addressable elements actuators B. 199515X. Wang et ai.Monolithic thin-film metal-oxide gas-sensor systemarrays with application to monitoring of organic vapors, sensors andactuators B.199516Schrock.M.D,Oard.D.L,Taylor.R.K,etal. Pulse-width Modulation Metering System for Ammonia Fertilizer . 2001.ASAE Paper No.011126 17Patricia Melin. Oscar Castillo. Intelligent control of a stepping motor drive using an adaptive neuro-fuzzy inference system J. Information Sciences.200518ATMEL89C52 DATASHEET.PDF ATMEL Dec.1997致謝致謝在本次畢業(yè)設(shè)計(jì)過程中,我的指導(dǎo)老師老師對本論文從選題、構(gòu)思、資料收集到最后定稿的各個(gè)環(huán)節(jié)都給予了細(xì)心指引與教導(dǎo),使我得以最終完成畢業(yè)設(shè)計(jì),在此對李老師表示衷心感謝!李老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、豐富淵博的知識(shí)、敏銳的學(xué)術(shù)思維以及誨人不倦的師者風(fēng)范是我終生學(xué)習(xí)的楷模。同時(shí)也要感謝XXX,XXX等同學(xué),他們在設(shè)計(jì)的各個(gè)階段給了我很多幫助和建議。最后,我要向在百忙之中抽時(shí)間對本文進(jìn)行審閱、評議的各位老師表示感謝!附錄附錄A附錄B/* 搶答器程序*/#include #define uchar unsigned char /宏定義#define uint unsigned intuint disnum,num,i,j,key;uchar count,temp;sbit bell=P10; /蜂鳴器控制端口ssbit key1=P11;sbit s2=P12;sbit s3=P13; uchar code table= 0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90;/*/ /* 延時(shí)子程序 */ /*/ void delay(uchar x) uchar a,b; for(a=x;a0;a-) for(b=200;b0;b-);/*/ /* 顯示子程序 */ /*/ void display(disnum) uchar shi,ge; shi=disnum/10; ge=disnum%10; P0=tableshi; /送入段選信號(hào) P2=0xfe; delay(3); P0=tablege; P2=0xfd;delay(5); /*/ /* 初始化程序 */ /*/ void init() P3=0xff; /P1口清1 temp=P3; disnum=10; /10秒到計(jì)時(shí)key=0; EA=1; TMOD=0x10;ET1=1; TH1=(65536-50000)/256;TL1=(65536-50000)%256; void keyscan1()/增大鍵 減小鍵設(shè)定鍵 if(s2=0) delay(5);if(s2=0) while(!s2);disnum+=1;if(disnum=99) disnum=10;if(s3=0)delay(5);if(s3=0) while(!s3); disnum-=1; if(disnum=0) disnum=10;void keyscan() P3=0xfe;/掃描矩陣鍵盤第一行 temp=P3; temp=temp&0xf0; if(temp!=0xf0) delay(5); temp=P3; temp=temp&0xf0; if(temp!=0xf0) temp=P3; switch(temp) case 0xee: key=1; break; case 0xde: key=2; break; case 0xbe: key=3; break; case 0x7e: key=4; break; while(temp!=0xf0)/等待按鍵釋放 temp=P3; temp=temp&0xf0; P3=0xfd; /掃描矩陣鍵盤第二行 temp=P3; temp=temp&0xf0; if(temp!=0xf0) delay(5); temp=P3; temp=temp&0xf0; if(tem

溫馨提示

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

評論

0/150

提交評論