單片機八人搶答器課程設(shè)計報告_第1頁
單片機八人搶答器課程設(shè)計報告_第2頁
單片機八人搶答器課程設(shè)計報告_第3頁
單片機八人搶答器課程設(shè)計報告_第4頁
單片機八人搶答器課程設(shè)計報告_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機計課程設(shè)報告八人搶答器 專業(yè):電子信息工程 姓名: 學(xué)號:2014-12-3 目錄一:名稱與目的1. 設(shè)計要求及目的二:硬件電路設(shè)計1.總體原理圖 2.時鐘頻率電路的設(shè)計 3.復(fù)位電路的設(shè)計4.顯示電路的設(shè)計 5.鍵盤掃描電路的設(shè)計 6.發(fā)聲 7.系統(tǒng)復(fù)位三.系統(tǒng)軟件設(shè)計1系統(tǒng)原理圖2.程序流程圖3.程序四.調(diào)試1.系統(tǒng)的調(diào)試2.具體調(diào)試3.調(diào)試實物圖第一章:要求:1、八人搶答邏輯:只有一個最先搶答有效。2、在主持人控制下,10秒內(nèi)搶答有效。3、采用數(shù)碼管顯示搶答10秒倒計時,若有搶答直接結(jié)束,顯示結(jié)果。4、搶答結(jié)束后用數(shù)碼管顯示搶答結(jié)果:搶答有效人編號;若有異常(提前搶答,犯規(guī)),顯示

2、搶答人編號和E,本次搶答結(jié)束 。5、設(shè)主持人控制鍵、復(fù)位鍵。 控制鍵:啟動搶答 復(fù)位鍵:系統(tǒng)復(fù)位6、開始、正常結(jié)束、搶答結(jié)束、違規(guī)搶答采用聲音提示。第二章:系統(tǒng)硬件設(shè)計 為使硬件電路設(shè)計盡可能合理,應(yīng)注意以下幾方面:(1) 盡可能采用功能強的芯片,以簡化電路,功能強的芯片可以代替若干普通芯片,隨著生產(chǎn)工藝的提高,新型芯片的的價格不斷下降,并不一定比若干普通芯片價格的總和高。(2) 留有設(shè)計余地。在設(shè)計硬件電路時,要考慮到將來修改擴展的方便。因為很少有一錘定音的電路設(shè)計,如果現(xiàn)在不留余地,將來可能要為一點小小的修改或擴展而被迫進行全面返工。(3) 程序空間,選用片內(nèi)程序空間足夠大的單片機,本設(shè)計

3、采用STC89C52單片機。(4) I/O端口,在樣機研制出來后進行現(xiàn)場試用時,往往會發(fā)現(xiàn)一些被忽視的問題,而這些問題不是靠單純的軟件措施來解決的。如有些新的信號需要采集,就必須增加輸入檢測端;有些物理量需要控制,就必須增加輸出端。如果在硬件電路設(shè)計就預(yù)留出一些I/O端口,雖然當時空著沒用,那么用的時候就派上用場了。原理圖: 2.時鐘頻率電路的設(shè)計:單片機必須在時鐘的驅(qū)動下才能工作.在單片機內(nèi)部有一個時鐘振蕩電路,只需要外接一個振蕩源就能產(chǎn)生一定的時鐘信號送到單片機內(nèi)部的各個單元,決定單片機的工作速度。外部振蕩源電路一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在XTAL2

4、引腳產(chǎn)生幅度為3V左右的正弦波時鐘信號,其振蕩頻率主要由石英晶振的頻率確定。電路中兩個電容 C1,C2的作用有兩個:一是幫助振蕩器起振;二是對振蕩器的頻率進行微調(diào)。C1,C2的典型值為30PF。單片機在工作時,由內(nèi)部振蕩器產(chǎn)生或由外直接輸入的送至內(nèi)部控制邏輯單元的時鐘信號的周期稱為時鐘周期。其大小是時鐘信號頻率的倒數(shù),常用fosc表示。如時鐘頻率為12MHz,即fosc=12MHz,則時鐘周期為1/12µs3.復(fù)位電路的設(shè)計單片機的第9腳RST為硬件復(fù)位端,只要將該端持續(xù)4個機器周期的高電平即可實現(xiàn)復(fù)位,復(fù)位后單片機的各狀態(tài)都恢復(fù)到初始化狀態(tài),其電路圖如圖所示:復(fù)位電路值得注意的是,

5、在設(shè)計當中使用到了硬件復(fù)位和軟件復(fù)位兩種功能,由上面的硬件復(fù)位后的各狀態(tài)可知寄存器及存儲器的值都恢復(fù)到了初始值,而前面的功能介紹中提到了倒計時時間的記憶功能,該功能的實現(xiàn)的前提條件就是不能對單片機進行硬件復(fù)位,所以設(shè)定了軟復(fù)位功能。軟復(fù)位實際上就是當程序執(zhí)行完畢之后,將程序指針通過一條跳轉(zhuǎn)指令讓它跳轉(zhuǎn)到程序執(zhí)行的起始地址。4.顯示電路的設(shè)計顯示功能與硬件關(guān)系極大,當硬件固定后,如何在不引起操作者誤解的前提下提供盡可能豐富的信息,全靠軟件來解決。5.鍵盤掃描電路的設(shè)計鍵盤是人與微機系統(tǒng)打交道的主要設(shè)備。關(guān)于鍵盤硬件電路的設(shè)計方法也可以在文獻和書籍中找到,配合各種不同的硬件電路,這些書籍中一般也提

