畢業(yè)設(shè)計(jì)(電信0801秦月)_第1頁
畢業(yè)設(shè)計(jì)(電信0801秦月)_第2頁
畢業(yè)設(shè)計(jì)(電信0801秦月)_第3頁
畢業(yè)設(shè)計(jì)(電信0801秦月)_第4頁
畢業(yè)設(shè)計(jì)(電信0801秦月)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGEPAGE15畢業(yè)設(shè)計(jì)說明書課題名稱:基于單片機(jī)的四人搶答器學(xué)生姓名秦月專業(yè)電子信息工程技術(shù)班級電信0801時間2010.10—2010.11指導(dǎo)教師游家發(fā)電子信息與自動化工程系四人智力競賽搶答器設(shè)計(jì)摘要搶答器作為一種工具已被廣泛應(yīng)用于各種智力競賽。本設(shè)計(jì)是以四路搶答器為基本理念。主要介紹了利用AT89C51單片機(jī)實(shí)現(xiàn)的搶答器。利用了單片機(jī)的定時器和計(jì)數(shù)器的定時和計(jì)數(shù)原理將軟件和硬件結(jié)合起來,使系統(tǒng)能夠正確的計(jì)時,同時使數(shù)碼管可以正確的顯示時間,達(dá)到了基本的要求。通過定時器中斷來實(shí)現(xiàn)1秒延時,通過查表實(shí)現(xiàn)LED數(shù)碼管的數(shù)字顯示,通過調(diào)用延時子程序9次實(shí)現(xiàn)9秒倒計(jì)時,同時也能夠顯示搶答人的編號。關(guān)鍵字:單片機(jī)AT89C51計(jì)數(shù)搶答器目錄

摘要……………2搶答器電路的概述………31.1搶答器電路的概述1.2本文的內(nèi)容搶答器電路的總體設(shè)計(jì)…………………32.1任務(wù)要求2.2電路設(shè)計(jì)原理圖設(shè)計(jì)中應(yīng)該到的原件介紹………………53.1電平轉(zhuǎn)換器件Max2323.2SN74HC573A10-7線譯碼驅(qū)動器介紹3.3AT89C51單片機(jī)管腳圖及其說明設(shè)計(jì)原理……………84.1設(shè)計(jì)原理分析4.2控制系統(tǒng)的組成4.3主程序流程圖4.4INT0中斷服務(wù)程序框圖程序介紹及源程序………10電路安裝及調(diào)試…………13設(shè)計(jì)總結(jié)與致謝…………13附錄………………………158.1元件清單8.2參考文獻(xiàn)搶答器電路的概述:搶答器電路的概述搶答器是一種應(yīng)用廣泛的設(shè)備,在各種競賽和搶答場合中,它能迅速客觀地分辨出最先獲得發(fā)言權(quán)的選手。早期的搶答器只由幾個三極管、可控硅、發(fā)光管等組成。能通過發(fā)光管的指示辨認(rèn)出選手號碼。現(xiàn)在大多數(shù)搶答器均使用單片機(jī)和數(shù)字集成電路,并增加了許多新功能,如選手號碼顯示、搶按前或搶按后的計(jì)時、選手得分顯示等功能。1.2本文的內(nèi)容本設(shè)計(jì)是以四路搶答器為基本理念。主要介紹了利用AT89C51單片機(jī)實(shí)現(xiàn)的搶答器。利用了單片機(jī)的定時器和計(jì)數(shù)器的定時和計(jì)數(shù)原理將軟件和硬件結(jié)合起來,使系統(tǒng)能夠正確的計(jì)時,同時使數(shù)碼管可以正確的顯示時間,達(dá)到了基本的要求。通過定時器中斷來實(shí)現(xiàn)1秒延時,通過查表實(shí)現(xiàn)LED數(shù)碼管的數(shù)字顯示,通過調(diào)用延時子程序9次實(shí)現(xiàn)9秒倒計(jì)時,同時也能夠顯示搶答人的編號。2.搶答器電路的總體設(shè)計(jì)2.1任務(wù)要求設(shè)計(jì)一個可供4人進(jìn)行的搶答器,設(shè)置一個控制開關(guān)用來控制系統(tǒng)的結(jié)束和搶答的開始。搶答器具有定時搶答的功能,當(dāng)啟動開始鍵后,要求定時器立即倒數(shù)計(jì)時,并用顯示器顯示。參賽選手在設(shè)定的時間內(nèi)搶答,搶答有效,定時器顯示器停止工作,顯示器上分別顯示選手的編號和搶答時間,并保持到系統(tǒng)結(jié)束。2.2電路設(shè)計(jì)原理圖圖2—2電路設(shè)計(jì)原理圖3、設(shè)計(jì)中應(yīng)該到的原件介紹3.1、電平轉(zhuǎn)換器件Max232MAX232芯片是美信公司專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的接口電路,使用+5v單電源供電。內(nèi)部結(jié)構(gòu)基本可分三個部分:第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構(gòu)成。功能是產(chǎn)生+12v和-12v兩個電源,提供給RS-232串口電平的需要。第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由7、8、9、10、11、12、13、14腳構(gòu)成兩個數(shù)據(jù)通道。其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數(shù)據(jù)通道。8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DP9插頭;DP9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。第三部分是供電。15腳DNG、16腳VCC(+5v)。圖3-1Max232集成塊圖3—2Max232電氣連接圖3.2SN74HC573A10-7線譯碼驅(qū)動器介紹圖3-3SN74HC573A7SN74HC573A概述

