基于單片機的三路搶答器的設計王輝_第1頁
基于單片機的三路搶答器的設計王輝_第2頁
基于單片機的三路搶答器的設計王輝_第3頁
基于單片機的三路搶答器的設計王輝_第4頁
基于單片機的三路搶答器的設計王輝_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、淮南師范學院電氣信息工程學院2013屆自動化專業(yè)課程設計基于單片機的三路搶答器的設計1課程設計的任務與要求1.1 課程設計的任務(1)設計一個可供3人進行的搶答器。(2)系統(tǒng)設置復位按鈕,按動后,重新開始搶答。(3)搶答器開始時數(shù)碼管顯示序號00,選手搶答實行優(yōu)先顯示,優(yōu)先搶答選手的編號一直保持到主持人將系統(tǒng)清除為止。搶答后顯示優(yōu)先搶答者序號,同時發(fā)出音響,并且不出現(xiàn)其他搶答者的序號。(4)搶答器具有定時搶答功能,且一次搶答的時間有主持人設定,本搶答器的時間設定為30秒,當主持人啟動“開始”開關(guān)后,定時器開始減計時。(5)設定的搶答時間內(nèi),選手可以搶答,這時定時器停止工作,顯示器上顯示選手的號

2、碼和搶答時間。并保持到主持人按復位鍵。1.2 課程設計的要求(1)基于單片機的三路搶答器的設計,并用Proteus設計與仿真出來。(2)程序用Keil編程出來,并且生成Hex文件。(3)設計的方案要能夠長期,有效,穩(wěn)定的運行。(4)力求簡單實用。1.3 課程設計的研究基礎本設計是以三路搶答為基本理念??紤]到依需設定限時回答的功能,利用AT89C51單片機及外圍接口實現(xiàn)的搶答系統(tǒng),利用單片機的定時器/計數(shù)器定時和記數(shù)的原理,將軟、硬件有機地結(jié)合起來,使得系統(tǒng)能夠正確地進行計時,同時使數(shù)碼管能夠正確地顯示時間。用開關(guān)做鍵盤輸出,揚聲器發(fā)生提示。同時系統(tǒng)能夠?qū)崿F(xiàn):在搶答中,只有開始后搶答才有效,如果

3、在開始搶答前搶答為無效;搶答時間和回答問題時間倒記時顯示,滿時后系統(tǒng)計時手動復位。2 基于單片機三路搶答器系統(tǒng)方案制定2.1 方案提出方案一:單片機主控電路鍵盤掃描電路蜂鳴器報警電路數(shù)碼管顯示驅(qū)動電路圖1 方案一設計方案方案二:單片機主控電路鍵盤掃描電路蜂鳴器報警電路數(shù)碼管顯示圖2 方案二設計方案2.2 方案比較第一個方案比第二個方案多了一個驅(qū)動電路,所以第一個方案的電路會比較復雜。2.3 方案論證該系統(tǒng)采用51系列單片機AT89C52作為控制核心,該系統(tǒng)可以完成運算控制、信號識別以及顯示功能的實現(xiàn)。由于用了單片機,使其技術(shù)比較成熟,應用起來方便、簡單并且單片機周圍的輔助電路也比較少,便于控制

4、和實現(xiàn)。整個系統(tǒng)具有極其靈活的可編程性,能方便地對系統(tǒng)進行功能的擴張和更改。2.4 方案選擇通過以上兩個方案的比較,選擇第二個方案。3 基于單片機三路搶答器系統(tǒng)方案設計3.1各單元模塊功能介紹及電路設計3.1.1振蕩電路的設計AT89C52內(nèi)部有一個用于構(gòu)成片內(nèi)振蕩器的高增益反相放大器, 振蕩器產(chǎn)生的信號送到CPU, 作為CPU的時鐘信號,驅(qū)動CPU產(chǎn)生執(zhí)行指令功能的機器周期。引腳XTAL1和XTAL2是此放大器的輸人端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起可構(gòu)成一個自激振蕩器, 振蕩電路的連接如圖所示圖3所示,外接石英晶體或陶瓷諧振器以及電容C1和C2構(gòu)成并聯(lián)諧振電

