版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于51單片機八路搶答器計課程設計設計題目: 八路搶答器 學院系別: 電氣工程學院 班 級: 電氣1001 設計學生: xxxx 指導老師: xxx 設計時間: 2012年6月4日-6月10日 摘 要 搶答器是一種常見的電子產品,尤其是在各類智力競猜中,為了實現選手的公平性,性能優(yōu)良的搶答器往往更能得到各單位的青睞。這里通過兩種設計方案的對比,最終選定了用單片機實現搶答器電路。由于單片機具有可編程定時器和中斷設備,便于實現編程和時間的精確控制。所用方案電路結構簡單,易于實現,它用4個七段數碼管來顯示,且具有簡單精準的報警電路。所選方案的一個很重要的特點在于具有靈活性,主持人可以根據題目難易進行
2、時間設定,這樣進一步保證了公平性。由于它具有成本低廉,結構簡單,且性能優(yōu)良的諸多優(yōu)點,必定會得到廣泛的應用。關鍵詞:搶答器 ,單片機 ,七段數碼管,時間設定 目 錄一 方案的概述11.1 設計內容及要求11.1.1 設計內容11.1.2 設計要求11.2 設計方框圖21.3 搶答器的程序流程3二 搶答器單元設計及其說明82.1主要芯片的介紹82.2程序流程圖102.3 MAX7219122.3.1 MAX7219引腳說明122.3.2 基本的工作方法132.3.3 MAX7219初始化142.3.4 部分程序功能介紹142.4LCD簡介16和LED的區(qū)別16顯示電路設計和LCD的引腳功能說明1
3、7液晶顯示模塊18三搶答器電路原圖及仿真203.1搶答器原理圖203.2仿真軟件介紹213.3仿真測試效果22設計總結25參考文獻26附錄一27附錄二38一 方案的概述1.1 設計內容及要求 設計內容1設計一個智力競賽搶答器,可同時供8名選手或8個代表隊參加比賽,他們的編號分別是1、2、3、4、5、6、7、8,各用一個搶答按鈕,按鈕的編號與選手的編號相對應,分別是S0、S1、S2、S3、S4、S5、S6、S7。2給節(jié)目主持人設置一個控制開關,用來控制系統的清零(編號顯示數碼管滅燈)和搶答的開始。3搶答器具有數據鎖存和顯示的功能。搶答開始后,若有選手按動搶答按鈕,編號立即鎖存,并在LED數碼管上
4、顯示出選手的編號,同時蜂鳴器給出音響提示。此外,要封鎖輸入電路,禁止其他選手搶答。優(yōu)先搶答選手的編號一直保持到主持人將系統清零為止。4用中小規(guī)模集成電路組成智力競賽搶答器電路,畫出各單元電路圖和總體邏輯框圖,正確描述各單元功能,合理選用電路器件,畫出完整的電路設計圖以及寫出設計總結報告 設計要求1、如果想調節(jié)搶答時間或答題時間,按搶答時間調節(jié)鍵或答題時間調節(jié) 鍵進入調節(jié)狀態(tài),此時會顯示現在設定的搶答時間或回答時間值,如想加一秒按一下加1s鍵,如果想減一秒按一下-1s鍵,時間LED上會顯示改變后的時間,調整范圍為0s99s, 0s時再減1s會跳到99,99s時再加1s會變到0s。 2、主持人按搶
5、答開始鍵,會有提示音,并立刻進入搶答倒計時(預設30s搶答時間),如有選手搶答,會有提示音,并會顯示其號數并立刻進入回答倒計時(預設60s搶答時間),不進行搶答查詢,所以只有第一個按搶答的選手有效。倒數時間到小于5s會每秒響一下提示音。 3、如倒計時期間,主持人想停止倒計時可以隨時按停止按鍵,系統會自動進入準備狀態(tài),等待主持人按搶答開始進入下次搶答計時。 4、如果主持人未按搶答開始鍵,而有人按了搶答按鍵,犯規(guī)搶答,LED上不斷閃爍FF和犯規(guī)號數并響個不停,直到按下停止 鍵為止。 5、P3.0為開始搶答,P3.1為停止,p1.0-p1.7為八路搶答輸入 數碼管段選P0口,位選P2口低3位,蜂鳴器
6、輸出為P3.6口。P3.2搶答時間調整整,P3.3回答時間調整,P3.4為時間加1調整,P3.5為時間減1調整。6、當參賽選手在回答問題時要求使用錦囊,則主持人按下搶答開始鍵,計時重新開始。1.2 設計方框圖如圖(1-1)所示為八路智力搶答器設計的物理模塊劃分如下:單片機搶答模塊(八路輸入)控制模塊(主持人操作)顯示模塊(倒計時、選手號)語音提示模塊 圖1-1 設計物理框圖通過主持人的相關操作(包括開始、停止、調時、錦囊使用等),以及選手的搶答,顯示模塊與語音模塊應能迅速做出正確回應。如主持人按下開始,語音模塊立刻給以語音提示,顯示模塊立刻顯示搶答倒計時;當有選手搶答,顯示模塊應馬上顯示最先搶
7、答的選手號,并進入答題倒計時 而這一切,都有賴于本設計的核心模塊51單片機來控制。通過一系列的匯編程序,來控制、實現相應的邏輯功能。本設計中大部分的較為復雜的邏輯控制,都是用相應的匯編程來控制實現的。根據相應的設計要求,對本設計可作如下分析:1、由設計要求1,本設計應具有搶答時間調整和回答時間調整程序,并由相應引腳來控制:P3.2搶答時間調整,P3.3回答時間調整,P3.4為加1s,P3.5為減1s;2、根據設計要求2,本設計應具有搶答、回答倒計時功能,即倒計時程序。通過查詢開始鍵的狀態(tài)來決定是否進入搶答倒計時,開始鍵按下后有人搶答便立即進入回答倒計時,倒計時小于5s時,調用發(fā)聲程序;3、程序
8、中應不斷查詢停止 鍵的狀態(tài),一旦其按下,應立即退出,并進入查詢程序(用來查詢開始鍵與八路搶答鍵的狀態(tài));4、 為使本設計具有錦囊功能,在回答倒計時過程中,若按下開始鍵,回答倒計時重新開始。1.3 搶答器的程序流程本設計采用P3.2、P3.3分別接搶答時間調節(jié)和答題時間調節(jié)按鈕,即通過外部中斷0、外部中斷1分別控制搶答、答題時間的調整。因此,設計的軟件部分可分為工作模塊、外部中斷0模塊、外部中斷1模塊。對流程圖的分析,也分三部分來介紹。(1)工作時(非調節(jié)時間時)的流程平時正常工作時,程序的流程圖繪制如圖1-2:對工作流程圖中的某些部分解釋如下:初始化部分:包括對定時計數器的工作方式、初始化數值
9、的設置,還包括對搶答時間與答題時間的預設,另外,還應對外部中斷0、外部中斷1進行開放。搶答倒計時、回答倒計時部分:由于二者功能的相似性,本設計將二者在一個子程序倒計時程序中一起編寫。犯規(guī)程序部分:包括對犯規(guī)選手號的顯示、報警器的間斷工作。另外,由于在設計要求主持人能隨時對工作過程終止,因此,要不斷查詢停止鍵的狀態(tài),一旦按下,便回到初始化后的狀態(tài);在倒計時過程中還要不斷將與5S比較,當小于5S時,還需調用發(fā)聲程序;小于5S后, 又需要不斷將與0較,當其等于零時,立即返回。圖1-2 工作流程圖(2)外部中斷0(搶答時間調整)流程外部中斷0(搶答時間調整)的流程圖見圖1-3:INT0中斷Y顯示當前搶
10、答時間P3.4按下?P3.5按下?搶答時間加1sNYN結果為100s?結果置0N結果為0s?結果置100搶答時間減1sYYN停止鍵按下?中斷返回NY圖1-3 INT0流程圖一旦因P3.2對應鍵的按下,便進入INT0中斷過程。通過不斷對P3.4(加1s)和P3.5(減1s)進行不斷的查詢,來對搶答時間進行調整:發(fā)現P3.4按下,就對原搶答時間加1s, 發(fā)現P3.5下,就對原搶答時間減1s并調用顯示程序。根據設計要求,當加至99s時,若再加1s,則時間變?yōu)?;當減至0s后,若再減一秒,時間變?yōu)?9s。因此,流程中應該對當前時間于99s或0s比較,再作出相應處理。另外,在中斷過程中還需要不時對停止按
11、鈕進行查詢,一旦發(fā)現其按下,立即中斷返回。由于本中斷過程在返回前一直是循環(huán)執(zhí)行的,因此,只需要在每次循環(huán)末查詢一次即可,如流程圖所示(3)外部中斷1(答題時間調整)流程外部中斷1(答題時間調整)流程與外部中斷1流程大同小異。其程序流程參見圖1-4:與搶答時間調整類似,一旦因P3.3對應的按鈕按下,便進入INT1中斷過程。通過不斷對P3.4(加1s)和P3.5(減1s)進行不斷的查詢,來對搶答時間進行調整:發(fā)現P3.4按下,就對原搶答時間加1s, 發(fā)現P3.5下,就對原搶答時間減1s并調用顯示程序。當加至99s時,若再加1s,則時間變?yōu)?;當減至0s后,若再減一秒,時間變?yōu)?9s。因此,流程中應
12、該對當前時間于99s或0s比較,再作出相應處理。同上,在中斷過程中,也還需要不時對停止按鈕進行查詢,一旦發(fā)現其按下,立即中斷返回。INT1中斷Y顯示當前答題時間P3.4按下?P3.5按下?答題時間加1sNYN結果為100s?結果置0N結果為0s?結果置100答題時間減1sYYN停止鍵按下?中斷返回NY圖1-4 INT1流程圖二 搶答器單元設計及其說明2.1主要芯片的介紹 AT89SC52的引腳圖如圖2-1所示圖2-1 AT89SC52芯片引腳圖1) 主要性能本方案所使用的主要芯片是AT89SC52, 它與MCS-51單片機產品兼容 、8K字節(jié)在系統可編程Flash存儲器、 1000次擦寫周期、
13、 全靜態(tài)操作:0Hz33Hz 、 三級加密程序存儲器 、 32個可編程I/O口線 、三個16位定時器/計數器 八個中斷源 、全雙工UART串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時器 、雙數據指針 、掉電標識符 。2) 功能特性描述 At89sc52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統可編程Flash 存儲器。使用Atmel 公司高密度非 易失性存儲器技術制造,與工業(yè)80C51 產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統 可編程Flash,使得AT89SC5
14、2為眾多嵌入式控制應用系統提 供高靈活、超有效的解決方案。 AT89S52具有以下標準功能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門狗定時器,2 個數據指針,三個16 位 定時器/計數器,一個6向量2級中斷結構,全雙工串行口, 片內晶振及時鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時器/計數器、串口、中斷繼續(xù)工 作。掉電保護方式下,RAM內容被保存,振蕩器被凍結, 單片機一切工作停止,直到下一個中斷或硬件復位為止。8 位微控制器 8K 字節(jié)在系統可編程 Flash AT89S5
15、2。3) P0、P1口介紹 P0 口:P0 口是一組8 位漏極開路型雙向I/O 口, 也即地址/數據總線復用口。作為輸出口用時,每位能吸收電流的方式驅動8 個TTL邏輯門電路,對端口P0 寫“1”時,可作為高阻抗輸入端用。在訪問外部數據存儲器或程序存儲器時,這組口線分時轉換地址(低8 位)和數據總線復用,在訪問期間激活內部上拉電阻。在Flash 編程時,P0 口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。 P1 口:P1 是一個帶內部上拉電阻的8 位雙向I/O 口, P1 的輸出緩沖級可驅動(吸收或輸出電流)4 個TTL 邏輯門電路。對端口寫“1”,通過內部的上拉電阻
16、把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。與AT89C51 不同之處是,P1.0 和P1.1 還可分別作為定時/計數器2 的外部計數輸入(P1.0/T2)和輸入(P1.1/T2EX),參見表2-1表2-1 P1.0 P2.0 引腳功能特性4) 本方案中用到的一些引腳介紹 XTAL1:振蕩器反相放大器的及內部時鐘發(fā)生器的輸入端。 XTAL2:振蕩器反相放大器的輸出端。 特殊功能寄存器: 在AT89C52 片內存儲器中,80H-FFH 共128 個單元為特殊功能寄存器(SFE)。 并非所有的地址都被定義,從80HFFH
17、 共128 個字節(jié)只有一部分被定義,還有相當一部分沒有定義。對沒有定義的單元讀寫將是無效的,讀出的數值將不確定,而寫入的數據也將丟失。不應將數據“1”寫入未定義的單元,由于這些單元在將來的產品中可能賦予新的功能,在這種情況下,復位后這些單元數值總是“0”。 AT89C52除了與AT89C51所有的定時/計數器0 和定時/計數器1 外,還增加了一個定時/計數器2。定時/計數器2 的控制和狀態(tài)位位于T2CON,T2MOD,寄存器對(RCAO2H、RCAP2L)是定時器2 在16 位捕獲方式或16 位自動重裝載方式下的捕獲/自動重裝載寄存器。2.2程序流程圖 圖2-2 程序流程圖2.3 MAX721
18、9 MAX7219引腳說明引腳說明見表2-2表2-2 MAX7219引腳說明引腳號名稱功能說明1Din串行數據輸入端在CLK的上升沿數據被鎖入芯片內部16位移位寄存器。235DIG0DIG78位LED位選線,從共陰極LED中吸入電流。49GND地線(兩個GND必須連在一起)。12Load鎖入輸入的數據在Load上升沿最后的16位串行數據被鎖入。13CLK時鐘輸入,最高時鐘頻率為10MHZ,在CLK的上升沿數據被鎖入內部移位寄存器,在CLK的下降沿,數據從Dout腳被輸出。1417 2023SegASegG.DP7段驅動和小數點驅動18Iset該腳通過一個電阻與V+相連,設置峰值段電流。19V+
19、電源電壓,+5V。24Dout串行數據輸出。輸入到Din的數據在16.5個時鐘周期后在Dout腳發(fā)出,該腳用于與級聯擴展 基本的工作方法MAX7219與8031單片機連接采用三線串行接口,典型應用電路如表2-3所示。Y&FeN;y-jGuest表2-3 16位數據包的數據格式如下:D0D7D8D11D12D13D14D15LSB DATA MSBADDRESSD7D0:8位數據位,D7最高位,D0最低位; D11D8:4位地址位; D15D12:無關位,通常全取1。MAX7219通過D11D84位地址位譯碼,可尋址14個內部寄存器,分別是8個LED顯示位寄存器,5個控制寄存器和1個空操作寄存器
20、。LED顯示寄存器由內部88靜態(tài)RAM構成,操作者可直接對位寄存器進行個別尋址,以刷新和保持數據,只要V超過2V(一般為5V)。a y6i/e8G(rW0nGuest控制寄存器包括:譯碼模式,顯示亮度調節(jié),掃描限制(選擇掃描位數),關斷和顯示測試寄存器。 EETOP專業(yè)博客-電子工程師自己的家園1wm0-?7B-v&Lt PGueste(|ox*U )vGuestMAX7219的驅動程序首先必須對5個控制寄存器(地址分配見表2-4)初始設置即初始化,各控制寄存器設置含義如下:譯碼模式選擇寄存器(地址=F9H);5G)sJwGm+CGuestEETOP專業(yè)博客-電子工程師自己的家園xG/U9Y3
21、O|共有4種譯碼模式供選擇,當數據位全0時選擇“非譯碼方式”。在此方式下,8個數據位分別一一對應7個段和小數點。通常選擇此方式。 1Qeb#k qGuestk54q6Y+vGuest掃描限制寄存器:地址FBH;用于設置顯示的LED個數(18),當D2D1D0111、D7D6D5D4D3無關時,可接8個LED管。EETOP專業(yè)博客-電子工程師自己的家園9rB3Dw#Y0X 亮度調節(jié)寄存器:地址FAH;CB!iae rp-qGuest共有16級選擇,用于LED顯示亮度的強弱設置。EETOP專業(yè)博客-電子工程師自己的家園99lia(8D$hw 關斷模式寄存器:地址FCH;EETOP專業(yè)博客-電子工程
22、師自己的家園K_*aVSI 有兩種模式選擇:一種是關斷狀態(tài)模式(D00);一種是正常操作狀態(tài)(D01),通常選擇正常操作狀態(tài)。EETOP專業(yè)博客-電子工程師自己的家園bjA|Q 顯示測試寄存器:地址FFH;有兩種選擇用于設置LED是測試狀態(tài)還是正常操作狀態(tài):當在測試狀態(tài)時(D01)各位全應亮,一般選擇正常操作狀態(tài)(D0=0)。表2-4 寄存器地址分配表寄存器名稱地址D15D12D11D10D9D8空操作0000Digit00001Digit10010Digit20011Digit30100Digit40101Digit50110Digit60111Digit71000譯碼模式1001亮度調節(jié)1
23、010掃描限制1011關斷模式1100顯示測試1111 MAX7219初始化表2-5 初始化設置各項的選擇及對應數值設置項目選擇顛倒后的數值(16位)顯示亮度17/325F1FH掃描限制07位DFEFH譯碼方式非譯碼方式9F00H顯示測試正常操作FF00H關斷方式正常操作3F80H 部分程序功能介紹 全部程序見附錄二,下面僅介紹部分程序由于在讀搶答數據口的時候,單片機首先進入倒計時程序,再調用顯示程序,最后才檢測按鍵口,然而在檢測按鍵口時動態(tài)掃描要調用三次(4ms)延時程序.這樣就會導致讀數據口出現滯后,造成1號優(yōu)先最高.8號最低.故采用在延時子程序中加了讀數據口程序.保證了靈敏度和可靠性,程
24、序如下: =加減時間延時(起到不會按下就加N個數)=DELAY1: MOV 35H,#08HLOOP0: ACALL DISPLAYDJNZ 35H,LOOP0RET;=延時4236個機器周期(去抖動用到)=DELAY: MOV 32H,#12HLOOP: MOV 33H,#0AFHLOOP1: DJNZ 33H,LOOP1DJNZ 32H,LOOPRET;=延時4236個機器周期(顯示用到)=DELAY2: MOV 32H,#43HLOOP3: MOV 33H,#1EHMOV A,R7 ;每隔6070個機器周期讀一次P1口,全為1時為無效數據,繼續(xù)讀,有一個不為1時,轉到正常搶答處理JNZ
25、AAAA1 ;沒讀到有效數據時繼續(xù)轉到AAAA1LOOP2: DJNZ 33H,LOOP2DJNZ 32H,LOOP3RET;=讀搶答按鍵數據口程序= 主持人時間設定程序如下:ACALL DISPLAY;先在兩個時間LED上顯示R1JNB P3.4,INC0;P3.4為+1s鍵,如按下跳到INCOJNB P3.5,DEC0;P3.5為-1s鍵,如按下跳到DECOJNB P3.1,BACK0;P3.1為確定鍵,如按下跳到BACKO2.4LCD簡介LCD和LED的區(qū)別 LED為英文(Light Emitting Diode)的縮寫,是發(fā)光二極管的一種,LCD是液晶顯示器,兩者相差太多.但是用LED
26、的點陣也能組成顯示器,適用于戶外大屏幕顯示,分辨率較低。LCD為英文(Liquid Crystal Display)的縮寫,即液晶顯示器,是一種數字顯示技術,通過液晶和彩色過濾器過濾光源,在平面面板上產生圖象。與傳統的陰極射線管LCD占用空間小,低功耗,低輻射,無閃爍,降低視覺疲勞。 LCD技術能夠顯示更加清晰,明亮的圖象。 LED是發(fā)光二極管 特點:自發(fā)光,從遠處可以看見,價格相對較低缺點;顯示的內容少,一般是數碼,LED電子滾動顯示,等等,很耗電,控制復雜。 由于LCD比LED的效果好,所以本設計我們選擇了LCD作為我們設計的顯示器。單片機和分立元件的區(qū)別單片機相當于一個集成電路,將一些功
27、能都集成在一個芯片中,在一小塊芯片中能實現各種功能的器件。分立元件是指電阻電感電容等器件。這是相對于集成電路來說的,比如一個電路,他用了一個集成電路,外加一些零件即能實現需要的功能,而一般來說,用分立元件也能實現,但體積可能會大一些,可靠性可能也差一些。通過兩者的比較,單片機明顯優(yōu)于分立元件,所以本設計我們選擇了用單片機。其系統硬件設計如圖2-3鍵盤輸入單片機液晶顯示對比度控制圖2-3 單片機系統硬件設計顯示電路設計和LCD的引腳功能說明液晶顯示模塊是一種將液晶顯示器件、連接件、集成電路、PCB線路板、背光源、結構件等裝配在一起的組件。英文名稱叫“LCD Module”,簡稱“LCM”,中文稱
28、為“液晶顯示模塊”,其流程圖如2-4所示,實物圖如2-5所示。LCD控制器VSSVDDDVORSR/WEDB0DB7LCD驅動器LCD顯示裝置如圖2-4 LCD流程圖圖2-5 LCD1602實物圖液晶顯示模塊表2-6 LCD引腳功能編號符號引腳說明編號符號引腳說明1VSS電源地9D2雙向數據口2VDD電源正極10D3雙向數據口3VL對比度調節(jié)11D4雙向數據口4RS數據/命令選擇12D5雙向數據口5R/W讀/寫選擇13D6雙向數據口6E模塊使能端14D7雙向數據口7D0雙向數據口15BLK背光源地8D1雙向數據口16BLA背光源正極VDD:電源正極,4.55.5V,通常使用5V電壓;VL:LC
29、D對比度調節(jié)端,電壓調節(jié)范圍為05V。接正電源時對比度最弱,接地電源時對比度最高,但對比度過高時會產生“鬼影”,因此通常使用一個10K的電位器來調整對比度,或者直接串接一個電阻到地; RS:MCU寫入數據或者指令選擇端。MCU要寫入指令時,使RS為低電平;MCU要寫入數據時,使RS為高電平; R/W:讀寫控制端。R/W為高電平時,讀取數據;R/W為低電平時,寫入數據; E:LCD模塊使能信號控制端。寫數據時,需要下降沿觸發(fā)模塊。 D0D7:8位數據總線,三態(tài)雙向。如果MCU的I/O口資源緊張的話,該模塊也可以只使用4位數據線D4D7接口傳送數據。本充電器就是采用4位數據傳送方式; BLA: L
30、ED背光正極。需要背光時,BLA串接一個限流電阻接VDD,BLK接地,實測該模塊的背光電流為50mA左右;BLK: LED背光地端。數碼管按段數分為七段數碼管和八段數碼管,八段數碼管比七段數碼管多一個發(fā)光二極管單元(多一個小數點顯示);按能顯示多少個“8”可分為1位、2位、4位等等數碼管;按發(fā)光二極管單元連接方式分為共陽極數碼管和共陰極數碼管。共陽數碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數碼管。共陽數碼管在應用時應將公共極COM接到+5V,當某一字段發(fā)光二極管的陰極為低電平時,相應字段就點亮。當某一字段的陰極為高電平時,相應字段就不亮。共陰數碼管是指將所有發(fā)光二極管的陰
31、極接到一起形成公共陰極(COM)的數碼管。共陰數碼管在應用時應將公共極COM接到地線GND上,當某一字段發(fā)光二極管的陽極為高電平時,相應字段就點亮。當某一字段的陽極為低電平時,相應字段就不亮。三搶答器電路原圖及仿真.搶答器原理圖搶答器電路原理框圖如圖3-1所示,其中右上部分是4個七段數碼管,作為顯示輸出部分,左上部分是鐘控部分,除了S1-S8是選手控制按鈕,其余按鈕式主持人控制系統。圖3-1 搶答器電路原理框圖各按鍵功能介紹如下: SET鍵為復位鍵,按下復位鍵系統進入就緒狀態(tài); B1、B2分別為30s、60s預置時間鍵; “+”、“-”鍵可以調節(jié)時間; EN鍵用來確定自設時間; ON鍵用來確定
32、一切就緒,按下它系統就進入倒計時搶答; S1-S8為8個搶答按鍵。3.2仿真軟件介紹1) Proteus軟件簡介Proteus組合了高級原理布圖、混合模式SPICE仿真,PCB設計以及自動布線來實現一個完整的電子設計系統。 ISIS是Proteus系統的中心,它遠不僅是一個圖表庫。它是具有控制原理圖畫圖的外觀設計環(huán)境 。Proteus軟件是一種低投資的電子設計自動化軟件,提供可仿真數字和模擬、交流和直流等數千種元器件和多達30多個元件庫。Proteus軟件提供多種現實存在的虛擬儀器儀表。此外,Proteus還提供圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來。這些虛擬儀器儀表
33、具有理想的參數指標,例如極高的輸入阻抗、極低的輸出阻抗,盡可能減少儀器對測量結果的影響,Proteus軟件提供豐富的測試信號用于電路的測試。這些測試信號包括模擬信號和數字信號。提供Schematic Drawing、SPICE仿真與PCB設計功能,同時可以仿真單片機和周邊設備,可以仿真51系列、AVR、PIC等常用的MCU,并提供周邊設備的仿真,例如373、led、示波器等。Proteus提供了大量的元件庫,有RAM、ROM、鍵盤、馬達、LED、LCD、AD/DA、部分SPI器件、部分IIC器件,編譯方面支持Keil和MPLAB等編譯器。 一臺計算機、一套電子仿真軟件,在加上一本虛擬實驗教程,
34、就可相當于一個設備先進的實驗室。以虛代實、以軟代硬,就建立一個完善的虛擬實驗室。在計算機上學習電工基礎,模擬電路、數字電路、單片機應用系統等課程,并進行電路設計、仿真、調試等。2)基本操作步驟1打開PROTEUS 操作界面。2選擇“P”,從元件庫中提取需要的元器件(選中雙擊),選擇完點OK。3在編輯區(qū)畫電路圖,修改元件參數。4進行電路仿真。5保存文件。3)使用Proteus軟件的便利。1培養(yǎng)學習者實驗設計能力,并降低科研投入,不擔心燒壞設備和元器件。2支持創(chuàng)新性設計。3培養(yǎng)團隊合作能力。4提高實驗質量,擴展學習者的思路和提高學習者的學習興趣。3.3仿真測試效果經測試達到了設計的效果,下面用發(fā)光
35、LED代替報警系統,則可以看到測試效果。操作說明:主持人按下復位鍵SET,如果題目比較容易調節(jié)搶答時間為22s,按下B1鍵,然后調節(jié)“-”按鈕,顯示從30的倒計時,等顯示時間減到22時,停止按動“-”按鈕,再按EN鍵確定,然后按下ON開始搶答,同時揚聲器響,顯示如圖3-2所示;5號選手按下鍵搶答成功,立即進入倒計時答題狀態(tài)如圖3-3所示;如果在所設時間內選手未能按時答題,則發(fā)出報警,如圖3-4和3-5所示。若8位選手均未能在設定時間內正常搶答,系統同樣進入報警狀態(tài),本系統所有的報警時間都設置為5s。圖3-2 搶答器搶答狀態(tài)圖3-3 搶答器倒計時答題狀態(tài)圖3-4 搶答器報警狀態(tài)圖3-5 搶答器報
36、警狀態(tài)終總結此次畢業(yè)設計要求我們在孫老師的指導下獨立進行查閱資料,設計方案與組織實驗等工作,并寫出報告。這次實驗對于提高我們的素質和科學實驗能力非常有益,為以后從事電子電路方面的設計,研制電子產品打下基礎。通過這一周的學習,發(fā)現了自己的很多不足,自己知識的很多漏洞,看到了自己的實踐經驗還是比較缺乏,理論聯系實際的能力還急需提高。通過這次畢業(yè)設計,為完成這次畢業(yè)設計我們確實很辛苦,但苦中仍有樂,和團隊人員這一周的日子,讓我們有說有笑,相互幫助,配合默契,多少人間歡樂在這里灑下,大學里兩年的相處還趕不上這兩個月的實習,我感覺我和同學們之間的距離更加近了。這個工程確實很累,但當我們仿真實驗成功的時候
37、,當我們連好線,按下按鈕,LED亮了起來,喇叭響起的是我一生以來最好聽的聲音,我們的心中就不免興奮,不免激動。對我們而言,知識上的收獲重要,精神上的豐收更加可喜。在此要特別感謝我的指導老師對我們的指導,在此向老師說一聲,老師您辛苦了!當然我也要感謝我們同組的人的積極合作。在老師的啟發(fā)和我們共同的努力下,我們才能順利的完成畢業(yè)設計。在以后的工作中,我一定會更加努力的學習,充分的發(fā)揮自己的特長。參考文獻1 朱運利. 單片機技術應用. 北京:機械工業(yè)出版社, 2005年1月第一版.2 張大彪. 電子技能與實訓. 北京:電子工業(yè)出版社, 2004年7月.3 韓全力,趙德申. 微機控制技術及應用. 北京
38、:機械工業(yè)出版社, 2004年1月第一版.4 閻 石. 數字電子電路. 北京:中央廣播電視大學出版社, 1993.5 張毅坤,陳善久,龔雪紅. 單片微型計算機原理應用. 西安:西安電子科技大學出版社, 2003.6 田 良,黃正瑾,陳建元. 綜合電子設計與實踐. 南京:東南大學出版社.7 楊素行. 模擬電子電路. 北京:中央廣播電視大學出版社, 1994.8 康平光. 電子技術基礎. 北京:高等教育出版社, 2003.9 李 華. MCS-51單片機接口技術及應用. 北京:北京航天航空大學出版社. 附錄一完整的源程序:OK EQU 20H;搶答開始標志位RING EQU 22H;響鈴標志位OR
39、G 0000HAJMP MAINORG 0003HAJMP INT0SUBORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040HMAIN: MOV R1,#30;初設搶答時間為30sMOV R2,#60;初設答題時間為60sMOV TMOD,#11H;設置未定時器/模式1MOV TH0,#0F0HMOV TL0,#0FFH;越高發(fā)聲頻率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H;50ms為一次溢出中斷SETB EASETB ET0SETB ET1SETB EX0SETB EX1;允許四個中斷,T
40、0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0;START: MOV R5,#0BHMOV R4,#0BHMOV R3,#0BHACALL DISPLAY;未開始搶答時候顯示FFFJB P3.0,NEXT;dddddddACALL DELAYJB P3.0,NEXT;去抖動,如果開始鍵按下就向下執(zhí)行,否者跳到非法搶答查詢ACALL BARK;按鍵發(fā)聲MOV A,R1MOV R6,A;送R1-R6,因為R1中保存了搶答時間SETB OK;搶答標志位,用于COUNT只程序中判斷是否查詢搶答MOV R7,#01H ;讀搶答鍵數據信號標志,這里表示只讀一次有用
41、信號MOV R3,#0AH;搶答只顯示計時,滅號數AJMP COUNT;進入倒計時程序,查詢有效搶答的程序在COUNT里面NEXT: JNB P1.0,FALSE1JNB P1.1,FALSE2JNB P1.2,FALSE3JNB P1.3,FALSE4JNB P1.4,FALSE5JNB P1.5,FALSE6JNB P1.6,FALSE7JNB P1.7,FALSE8AJMP START;=非法搶答處理程序=FALSE1: MOV R3,#01HAJMP ERRORFALSE2: MOV R3,#02HAJMP ERRORFALSE3: MOV R3,#03HAJMP ERRORFALSE
42、4: MOV R3,#04HAJMP ERRORFALSE5: MOV R3,#05HAJMP ERRORFALSE6: MOV R3,#06HAJMP ERRORFALSE7: MOV R3,#07HAJMP ERRORFALSE8: MOV R3,#08HAJMP ERROR;=INT0(搶答時間R1調整程序)=INT0SUB:MOV A,R1MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAY;先在兩個時間LED上顯示R1JNB P3.4,INC0;P3.4為+1s鍵,如按下跳到INCOJNB P3.5,DEC0;P3.5為-1
43、s鍵,如按下跳到DECOJNB P3.1,BACK0;P3.1為確定鍵,如按下跳到BACKOAJMP INT0SUBINC0: MOV A,R1CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起。MOV R1,#00HACALL DELAY1AJMP INT0SUBADD0: INC R1ACALL DELAY1AJMP INT0SUBDEC0: MOV A,R1JZ SETR1;如果R1為0, R1就置99,DEC R1ACALL DELAY1AJMP INT0SUBSETR1: MOV R1,#63HACALL DELAY1AJMP INT0SUB
44、BACK0: RETI ;=INT1(回答時間R2調整程序)=INT1SUB:MOV A,R2MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAYJNB P3.4,INC1JNB P3.5,DEC1JNB P3.1,BACK1AJMP INT1SUBINC1: MOV A,R2CJNE A,#63H,ADD1MOV R2,#00HACALL DELAY1AJMP INT1SUBADD1: INC R2ACALL DELAY1AJMP INT1SUBDEC1: MOV A,R2JZ SETR2DEC R2ACALL DELAY1AJMP
45、 INT1SUBSETR2: MOV R2,#63HACALL DELAY1AJMP INT1SUBBACK1: RETI ;=倒計時程序(搶答倒計時和回答倒計時都跳到改程序)=REPEAT:MOV A,R2 ;使用錦囊時重新計時MOV R6,ACLR RING COUNT: MOV R0,#00H;重置定時器中斷次數MOV TH1,#3CHMOV TL1,#0B0H;重置定時器RECOUNT:MOV A,R6;R6保存了倒計時的時間,之前先將搶答時間或回答時間給R6MOV B,#0AHDIV AB;除十分出個位/十位MOV 30H,A;十位存于(30H)MOV 31H,B;個位存于(31H)
46、MOV R5,30H;取十位MOV R4,31H;取個位MOV A,R6SUBB A,#07HJNC LARGER;大于5s跳到LARGER,小于等于5s會提醒MOV A,R0CJNE A,#0AH,FULL;1s中0.5s向下運行CLR RING AJMP CHECKFULL: CJNE A,#14H,CHECK;下面是1s的情況,響并顯示號數并清R0,重新計SETB RINGMOV A,R6JZ QUIT;計時完畢MOV R0,#00HDEC R6;一秒標志減1AJMP CHECKLARGER: MOV A,R0CJNE A,#14H,CHECK;如果1s向下運行,否者跳到查停/顯示DEC
47、 R6;計時一秒R6自動減1MOV R0,#00HCHECK: JNB P3.1,QUIT;如按下停止鍵退出JNB OK,CHECKK ;只在回答倒計時才有效AJMP NEXTTCHECKK:JNB P3.0,REPEAT ;判斷是否使用錦囊NEXTT: ACALL DISPLAYJB OK,ACCOUT;如果是搶答倒計時,如是則查詢搶答,否者跳過查詢繼續(xù)倒數(這里起到鎖搶答作用)AJMP RECOUNTACCOUT:MOV A,36HJNB ACC.0,TRUE1JNB ACC.1,TRUE2JNB ACC.2,TRUE3JNB ACC.3,TRUE4JNB ACC.4,TRUE5JNB A
48、CC.5,TRUE6JNB ACC.6,TZ1JNB ACC.7,TZ2AJMP RECOUNTTZ1:JMP TRUE7TZ2:JMP TRUE8 QUIT: CLR OK;如果按下了停止鍵執(zhí)行的程序CLR RINGAJMP START;=正常搶答處理程序=TRUE1: ACALL BARKMOV A,R2MOV R6,A;搶答時間R2送R6MOV R3,#01HCLR OK;因為答題的計時不再查詢搶答,所以就鎖了搶答AJMP COUNTTRUE2:ACALL BARKMOV A,R2MOV R6,AMOV R3,#02HCLR OKAJMP COUNTTRUE3:ACALL BARKMOV A,R2MOV R6,AMOV R3,#03HCLR OKAJMP COUNTTRUE4:ACALL BARKMOV A,R2MOV R6,AMOV R3,#04HCLR OKAJMP COUNTTRUE5:ACALL BARK MOV A,R2MOV R6,AMOV R3,#05HCLR OKAJMP COUNTTRUE6: ACALL BARK MOV A,R2MOV R6,AMOV R3,#06HCLR OKAJMP COUNTTRUE7:ACALL BARK MOV A,R2MOV R
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科技企業(yè)實驗項目合作的成功要素及案例
- 科技教育行業(yè)崗位回顧與教育科技趨勢預測
- 二零二五年度文化創(chuàng)意產業(yè)合作開發(fā)合同樣本6篇
- 二零二五年度智慧城市基礎設施建設推廣合同3篇
- 2025年蘇人新版九年級歷史下冊月考試卷含答案
- 2025年粵人版九年級地理上冊月考試卷含答案
- 2025年度個人擔保合同履行監(jiān)管與責任追究2篇
- 2025產品授權銷售總代理合同書
- 2025建筑主體工程施工分包合同
- 2025農業(yè)借款合同范本
- 焊接機器人在汽車制造中應用案例分析報告
- 合成生物學在生物技術中的應用
- 中醫(yī)門診病歷
- 廣西華銀鋁業(yè)財務分析報告
- 無違法犯罪記錄證明申請表(個人)
- 電捕焦油器火災爆炸事故分析
- 大學生勞動教育PPT完整全套教學課件
- 繼電保護原理應用及配置課件
- 《殺死一只知更鳥》讀書分享PPT
- 蓋洛普Q12解讀和實施完整版
- 2023年Web前端技術試題
評論
0/150
提交評論