74HC573八路透明D型鎖存器具有三態(tài)輸出,被設(shè)計(jì)用于驅(qū)動高電容性或相對低阻抗的負(fù)載。74HC573尤其適合用來實(shí)現(xiàn)緩沖寄存器、I/O口、雙向總線驅(qū)動器、以及工作寄存器。

74HC573的八個鎖存器屬于透明D型鎖存器。當(dāng)鎖存使能(LE)端為高時,輸出端Q將跟隨數(shù)據(jù)輸入端(D)。當(dāng)LE為低時,輸出端進(jìn)入鎖存狀態(tài)以保持預(yù)設(shè)好的數(shù)據(jù)。

74HC573的緩沖輸出使能端(OE)可用來設(shè)置八個輸出口工作在普通邏輯狀態(tài)(高或低邏輯電平)或者高阻態(tài)。當(dāng)處于高阻態(tài)時,輸出端既不能讀取也不能驅(qū)動總線。高阻態(tài)和增強(qiáng)驅(qū)動使得74HC573具備總線驅(qū)動能力而不需要接口元件或上拉元件。SN74HC573A參數(shù)74HC573主要參數(shù)電壓

2.0~6.0V驅(qū)動電流

-6/6mA最大傳輸延遲

38ns74HC573其他特性邏輯電平

CMOS輸出數(shù)

874HC573封裝與引腳PDIP20,SOIC20,SSOP20,TSSOP20

SN74HC573A特性

寬工作電壓范圍:2.0~6.0V高強(qiáng)度電流三態(tài)輸出直接驅(qū)動總線,最多可支持高達(dá)15個LSTTL負(fù)載低功耗,最大ICC80μA典型tpd=21ns5V下驅(qū)動電流為±6mA低輸入電流,最大1μA總線結(jié)構(gòu)引腳布局

數(shù)目DCBAabcdefg012345678900000001001000110100010101100111100010010000001100111100100100000110100110001001001100000000111100000000001100表3—3SN74HC573LED線驅(qū)動器真值表(共陽極數(shù)碼管字型碼)3.3、AT89C51單片機(jī)引腳圖與說明圖3-4AT89C51單片機(jī)引腳圖

VCC:供電電壓。

GND:接地。

P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時,P0輸出原碼,此時P0外部必須被拉高。

P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時,P1口作為第八位地址接收。

P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時接收高八位地址信號和控制信號。

P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。

P3口也可作為AT89C51的一些特殊功能口,如下表所示:

口管腳備選功能

P3.0RXD(串行輸入口)

P3.1TXD(串行輸出口)

P3.2/INT0(外部中斷0)

P3.3/INT1(外部中斷1)

P3.4T0(記時器0外部輸入)

P3.5T1(記時器1外部輸入)

P3.6/WR(外部數(shù)據(jù)存儲器寫選通)

P3.7/RD(外部數(shù)據(jù)存儲器讀選通)

P3口同時為閃爍編程和編程校驗(yàn)接收一些控制信號。

RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。

ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。

/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。

/EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。

XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。