5、路, 接在放大器的反饋回路中。圖3 振蕩電路3.1.2 復位電路的設計單片機復位是使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài), 并從這個狀態(tài)開始工作。無論是在單片機剛開始接上電源時, 還是斷電后或者發(fā)生故障后都要復位。89系列單片機的復位信號是從RST引腳輸人到芯片的施密特觸發(fā)器中的。當系統(tǒng)處于正常工作狀態(tài)時, 且振蕩器穩(wěn)定后, 如果RST引腳有一個高電平并維持2個機器周期(24個振蕩周期), 則CPU就可響應并且將系統(tǒng)復位。復位分為手動復位和上電復位。本設計系統(tǒng)采用的是手動復位, 當按下按鈕時, 即使人的動作很快, 也會使按鈕保持通達數(shù)十毫秒,所以, 手動復位能確保復位時間要求。

6、復位電路連接如圖4。圖4 復位電路3.1.3 計時和組號顯示的設計計時部分由一個共陰極四位八段數(shù)碼管前二位構(gòu)成。時間顯示是由一個共陰極四位八段數(shù)碼管前二位構(gòu)成,組號顯示是由一個共陰極四位八段數(shù)碼管后二位構(gòu)成,通過P0口直接對其控制。電路圖如下:圖5 顯示電路3.1.4 選手按鍵的設計三位選手通過按鍵產(chǎn)生的電平下降沿信息送至P2.0P2.2口,然后再經(jīng)由主控制模塊處理鎖存,最后在數(shù)碼管上顯示最早按下的選手號。電路圖如下:圖6 選手按鍵3.1.5 主持人控制電路的設計主持人控制部分由一個開始鍵組成。開始按鍵通過外部中斷送信息給控制模塊,電路圖如下:圖7 主持人控制電路3.1.6蜂鳴器電路設計P3.

7、4口控制的蜂鳴器主要是提醒選手答題時間到。電路圖如下:圖8 蜂鳴器電路3.2電路參數(shù)的計算及元器件的選擇電容C1,C2都是30uF,C3是100n。電阻R1,R2都是10K.3.3 特殊器件的介紹7段LED數(shù)碼管是利用7個LED(發(fā)光二極管)外加一個小數(shù)點的LED組合而成的顯示設備,可以顯示09等10個數(shù)字和小數(shù)點,使用非常廣泛。數(shù)碼管可以分為共陽極與共陰極兩種,共陽極就是把所有LED的陽極連接到共同接點com,而每個LED的陰極分別為a、b、c、d、e、f、g及h(小數(shù)點);共陰極則是把所有LED的陰極連接到共同接點com,而每個LED的陽極分別為a、b、c、d、e、f、g及h(小數(shù)點)。圖

8、9 數(shù)碼管原理圖我用的是共陰極。3.4 系統(tǒng)整體電路圖圖10 總電路圖4 基于單片機三路搶答器系統(tǒng)仿真和調(diào)試 4.1 仿真軟件介紹Proteus軟件是Labcenter Electronics公司的一款電路設計與仿真軟件,它包括ISIS、ARES等軟件模塊,ARES模塊主要用來完成PCB的設計,而ISIS模塊用來完成電路原理圖的布圖與仿真。Proteus的軟件仿真基于VSM技術(shù),它與其他軟件最大的不同也是最大的優(yōu)勢就在于它能仿真大量的單片機芯片,比如MCS-51系列、PIC系列等等,以及單片機外圍電路,比如鍵盤、LED、LCD等等。通過Proteus軟件的使用我們能夠輕易地獲得一個功能齊全、實