6、供了相應(yīng)的鍵盤掃描程序。站在系統(tǒng)監(jiān)控軟件設(shè)計的立場上來看,僅僅完成鍵盤掃描,讀取當前時刻的鍵盤狀態(tài)是不夠的,還有不少問題需要妥善解決,否則,人們在操作鍵盤就容易引起誤操作和操作失控現(xiàn)象。在單片機應(yīng)用中鍵盤用得最多的形式是獨立鍵盤及矩陣鍵盤。獨立鍵盤而且在程序設(shè)計上也不復(fù)雜,一般用在對硬件電路要求不高的簡單電路中;矩陣鍵盤與獨立鍵盤有很大區(qū)別,首先在硬件電路上它要比獨立鍵盤復(fù)雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢得多,因此它更適合于多按鍵電路。其次就是消除在按鍵過程中產(chǎn)生的“毛刺”現(xiàn)象。這里采用最常用的方法,即延時重復(fù)掃描法,延時法的原理為:因為“毛刺”脈沖一般持續(xù)時間短

7、,約為幾ms,而我們按鍵的時間一般遠遠大于這個時間,所以當單片機檢測到有按鍵動靜后再延時一段時間(這里我們?nèi)?0ms)后再判斷此電平是否保持原狀態(tài),如果是則為有效按鍵,否則無效。6.發(fā)聲我們知道,聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來控制單片機某個口線的“高”電平或低電平,則在該口線上就能產(chǎn)生一定頻率的矩形波,接上喇叭就能發(fā)出一定頻率的聲音,若再利用延時程序控制“高”“低”電平的持續(xù)時間,就能改變輸出頻率,從而改變音調(diào),使喇叭發(fā)出不同的聲音。7.系統(tǒng)復(fù)位使CPU進入初始狀態(tài),從0000H地址開始執(zhí)行程序的過程叫系統(tǒng)復(fù)位。從實現(xiàn)系統(tǒng)復(fù)位的方法來看,系統(tǒng)復(fù)位可分為硬件復(fù)位和軟件復(fù)位。硬件

8、復(fù)位必須通過CPU外部的硬件電路給CPU的RESET端加上足夠時間的高電位才能實現(xiàn)。三.系統(tǒng)軟件設(shè)計軟件任務(wù)分析和硬件電路設(shè)計結(jié)合進行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計基本定型后,也就基本上決定下來了。1 系統(tǒng)原理圖2. 2.程序流程圖在本設(shè)計中包括了以下八個主要的程序:主程序;非法搶答序;搶答時間調(diào)整程序;回答時間調(diào)整程序;倒計時程序;正常搶答處理程序;犯規(guī)處理程序;顯示及發(fā)聲程序。主流程圖如圖所示: 程序:#include<reg52.h>#include<intrins.h>#define uint unsigned int#define u

9、char unsigned char#define sled_dm_port p0#define sled_wm_port p2uchartable=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;/* 0 1 2 3 4 5 6 7 8 9a b c d e f*/sbit SW1=P20; sbit SW2=P21; sbit SW3=P22; sbit SW4=P23; sbit SW5=P24; sbit SW6=P25; sbit SW7=P26; sbit SW8=P27

10、;sbit START=P13;sbit RESET=P15;sbit ADD=P16;sbit DEC=P17;sbit A=P14;sbit H1=P10;sbit H2=P11;sbit H3=P12;void fengming();void keyscan();void display();void delay(uint);void FUWEI();void qushu();uint input=30;uchar ge,shi,bai=0,n=1,m=0,t=0,temp;void main()TMOD=0x01;TH0=(65536-46080)/256;TL0=(65536-460

11、80)%256;EA=1; ET0=1;while(1) keyscan(); qushu();display();void FUWEI()TR0=0;TH0=(65536-46080)/256;TL0=(65536-46080)%256;T=0;fengming();bai=0;input=30;void display() H1=0;P0=tablebai;Delay(1);H1=1;H2=0;P0=tableshi;delay(1);H2=1;H3=0;P0=tablege;Delay(1);H3=1;void qushu() shi=input/10;ge=input%10;void

12、keyscan()if(RESET=0) delay(200);FUWEI();n=1;if(n) if(START=0) fengming();TR0=1;m=1;n=0;If(n)If(ADD=0)Delay(200)Input+If(DEC=0)Delay(200);Input-;If(m)If(P1!=0xFF)temp=P1;m=0;START switch(temp) case 0xFE:bai=1,fengming();break; case 0xFD:bai=2,fengming(); break; case 0xFB:bai=3,fengming(); break; case

13、 0xF7:bai=4,fengming(); break; case 0xEF:bai=5, fengming(); break; case 0xDF:bai=6, fengming(); break; case 0xBF:bai=7,fengming(); break; case 0x7F:bai=8,fengming(); break;TR0=0;void timer()interrupt 1TH0=(65536-46080)/256;TL0=(65536-46080)%256;t+;if(t=20)t=0;input-;if(input=0)FUWEI();qushu();void delay(uint z) uint x,y; for(x=100;x>0;x-

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論