XTAL2:來自反向振蕩器的輸出。4、設(shè)計(jì)原理分析4.1設(shè)計(jì)原理分析整個流程過程主要四大塊:顯示部分,計(jì)時部分,預(yù)置部分,控制部分.電源用正5伏,8051主控制器,當(dāng)主持人按下復(fù)位鍵后,定時器開始計(jì)時,在0~9秒的時間內(nèi)如果沒有人搶答則為棄權(quán),如果有人按鍵定時器停止計(jì)時間,自動顯示組別并發(fā)出高頻鈴聲,打完后按復(fù)位鍵開始下一輪搶答系統(tǒng)軟件由主程序,查表數(shù)字顯示子程序和9秒倒計(jì)時子程序,用定時器中斷0方式做的1秒延時子程序組成。主程序由按鍵掃描,編號顯示,9秒倒計(jì)時等功能子程序組成,系統(tǒng)完成初始化后循環(huán)檢查各個功能當(dāng)用戶使用某個功能時,按下相應(yīng)的按鈕(或開關(guān))單片機(jī)進(jìn)入相應(yīng)的功能處理。INT0中斷服務(wù)程序完成搶答信號采樣和識別處理。4.2控制系統(tǒng)組成控制系統(tǒng)主要由單片機(jī)應(yīng)用電路、存儲器接口電路、顯示接口電路組成。其中單片機(jī)AT89C51是系統(tǒng)工作的核心,它主要負(fù)責(zé)控制各個部分的協(xié)調(diào)工作。4.3、主程序流程圖:圖4-1主程序流程圖4.4INT0中斷服務(wù)程序框圖:INT0中斷服務(wù)程序入口INT0中斷服務(wù)程序入口采樣P2口給R0R0=00H?顯示“HH”提示搶答開始采樣P2給R1R2=(R0⊕R1)·R0R2=0嗎?R2中1的個數(shù)為1嗎?用隨機(jī)定位查找法確定第一有效搶答信號搶答鍵號顯示及光亮報訊延時9后關(guān)顯示R0=FFH?有違規(guī)信號P1.4置1無違規(guī)信號P1.4置0返回八路全部違規(guī)顯示“UU”延時9S圖4—2中斷服務(wù)程序框圖5、程序介紹及源程序1.定時整定:復(fù)位鍵復(fù)位以后,處理器收到整定時間的信號,這樣給片內(nèi)用于定時設(shè)置的單元連續(xù)的加1操作,其過程的狀態(tài)顯1位顯示器顯示,當(dāng)斷開整定開關(guān)程序轉(zhuǎn)入下一步的訪問.2.組別顯示:當(dāng)有人搶答時,則停止定時顯示組別,搶答有效發(fā)出高頻鈴聲(輸出2KHZ脈沖),無效為低頻鈴聲(輸出為1KHZ脈沖),此處用了一個鍵操作程序,還有一個脈沖信號輸出程序ORG00H;主程序的起始地址JMPSTARTSTART:CSH:MOVP0,#0c0hJBp1.0,CSH;掃描搶答啟動按鍵p1.0是否按下,沒有就繼續(xù)執(zhí)行初始化顯示00SM:JnBP2.0,A1;4路按鍵掃描程序,掃描p2.0—p2.3四個端口是否有0電平JnBP2.1,A1JnBP2.2,A1JnBP2.3,A1SJMPSM;4路都沒有搶答信號進(jìn)入,程序就挑著到開始入口SMA1:JnBP2.0,B0_0;有掃描信號進(jìn)來,就具體判斷是哪個選手搶答JnBP2.1,B1_1JnBP2.2,B2_2JnBP2.3,B3_3B0_0:AJMPB0B1_1:AJMPB1B2_2:AJMPB2B3_3:AJMPB3B0:CLRP2.7;清除二極管發(fā)光SETBP1.6;開通個位位選CLRP1.7;關(guān)閉十位位選 MOVA,#0C0H;查表將0的字段碼傳送累加器A顯示編號0MOVP0,A;將字段碼送p0口輸出 ACALLDELAY;延時一秒 ACALLDELAY;延時一秒 ACALLDELAY;延時一秒ACALLDJS;調(diào)用9秒倒計(jì)時子程序AJMPA1;跳出顯示子程序,返回到掃描程序A1B1:CLRP2.7;清除二極管發(fā)光 SETBP1.6;開通個位位選CLRP1.7;關(guān)閉十位位選 MOVA,#0F9H;查表將1的字段碼傳送累加器A顯示編號1MOVP0,A;將字段碼送p0口輸出 ACALLDELAY;延時一秒 ACALLDELAY;延時一秒 ACALLDELAY;延時一秒 ACALLDJS;調(diào)用9秒倒計(jì)時子程序AJMPA1;跳出顯示子程序,返回到掃描程序A1 B2:CLRP2.7;清除二極管發(fā)光 SETBP1.6;開通個位位選CLRP1.7;關(guān)閉十位位選 MOVA,#0A4H;查表將0的字段碼傳送累加器A顯示編號2MOVP0,A;將字段碼送p0口輸出 ACALLDELAY;延時一秒ACALLDELAY;延時一秒 ACALLDELAY;延時一秒 ACALLDJS;調(diào)用9秒倒計(jì)時子程序AJMPA1;跳出顯示子程序,返回到掃描程序A1 B3CLRP2.7;清除二極管發(fā)光 SETBP1.6;開通個位位選CLRP1.7;關(guān)閉十位位選 MOVA,#0B0H;查表將0的字段碼傳送累加器A顯示編號3MOVP0,A;將字段碼送p0口輸出 ACALLDELAY;延時一秒ACALLDELAY;延時一秒 ACALLDELAY;延時一秒 ACALLDJS;調(diào)用9秒倒計(jì)時子程序AJMPA1;跳出顯示子程序,返回到掃描程序A1 DJS:;9S倒計(jì)時子程序 CLRP1.6;關(guān)閉個位位選 SETBP1.7;選通十位位選 MOVA,#09H;將9送累加器A MOVR1,#09H;將9送寄存器R1 LOOP: MOVDPTR,#TAB;查表首地址送DPTR MOVCA,@A+DPTR;查表得的內(nèi)容送累加器 MOVP0,A;A當(dāng)中的字段碼送p0口輸出 ACALLDELAY;延時一秒 DJNZR1,S;R1自減1非0跳轉(zhuǎn)到S S: MOVA,R1;將R1當(dāng)中內(nèi)容送累加器 SJMPLOOP;跳轉(zhuǎn)到LOOOP實(shí)現(xiàn)循環(huán) SETBP1.5 ACALLYS;二極管閃爍 CLRP1.5 SETBP1.5 ACALLYS;二極管閃爍 CLRP1.5 ret DELAY:;1S延時 MOVR3,#200 MOVTMOD,#00H MOVTH0,#63H MOVTL0,#18H SETBTR0 LP1:JBCTF0,LP2 SJMPLP1 LP2:MOVTH0,#63H MOVTL0,#18H DJNZR3,LP1 RET YS:;0.5S延時 MOVR6,#64H LOOP1: MOVR7,#0F8H NOP LOOP2:DJNZR7,LOOP2 DJNZR6,LOOP1 RET TAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;共陽極數(shù)碼管的字段碼查表表格 END;結(jié)束程序6:安裝與調(diào)試在進(jìn)行實(shí)物制作前,一定要先仔細(xì)分析研究整機(jī)工作原理圖,讀懂每一部分電路的工作原理和連接關(guān)系,然后在電路板上細(xì)心的設(shè)計(jì)元器件的位置安排,一般遵從“先大后小,先整后散”的組裝原則。焊接時的注意事項(xiàng):注意二極管和三極管的極性,在焊接之前用儀器測出。在焊接之前要把各個電阻的阻值用萬用表測試,檢查阻值是否正確。檢查變壓器的型號,確定220V的交流電經(jīng)變壓器變壓后是合適的電壓。最好選用220V/25W的電烙鐵。焊接時動作要快,以免把電路板銅線燙壞;焊接要準(zhǔn)確。每焊接好一處注意要檢查是否有短路現(xiàn)象。我的體會:焊接前一定要把電路圖讀懂,不然的話在焊接的時候很容易出現(xiàn)錯誤,一旦出現(xiàn)了錯誤在檢查的過程中很難找到錯誤之處。再就是在焊接之前合理的安排各個元器件的放置位置,不然的話在焊接的時候不好連線且很容易造成接錯位置的情況,檢查的時候也不好檢查。7.設(shè)計(jì)總結(jié)與體會這個課題的設(shè)計(jì)由理論聯(lián)系實(shí)踐,極大地培養(yǎng)了我們的動手能力和團(tuán)隊(duì)合作思想。通過和小組內(nèi)其他四名成員的合作讓我學(xué)習(xí)到了許多知識,使我受益匪淺,并認(rèn)識到了自身選多不足之處,改正了在平時的學(xué)習(xí)中浮躁的心理,相信對于以后的學(xué)習(xí)會有極大的改益。通過查資料和搜集有關(guān)的文獻(xiàn),我們培養(yǎng)了自學(xué)能力和動手能力。并且由原先的被動的接受知識轉(zhuǎn)換為主動的尋求知識,這可以說是學(xué)習(xí)上一個很大的突破。在以往的傳統(tǒng)學(xué)習(xí)模式下,我們可能會記住很多的書本知識,但是通過畢業(yè)論文我們學(xué)會了如何將學(xué)習(xí)到的知識學(xué)以致用。在設(shè)計(jì)過程中由于時間倉促以及自身所學(xué)有限很多地方難免有不足之處,硬件設(shè)計(jì)已經(jīng)完成,在軟件設(shè)計(jì)中有些功能還沒

溫馨提示

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

評論

0/150

提交評論