9、用方便的單片機實驗室。4.2 系統(tǒng)仿真實現(xiàn)根據(jù)設計的方案,在Proteus中畫出相應的原理圖,在Keil中把所需程序生成HEX文件,導入到原理圖中的單片機中,就可以實現(xiàn)仿真了。步驟如下:(1)Keil創(chuàng)建文件步驟:1)新建項目文件。點擊Project 菜單,選擇彈出的下拉式菜單中的New Project。在“文件名”中輸入您的第一個C 程序項目名稱, “*.uv2”?!氨4妗焙蟮奈募U展名為uv2,這是KEIL uVision2 項目文件擴展名,以后可以直接點擊此文件以打開先前做的項目。2)選擇所要的單片機,常用Ateml 公司的AT89C51。3)在項目中創(chuàng)建新的程序文件。點擊新建文件的快捷

10、按鈕,出現(xiàn)一個新的文字編輯窗口,這個操作也可以通過菜單FileNew 或快捷鍵Ctrl+N 來實現(xiàn)。好了,現(xiàn)在可以編寫程序了。4)點擊保存新建的程序,*.c,保存在項目所在的目錄中,這時會發(fā)現(xiàn)程序單詞有了不同的顏色,說明KEIL的C 語法檢查生效了。5)將程序文件加到項目中。在屏幕左邊的Source Group1 文件夾圖標上右擊彈出菜單,在這里可以做在項目中增加減少文件等操作。選“Add File to Group Source Group 1”彈出文件窗口,選擇剛剛保存的文件,按ADD 按鈕,關(guān)閉文件窗,程序文件加到項目中。這時在Source Group1 文件夾圖標左邊出現(xiàn)了一個小+號說

11、明,文件組中有了文件,點擊它可以展開查看。6)設定創(chuàng)建HEX文件選項。7)編譯運行。8)查錯并直至無錯誤。(2)Proteus仿真步驟:1)創(chuàng)建文件并命名“*.dsn”。2)放置元件,設定好參數(shù),并連接電路圖。3)雙擊單片機芯片,添加“*.hex”文件。4)仿真運行。5)檢查錯誤直至達到項目要求。4.3 系統(tǒng)測試沒有按開始鍵時:圖11 開始顯示按開始鍵沒有人搶答時:圖12 沒人搶答顯示按開始鍵有人搶答時:圖13 有人搶答顯示30秒內(nèi)一直沒有人搶答時:圖14 30秒后沒人搶答按復位鍵時:圖15 按復位鍵4.4 數(shù)據(jù)分析主持人按鍵來控制總開關(guān),主持人按下開關(guān)那么選手開始搶答,此時數(shù)碼管開始300計

12、數(shù),并且選手們必須在規(guī)定的時間內(nèi)進行搶答,若過了30秒還沒搶答那么搶答失效,選手們?nèi)粲幸粋€在規(guī)定的時間內(nèi)搶答成功則其余的選手不可以再搶答,即該選手搶答成功。最小系統(tǒng)的電路不工作,首先應該確認電源電壓是否正常。用電壓表測量接地引腳跟電源引腳之間的電壓,看是否符合電源電壓,常用的是5V左右。接下來就是檢測復位引腳的電壓是否正常,EA引腳的電壓要正常為5V左右。5 總結(jié)5.1 設計小結(jié)通過此次的課程設計,讓我更進一步的鞏固了單片機的各種知識。但在設計的過程中,遇到了很多的問題,有一些知識已經(jīng)不太清楚了,但是通過一些資料又重新的翻閱并且認真的復習了相關(guān)教科書中的內(nèi)容。此次的課程設計樹立了對自己工作能力

13、的信心,相信會對今后的學習工作生活都有非常重要的影響,而且大大的提高了動手能力,使我充分的體會到了創(chuàng)造過程中的探索的艱難和成功的喜悅。雖然這次做出的作品還存在很多需要改進的地方,但是在整個設計過程中所學習到的東西是這次實訓所得到的最大收獲跟財富,使我終身受益。5.2 收獲體會經(jīng)過近兩個月的努力,在老師和同學的討論和幫助下,我成功地完成了三路搶答器的設計,通過此次課程設計,我重新認識到了對書本上的知識要獨立運用的道理。在搶答器設計過程中,發(fā)現(xiàn)了很多細節(jié)性的問題,也出現(xiàn)了很多錯誤,經(jīng)過和同學們研究、商討最后都解決,感覺團隊協(xié)作能力是非常有必要的!通過此次的搶答器的設計,讓我重新拾起了以前所學習的電

