基于某51單片機搶答器地課程設計_第1頁
基于某51單片機搶答器地課程設計_第2頁
基于某51單片機搶答器地課程設計_第3頁
基于某51單片機搶答器地課程設計_第4頁
基于某51單片機搶答器地課程設計_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

標準文檔標準文檔實用大全實用大全標準文檔標準文檔實用大全實用大全西安文理學院物理與機械電子

工程學院專業課程設計報告專業班級 測控技術與儀器 課 程 單片機技術與設計 題 目 基于單片機的搶答器設計學號 學生姓名 指導教師 基于單片機的八位搶答器設計摘要隨著電子技術的飛速發展,基于單片機的控制系統已應用于工業、農業、電力、電子、智能樓宇等行業,微型計算機作為嵌入式控制系統的主體與核心,代替了傳統的控制系統的常規電子線路。搶答器作為一種工具,已廣泛應用于各種智力和知識競賽場合。但搶答器的使用頻率較低,且有的要么制作復雜,要么可靠性低。作為一個單位,如果專門購一臺搶答器雖然在經濟上可以承受,但每年使用的次數極少,往往因長期存放使(電子器件的)搶答器損壞,再購置的麻煩和及時性就會影響活動的開展,因此設計了本搶答器。本設計是以八路搶答為基本理念。考慮到依需設定限時回答的功能,利用單片機及外圍接口實現的搶答系統,利用單片機的定時器計數器定時和記數的原理,將軟、硬件有機地結合起來,使得系統能夠正確地進行計時。同時使液晶顯示屏能夠正確地顯示時間,并且給出指令的提示,揚聲器發生提示。系統能夠實現:在搶答中,只有開始后搶答才有效,如果在開始搶答前搶答為無效;搶答限定時間和回答問題的時間可在設定;可以顯示是哪位選手有效搶答和無效搶答,正確按鍵后有聲音的提示;搶答時間和回答問題時間倒記時顯示,滿時后系統計時有聲音提示;搶答倒計時時間和回答問題時間均可通過硬件的按鍵調整。關鍵詞9單片機;液晶顯示屏;搶答器;智能目錄TOC\o"1-5"\h\z\o"CurrentDocument"引言 1\o"CurrentDocument"設計任務與要求概述 1\o"CurrentDocument"題目 1\o"CurrentDocument"設計任務 1\o"CurrentDocument"設計要求 1\o"CurrentDocument"設計目的 1\o"CurrentDocument"方案總體設計 2萬案 2\o"CurrentDocument"控制芯片 2\o"CurrentDocument"顯示方式 2\o"CurrentDocument"程序語言的選擇 2\o"CurrentDocument"原理框圖 3\o"CurrentDocument"硬件電路設計 3\o"CurrentDocument"搶答器的工作原理 3\o"CurrentDocument"單元電路設計 3\o"CurrentDocument"4.2.1 3\o"CurrentDocument"發聲電路設計 4\o"CurrentDocument"開始、復位按鍵輸入電路的設計 4\o"CurrentDocument"時鐘震蕩電路 4\o"CurrentDocument"設5時間、加減時間電路設計 4\o"CurrentDocument"顯示電路的設計 5\o"CurrentDocument"軟件設計 6\o"CurrentDocument"搶答器工作流程 6\o"CurrentDocument"流程框圖 6\o"CurrentDocument"電路仿真調試 7\o"CurrentDocument"上電準備狀態 7開始搶答 7\o"CurrentDocument"非法搶答 8\o"CurrentDocument"正常搶答 8\o"CurrentDocument"實驗儀器及元器件清單 9\o"CurrentDocument"設計總結 9\o"CurrentDocument"致謝 9\o"CurrentDocument"參考文獻 10\o"CurrentDocument"附錄一系統電路圖 11\o"CurrentDocument"附錄二程序清單 11引言目前各種各樣的競賽越來越多無論是學校、工廠、軍隊還是益智性電視節目,其中用到搶答器的概率非常大。目前很多搶答器基本上采用小規模數字集成電路設計使用起來不夠理想。因此設計一款更易于使用和區分度高的搶答器成了非常迫切的任務。現在單片機已進入各個領域以其功耗小、智能化而著稱。所以若利用單片機來設計搶答器便使以上問題得以解決。針對以上情況本課程設計出以AT89C51單片機為核心的八路搶答器。它能根據不同的搶答輸入信號經過單片機的控制處理并產生不同的與輸入信號相對應的輸出信號最后通過液晶顯示屏顯示相應的路數和答題時間以及各項命令等,使競賽真正達到公正、公開、公平。設計任務與要求概述題目8路比賽搶答器設計任務利用8051單片機中斷系統,制作一個有個按鍵的比賽搶答器,可供名選手比賽的搶答,每組設置一個搶答按鈕,按鈕的編號與選手的編號對應,主持人設置控制開關,用來控制系統的清零和搶答的開始,在有人按鍵時進行對應選手顯示。設計要求完成系統的硬件電路設計與軟件設計;采用匯編或C語言編程;采用Proteus、KeilC等軟件實現系統的仿真調試;論文要求思路清晰,結構合理,語言流暢,書寫格式符合要求。設計目的綜合運用相關課程中所學的理論知識去完成這一設計課題。通過查閱手冊和相關文獻資料,培養自己獨立分析和解決問題的能力。進一步熟悉單片機和常用接口電路,加深對專業知識和理論知識學習的認識和理解。學會電路的設計與程序的調試。學會撰寫課程設計論文。培養嚴肅認真的工作作風和嚴謹的科學態度。方案總體設計方案控制芯片我們采用51系列單片機AT89C51作為控制核心,該系統可以完成運算控制、信號識別以及顯示功能的實現。單片機技術比較成熟,應用起來方便、簡單并且單片機周圍的輔助電路也比較少,便于控制和實現。整個系統具有極其靈活的可編程性,能方便地對系統進行功能的擴張和更改。MCS-51單片機特點如下:a、可靠性好:單片機按照工業控制要求設計,抵抗工業噪聲干擾優于一般的 ,程序指令和數據都可以寫在 里,許多信號通道都在同一芯片,因此可靠性高,易擴充。b、單片機有一般電腦所必須的器件,如三態雙向總線,串并行的輸入及輸出引腳,可擴充為各種規模的微電腦系統。c、控制功能強:單片機指令除了輸入輸出指令,邏輯判斷指令外還有更豐富的條件分支跳躍指令。顯示方式在實現基本功能時,我們采用了四位數碼管顯示,后兩位顯示倒計時時間,第一位顯示搶答組號,第三位置空,在此基礎上還在程序里加了更改搶答時間和倒計時時間的模塊,也可通過數碼管顯示,成為一個比較完整的系統。后來在實現拓展功能時,我們想加入語音顯示的模塊,發現proteus軟件無法仿真,就改為用液晶顯示屏1602顯示。1602液晶顯示屏也叫1602字符型液晶,它是一種專門用來顯示字母、數字、符號等的點陣型液晶模塊1602液晶模塊內部的字符發生存儲器(CGROM已經存儲了160個不同的點陣字符圖形,這些字符有:阿拉伯數字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,它可以通過簡短的英文提示和數字使人明確看到比賽進行的整個過程。程序語言的選擇一開始實現基本功能時,使用數碼管作為顯示,采用了匯編語言,比較高效,條理也清晰;后來做拓展功能時改用液晶顯示屏顯示,發現液晶顯示屏使用語言編程更便捷高效,就整體使用了。語言。標準文檔標準文檔標準文檔標準文檔原理框圖圖原理框圖硬件電路設計搶答器的工作原理用單片機的兩個外部中斷作為修改時間的選擇按鈕,選擇修改搶答倒計時時間還是回答問題時間;用定時器作為時間的控制。單元電路設計4.2.1該電路有八個按鈕分別接于P1.0~P1.7可實現兩個功能:一是分辨出選手按鍵的先后,并鎖存優先搶答者的編號,同時譯碼顯示電路顯示編號;二是禁止其他選手按鍵操作無效。如有再次搶答需由主持人將S開關重新置,“清除”然后再進行下一次搶答。如圖4.1實用二實用二標準文檔標準文檔實用大全實用大全標準文檔標準文檔實用大全實用大全發聲電路設計用口和揚聲器相連,主持人將控制開關撥到開始位置時,會發聲,搶答電路和定時電路進人正常搶答工作狀態;當參賽選手按動搶答鍵時,揚聲器發聲,搶答電路和定時電路停止工作。如圖4.2開始、復位按鍵輸入電路的設計復位是計算機的一個重要工作狀態。開始和復位鍵分別接于和口,在單片機工作時,接電之前,斷電后也要復位。在搶答器中復位則為定時做鋪墊,在搶答之前要復位,搶答完也要復位。按了復位鍵,顯示屏的狀態是“start……”。如圖4.3GND復位電路圖 發聲電路開始、GND復位電路圖 發聲電路開始、時鐘震蕩電路CPU的操作需要精確的定時,可用一個晶體振蕩器產控制AT89C51單片機上的XTAL1和CPU的操作需要精確的定時,可用一個晶體振蕩器產控制AT89C51單片機上的XTAL1和XTAL2分別為振蕩電54.4生穩定路的的時鐘脈沖來輸入和輸出。如圖設定時間、加減時間電路設計該電路主要是對答題時間和搶答時間調整設計的,時間接P3.3,加一秒接P3.4,減一秒接P3.5。陽圖4.5搶,答時1-間接-答題UWEdLLNOEEdOX里OEdSL國Ned寸Lqged箝LWCN標準文檔標準文檔實用大全實用大全標準文檔標準文檔hpe1Fu川星rid因Mndhed.Ena.Lm.'nEdII-nThp*rr-zEM.-I_L,圖 時鐘振蕩電路圖 加減時間電路顯示電路的設計本系統通過液晶顯示屏來顯示各提示信息。如圖4.6r-DI1T1□Nn*RP1RB=:PACK-T]■=TB<T>二?:2d口?:胃工@.二Nd里口HdTY-ziEI.口a.wJdQ.nJ.胃口dHJ.I祠口dLlzlHHda.ms.BDL圖顯示時間電路軟件設計搶答器工作流程為了能夠達到搶答的公平、公正、合理,應該在主持人發布搶答命令之前必須先設定搶答的時間,因而在編開始搶答前的程序得先編寫設定時間的程序,當時間設好了之后,主持人發布搶答命令按下P3.0按鍵,程序開始打開定時中斷開始倒計時,然后調用鍵盤掃描子程序,編寫鍵盤掃描程序。當在掃描到有人按下了答題鍵,馬上關閉T0、調用顯示程序、封鎖鍵盤。接通電源后,液晶顯示屏顯示“Ready……”,搶答器處于禁止狀態,處于等待開始狀態,此時有人搶答,會顯示“error”,也可以調整搶答時間和回答問題時間,;主持人將開關置,“開始”狀態,宣布“開始”搶答器工作,顯示屏顯示“go!”,揚聲器給出聲響提示,定時器倒計時;選手在定時時間內搶答時,搶答器完成,顯示組號,并且倒計時,時間到揚聲器提示。當一輪搶答之后,定時器停止、禁止二次搶答、定時器顯示剩余時間。如果再次搶答必須由主持人再次操作開始、停止狀態開關。流程框圖

電路仿真調試1電準備狀態w同冏U1TE>mIreadyLCD1LJUCaiLL-IHE:-:-TH-EEd因中柏□.U^Ed號ridm再En-s-lH-aEda-Mr-Nd二vsrNll.□WNdawNa.專胃dPHNNll.s.,aNtgHsdo.9aHs□.STH訴口dQw*.口d□,-!胃口d號曾口□.EHXodEM.?.白口□.2始搶答隹r-Eo-囹5Ed副Ed號更E再EO-fKULrld號白Edav'No.二父也No.p.5ZJWKNd二父聲No.口青No.Nda日NdtHUodTTHinlzid罟工所口d^svs口?:n口dUy西口dULddLM<口口dm.--.-l非法搶答LLU'IJ.CEDL■=TDC1S-error,展需3抬qIFr-En-因蟲Ed□L.HdMJ一再EdtKULEd1,o.n^wMaNdiMSTNa.口■!,訴NdDwtNd二區.Eza.pMrlNdarNNd正常搶答hHr^HEd因中柏dn^Eo.ql—ed.El-'nEn-AELMIJ旦工口EdWWNO.wKm口-I*r-ldZJW*NO.LW胃a.■HrlHd亶.Hrjds.,qNtur-口a.舌-xinnd8?-*口d占wtad□「胃口工□,-!?■臼口工EWLad口J.?-口口工hHrohp*:yi-i整dnJi-i曲6OJhp^LMPO標準文檔標準文檔實用大全實用大全標準文檔標準文檔實用大全實用大全實驗儀器及元器件清單表 實驗儀器及元器件清單器件名稱 規格型號 數量微處理器極性電容電阻排阻電容晶振按鈕液晶顯示屏揚聲器設計總結通過這次課程設計,我更進一步地認識了搶答器的工作原理,掌握了它的調整及測試方法。本系統通過采用AT89C51單片機作為核心,以八個按鍵輸入搶答信號,以液晶顯示屏顯示,根據燒錄到單片機中的程序控制整個系統的工作流程,整體性好,效率高,實現了搶答器的智能化。在這過程之中也遇到了一些問題,比如對匯編語言理解還不夠,將其轉化為C語言時在時序上出現一些問題,還有C語言基礎也需要加強,編程能力有待提高。致謝通過此次的課程設計,讓我更進一步的鞏固了單片機的各種知識。但在設計的過程中,遇到了很多的問題,有一些知識已經不太清楚了,但是通過一些資料又重新的翻閱并且認真的復習了相關教科書中的內容。此次的課程設計樹立了對自己工作能力的信心,相信會對今后的學習工作生活都有非常重要的影響,而且大大的提高了動手能力,使我充分的體會到了創造過程中的探索的艱難和成功的喜悅。雖然這次做出的作品還存在很多需要改進的地方,但是在整個設計過程中所學習到的東西是這次實訓所得到的最大收獲跟財富,使我終身受益。最后,我要感謝指導老師老師和楊浩輝同學在我將系統的匯編語言改為語言時對我無私的幫助。參考文獻【1】戴梅萼史嘉權編著,《微型計算機技術及應用》(第四版)清華大學出版社,北京,2008.3【2】(美)BruceEckel著陳昊鵬譯《JAVA編程思想》(第四版),機械工業出版社,北京,2007.6(2013.11重印)【3】馮博琴吳寧主編,《微型計算機原理與接口技術》(第三版),清華大學出版社,北京密云膠印廠,2011.6【4】張毅剛等編著,《新編MSC-51單片機應用設計》(第三版),哈爾濱工業大學出版社,哈爾濱東林印務有限公司,2008.4附錄一系統電路圖hp*I-!1?31?nJ?--hHr*uA,徨arid因工Ed制EdQLWEO.Ehp*I-!1?31?nJ?--hHr*uA,徨arid因工Ed制EdQLWEO.E再En.tDOJL.ED.AKHaEo.wMr-NdLHSTNI!.口父所Nd二寄NdE1H向No.冬LNd鬢日妙lead舊mNEHMnd90前口D.g-z訴口dawtaD.Cll-I再口dr-JnD.<=□□.EM?:目d-1S.H圖附錄系統電路圖附錄二程序清單#include<reg51.h> 〃包含單片機的頭文件#include<intrins.h>//包含_nop_()函數定義的頭文件sbitRS=P2八0; 〃寄存器選擇位,將RS位定義為P2.0引腳sbitRW=P27;〃讀寫選擇位,將RW位定義為P2.1引腳sbitE=P2A2;sbitring=P3A6;sbitstart=P3A0;sbitok=P3A1;sbitadd=P3A4;sbitsub=P3A5;sbitD0=P1A0;sbitD1=P1A1;sbitD2=P1A2;sbitD3=P1A3;sbitD4=P1A4;sbitD5=P1A5;sbitD6=PM6;sbitD7=P1A7;unsignedcharnum=0;unsignedchara=30,b=60,n=0,qd,hd,d;voiddisplay。;voiddelay1ms(){unsignedchari,j;for(i=0;i<10;i++)for(j=0;j<33;j++);}voiddelay(unsignedcharn){unsignedchari;for(i=0;i<n;i++)delay1ms();}voidnopp(unsignedcharn){unsignedchari;for(i=0;i<n;i++)_nop_();}bitlcd_bz(){bitresult;RS=0; 〃根據規定,RS為低電平,RW為高電平時,可以讀狀態RW=1;E=1; //E=1,才允許讀寫nopp(4); 〃空操作四個機器周期,給硬件反應時間result=(bit)(P0&0x80);〃將忙碌標志電平賦給resultE=0;returnresult;}voidWriteinstruction(unsignedchardictate){while(lcd_bz()==1);〃如果忙就等待RS=0; 〃根據規定,RS和R/W同時為低電平時,可以寫入指令RW=0;E=1; //E置低電平nopp(2);〃空操作兩個機器周期,給硬件反應時間P0=dictate; 〃將數據送入P0口,即寫入指令或地址nopp(4);〃空操作四個機器周期,給硬件反應時間E=1; //E置高電平(正跳變)nopp(4);//空操作四個機器周期,給硬件反應時間E=0; 〃當E由高電平跳變成低電平時,液晶模塊開始執行命令}voidWriteData(unsignedchary){while(lcd_bz()==1);RS=1; //RS為高電平,RW為低電平時,可以寫入數據RW=0;E=1; //E置低電平P0=y; 〃將數據送入P0 口,即將數據寫入液晶模塊nopp(4);//空操作四個機器周期,給硬件反應時間E=1; //E置高電平(正跳變)nopp(4);//空操作四個機器周期,給硬件反應時間E=0; 〃當E由高電平跳變成低電平時,液晶模塊開始執行命令}voidLcdlnitiate(void){delay(15); 〃延時15ms,首次寫指令時應給LCD一段較長的反應時間WriteInstruction(0x30);〃顯示模式設置:8位數據,16X2顯示,5X7點陣,delay(5); 〃延時5msWriteInstruction(0x38);delay(5);WriteInstruction(0x0c);〃顯示模式設置:顯示開,有光標,光標閃爍delay(5);WriteInstruction(0x06);〃顯示模式設置:光標右移,字符不移delay(5);WriteInstruction(0x01);〃清屏幕指令,將以前的顯示內容清除delay(5);}voidDisplay(unsignedcharstring口){unsignedchari;i=0;while(string[i]!='\0'){ //顯示字符WriteData(string[i]);i++;}}/*voidbark(){ring=1;delay(10);ring=0;標準文檔標準文檔實用大全實用大全標準文檔標準文檔實用大全實用大全下¥出雷下¥出雷:0=u(況eojq:[二pq:("§:igquinutt)XBjdsiQ:§oseo次eojq:[二pq:(“£:iaquinuu)XBjdsi(j:£oseo次eojq:[二pq:(”9:iaquinuu)XBjdsi(j:9oseo次eojq:[二pq:(”guoqumuu)XBjdsi(j:^oseo次eojq:[二pq:(”^uoqumuu)XBjdsi(j:j7oseo次eojq:[二pq:(“£:iaquinuu)XBjdsi(j:£oseo次eojq:[二pq:(“乙gqumuu)XBjdsi(j:^oseo次eojq:[二pq:(”\:iaquinuu)XBjdsi(j:xssbo)(U)qOJTMS:(l0x0)uoP3njlsuI9lJJM({次匕叫-8=u}(£Qi)JJ{ 次匕叫Z=u}(9di)j!{ 次匕叫:9=u}(gcii)j!{ 次匕叫?二%(壞1加!{ 次匕叫?=u}(£cii)j!{ 次匕叫W=u}Qcii)j!{次匕叫2=u}([cii)j!{次匕叫-l=u}(OQj)JI-l=0Hl//}(1)譏四叢gp:[=pb-1=IH1?(u|O§“)&lds!d:⑴&HP:(l0x0)uoP3njlsuI9lJJMtQ=§UU?(OO^)^PP:[=3叩)()I9MSUBpTOA導石秋母//WriteInstruction(0x01);delay(5000);d=b;while(d+1);}voiddisplay。{unsignedchartm[3]={0x20,0,0};unsignedchara1,b1;a1=d/10;tm[1]=a1+0x30;b1=d%10;3出C1+0*30;WriteInstruction(0x01);delay(1);Display(tm);}voidmain(void) 〃主函數{TMOD=0X11;〃選擇定時

溫馨提示

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

評論

0/150

提交評論