14、子知識和C語言的編程,也使我加深了對單片機及接口技術(shù)的理解和應用,由于知識水平的局限,設中可能會存在著一些不足,我真誠的接受老師和同學的批評和指正。5.3 展望本設計可以對搶答器擴展的功能有:(1)可以將該搶答器擴展搶答定時功能,添加定時中斷可以比較精確的設置延時。(2)可以對該搶答器擴展多個選手搶答,這樣可以對搶答器不受3位的限制。(3)可以對該對搶答器加上其他功能,如停止鍵,加時間,減時間鍵。6參考文獻1 郭天祥主編. 新概念51單片機C語言教程:入門、提高、開發(fā)、拓展全攻略. 北京:電子工業(yè)出版社,2008:108-120.2侯玉寶等主編.基于Proteus的51系列單片機設計與仿真.北

15、京:電子工業(yè)出版社,2008.9.3謝維成,楊加國主編.單片機原理與應用及C51程序設計.北京:清華大學出版社,2009.7.7附錄1系統(tǒng)流程圖定時器0中斷1秒時間到?秒減1數(shù)碼管顯示秒值中斷返回YN圖 16開始初始化是否按開始鍵啟動中斷,開始計時若有選手搶答?中斷停止,顯示時間和選手號結(jié)束NNYY圖 17外中斷1號選手按下?中斷返回2號選手按下?3號選手按下?數(shù)碼管顯示3號選手編號,蜂鳴器響數(shù)碼管顯示2號選手編號,蜂鳴器響數(shù)碼管顯示1號選手編號,蜂鳴器響NNNYYY圖 18 2器件清單表1 器件清單器件名稱規(guī)格型號數(shù)量單片機AT89C521排阻1電阻10K2電容20PF3晶振12MHZ1按鈕

16、5共陰4位8段數(shù)碼管1揚聲器1三極管1 3程序 #include #include #define uchar unsigned char#define uint unsigned int int a,b,c,d;/數(shù)碼管數(shù)字定義uint l,l2,n,m,lsd;sbit s1=P35;/控制鍵定義sbit d1=P20;sbit d2=P21;sbit d3=P22;/搶答鍵定義sbit w1=P24;sbit w2=P25;sbit w3=P26;sbit w4=P27;sbit feng=P34;/蜂鳴器uchar code table=0x3f,0x06,0x5b,0x4f,0x66

17、,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x76,0x79,0x38,0x3f,0x40,0x00;void display(uchar,uchar,uchar,uchar);void display2(uchar,uchar,uchar,uchar);void delay(uint z)uint t1,y;for(t1=z;t10;t1-)for(y=110;y0;y-);void main()a=3;b=c=d=0;lsd=0x0f;w1=w2=w3=w4=1;TMOD=0x01;TH0=(65536-10000)/2

18、56;TL0=(65536-10000)%256;EA=1;ET0=1;while(1)display(a,b,c,d);if(s1=0)delay(1); if(s1=0)TR0=1; s1=0;if(d1=0) P1=0xfe; m=0;while( (a!=0)|(b!=0)|(c!=0)|(d!=0) TR0=0; display2(a,b,20,1); m+; if(m=300) feng=0; else feng=1; if(d2=0) P1=0xfd; m=0; while( (a!=0)|(b!=0)|(c!=0)|(d!=0) TR0=0; display2(a,b,20,2); m+; if(m=300) feng=0; else feng=1; if(d3=0) P1=0xfb; m=0;while( (a!=0)|(b!=0)|(c!=0)|(d!=0) TR0=0; display2(a,b,20,3); m+; if(m=300) feng=0; else feng=1; vo

溫馨提示

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

評論

0/150

提交評論