基于AW60十秒倒計時搶答器的設計_第1頁
基于AW60十秒倒計時搶答器的設計_第2頁
基于AW60十秒倒計時搶答器的設計_第3頁
基于AW60十秒倒計時搶答器的設計_第4頁
基于AW60十秒倒計時搶答器的設計_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、電子系統(tǒng)設計與工程實踐期末實踐數(shù)字搶答器學院:_專業(yè):_班級:_姓名:_學號:_年 月 日基于AW60十秒倒計時搶答器的設計摘要:本設計是以飛思卡爾公司的AW60HCS08單片機為核心設計的四路搶答器。本搶答器能實現(xiàn)四人搶答、倒計時10秒后就不能搶答、數(shù)碼管顯示搶答成功的按鍵及倒計時,在搶答成功和十秒倒計時結束時報警等功能。同時該搶答器是基于單片機設計出來的,因此很容易對搶答器的路數(shù)進行擴展,同時又避免了由門電路組合的數(shù)字搶答器隨著路數(shù)的增加線路數(shù)目成倍增加的問題。與門電路搭建的搶答器相比,該搶答器不僅在結構上顯得簡單,而且在費用方面也略顯優(yōu)勢。Abstract: The Freescale&

2、#39;s AW60HCS08 microcontroller is used as the core design of four way responder. The responder can achieve four vies to answer first, the countdown after 10 seconds cannot succeed in digital tube display vies to answer first vies to answer first, keys and the countdown, at the end of the vies to an

3、swer first success and ten seconds countdown alarm. The responder is based on single-chip design, so it is easy to extend ways of the responder, and the num of lines is increasing exponentially with the number increase of ways of the digital gate circuit. Compared to the responder builded by the gat

4、e circuit , the responder is not only simple in the structure, but also slightly better in terms of costs. 關鍵字:aw60、4人搶答、倒計時10s、數(shù)碼管顯示Key words: aw60, four people vies to answer first, the countdown 10 s, digital tube display1 設計要求 具體要求(1)提供4路搶答鍵,編號分別為1、2、3、4,提供“開始”鍵,編號為“*”。(2)系統(tǒng)復位后,數(shù)碼管顯示“0000”并閃爍;按下

5、“開始”鍵后,各搶答鍵才有效,數(shù)碼管停止閃爍,并進行10s倒計時,計時時間在后兩位數(shù)碼管顯示;若在10s內沒有人搶答,則在計數(shù)為0后,顯示“0000”并閃爍,直至“開始”鍵再次按下,重新計數(shù);若在10s內有人按下?lián)尨疰I,則停止計數(shù),后兩位數(shù)碼管顯示當前計數(shù)時間,第1位數(shù)碼管顯示搶答鍵編號,數(shù)碼管閃爍,直至“開始”鍵再次按下,重新計數(shù)。(3)每次按鍵或計時為0后通過蜂鳴器發(fā)出提示音。系統(tǒng)功能 該系統(tǒng)能夠按下開始鍵后數(shù)碼管開始10s倒計時,當?shù)褂嫊r為零若沒有搶答鍵按下則數(shù)碼管顯示0000,并閃爍蜂鳴器報警。若有一個或多個搶答鍵在倒計時結束前按下,則數(shù)碼管第一位顯示按下最先按下?lián)尨疰I的編號,后兩位數(shù)

6、碼管顯示按下時的時間,其他顯示0且閃爍蜂鳴器報警。當開始鍵再次按下的時候,系統(tǒng)恢復十秒倒計時狀態(tài),第一位數(shù)碼管清零。2 總體設計2.1 系統(tǒng)工作原理以下為系統(tǒng)的工作原理流程圖(見圖2),其中開始鍵為*鍵,1234搶答鍵為鍵盤控制,由中斷中的程序控制各種狀態(tài)的實現(xiàn),其工作原理為:接通電源后,搶答器數(shù)碼管顯示“0000”并閃爍,直到主持人按下開始鍵,搶答器數(shù)碼管變?yōu)椤?010”,同時搶答器的計時器開始進行10s的倒計時;選手在定時時間內搶答時,搶答器完成:優(yōu)先判斷、編號鎖存、編號顯示、時間顯示、數(shù)碼管閃爍、蜂鳴器提示。若在正常的十秒搶答時間中沒有人按下?lián)尨疰I,則倒計時一直進行到零,數(shù)碼管顯示000

7、0并閃爍,同時蜂鳴器報警,當主持人再次按下開始鍵時數(shù)碼管恢復到0010開始新一輪搶答倒計時。 圖1、系統(tǒng)工作原理流程圖3 硬件設計3.1 硬件組成本系統(tǒng)是以飛思卡爾公司的AW60HCS08單片機為核心設計的四路搶答器。其主要的硬件部分由AW60的最小系統(tǒng)、電源模塊、時鐘模塊、鍵盤模塊以及蜂鳴器等所組成(見圖2)。其中電源模塊為其他各個模塊供電;LED模塊為顯示模塊,包括顯示10s倒計時,搶答者編號,搶答時間,數(shù)碼管閃爍;時鐘模塊為單片機工作提供時鐘,鍵盤模塊提供搶答鍵1234,開始(復位)鍵,用來檢測是否有鍵發(fā)生,從而產生鍵盤中斷交由單片機處理,單片機在對按鍵進行分析后控制相應的數(shù)碼管顯示以及

8、控制蜂鳴器報警。圖2、模塊電路組成3.2 單片機核心模塊本設計采用AW60HCS08單片機,S08是2004年左右推出8位MCU,資源豐富,功耗低,性價比很高,是08系列MCU發(fā)展趨勢,其性能與許多16位MCU相當。MC9S08AW60是低成本、高性能8位微處理器S08家族中的成員,本次課程設計就是以該芯片為基礎,來進行嵌入式的設計。該單片機的主要性能:(1)最高達40MHz的CPU工作頻率和20Hz的內部總線工作頻率表;時鐘源選項包括晶振、諧振器、外部時鐘或內部產生的時鐘。(2)相比HC08 CPU指令集,S08 CPU增加了BGND指令。(3)單線后臺調試模式接口;增強的斷點能力,允許單一

9、的斷點設置在線調試(在片內調試的模塊增加了多于兩個的斷點)。(4)內含32個中斷/復位源;內含2KB的片內RAM;內含60KB的片內在線可編程Flash存儲器,帶有塊保護和安全選項。(5)可選的計算機正常操作(COP)復位;低電壓檢測和復位或中斷;非法操作碼檢測與復位;非法地址檢測與復位。(6)ADC:多達16個通道,10位A/D轉換器與自動比較功能;兩個串行通信接口SCI模塊與可選的13位中斷;一個串行外設接口SPI模塊;集成電路互連總線I2C模塊運作高達100kbps的最高總線負載;8引腳鍵盤中斷KBI模塊。(7)定時器:1個2通道和1個6通道16位定時器/脈沖寬度調制器模板。具有輸入、捕

10、捉、輸出比較、脈寬調制功能。圖3、最小系統(tǒng)圖3.3 顯示和控制電路本系統(tǒng)采用數(shù)碼管顯示搶答者編號和剩余時間,鉅陣鍵盤用于搶答器的復位和搶答者的搶答。數(shù)碼管顯示原理簡單,編程比較容易實現(xiàn)。矩陣鍵盤可以實現(xiàn)多種控制,便于擴展功能,同時又可節(jié)省大量的IO口,供單片機的其它功能應用。圖4、LED模塊圖5、鍵盤模塊3.4電源模塊電路中需要大量引腳用來提供足夠的電流容量。所有的電源引腳必須有適當?shù)呐月冯娙?,來抑制高頻噪音。一些VDD和VSS引腳僅用于噪音旁路。圖中的電源電路顯示了一個典型的電源連接圖。電源電路部分的電容構成濾波電路,可以改善系統(tǒng)的電磁兼容性,降低電源波動對系統(tǒng)的影響,增強電路工作穩(wěn)定性。為

11、標識系統(tǒng)通電與否,可以增加一個電源指示燈。注意那些僅連接電容的引腳,不要將它們直接連接電源電壓。圖6、電源模塊 3.5蜂鳴器在單片機應用的設計上,很多方案都會用到蜂鳴器,大部分都是使用蜂鳴器來做提示或報警,比如按鍵按下、開始工作、工作結束或是故障等等由于蜂鳴器的工作電流一般比較大,以致于單片機的I/O口是無法直接驅動的,所以要利用放大電路來驅動,一般使用三極管來放大電流就可以了。圖7、蜂鳴器模塊3.6長距離傳輸模塊3.6.1限制數(shù)據(jù)長距離傳輸?shù)囊蛩厮^“長線”,即指那些必須考慮傳輸延遲的連接線,并且長線的“長”是相對的,對于微秒級的數(shù)字電路來說,1米左右的連線要求當長線來看待;對10毫秒級的電

12、路,幾米長的連線才當作長線處理。信號在長線中傳輸時,不僅存在傳輸延遲,而且會使信號波形嚴重畸變,并引入一些有害的干擾。采用長線傳輸后,一般總要發(fā)生如下問題:1、外界電磁場通過傳輸線對信號產生的干擾由于發(fā)送和接收設備之間存在的公共地線,因此各種干擾極易通過公共地線疊加在信號上,特別是現(xiàn)場的電磁干擾通過公共底線能很容易的導入接受設備。2、傳輸線分布電容數(shù)據(jù)的傳輸實際上是對傳輸線分布電容充電和放電的過程,而充電的上升時間和放電的下降時間有所不同,會引起數(shù)據(jù)接受錯誤。3、傳輸線存在的地的電位差傳輸線間連接的公共地線,由于發(fā)送設備和接受設備往往使用各自的電源設備。是二者的電位可能不一致,從而信號地線中會

13、產生電流。由于傳輸線電阻的存在,使地線兩端產生電壓降,即電位差。當發(fā)送設備想接收設備發(fā)送數(shù)據(jù)時,接受設備得到的電壓信號與沒有地電位差時得到的不同。當又用信號較小、而地電位差較大時,接受設備無法得到準確的信號,數(shù)據(jù)傳輸將無法進行。4、傳輸線的負載阻抗與傳輸特性阻抗不匹配當傳輸?shù)呢撦d阻抗與傳輸特性阻抗不匹配時,會在線路中產生多次發(fā)射,致使信號產生畸變,數(shù)據(jù)傳輸出現(xiàn)錯誤。3.6.2長距離傳輸抗干擾措施空間干擾包括靜電場、高頻電磁場以及磁場引起的干擾主要的解決方法:1、空間隔離:使敏感設備或信號線遠離干擾,如大型動力設備及大變壓器等??臻g隔離的方法主要有變壓器隔離、光電隔離、浮地屏蔽三種方式。2、屏蔽

14、:對敏感電路加屏蔽盒或對信號加屏蔽層,注意屏蔽層不能隨意接地, 必要時屏蔽層外還要有絕緣層。屏蔽主要用來解決電磁干擾,將電力線或磁力線的影響限定在某個范圍之內或阻止他們進入某個范圍。3、電氣布線:合理的選擇信號線,并在實際施工中正確的敷設信號線來抑制干擾。3.6.3長線傳輸模塊為了解決長線傳輸?shù)膯栴},特別在電路中加入了長線傳輸模塊。本模塊是以NS公司的單片集成穩(wěn)壓器為核心,其能滿足輸入電壓在740V之內,均能輸出恒定的5V電壓和3A電流,能夠很好的解決百米范圍內的長線傳輸問題。圖8、長線傳輸模塊4 程序設計4.1 主程序設計程序開始后初始化芯片,模塊,變量,然后進行主循環(huán),開始執(zhí)行主程序,計時

15、器開始10s倒數(shù)計時數(shù)碼管顯示狀態(tài)為0010,執(zhí)行過程中還可檢測是否有搶答鍵,如果按下則計時停止后兩位數(shù)碼管顯示時間,第一位數(shù)碼管顯示搶答編號,其他數(shù)碼管均為零,蜂鳴器報警,再次按下開始復位鍵時,數(shù)碼管顯示0010進行倒計時。如果沒有搶答鍵按下,則倒計時為零時數(shù)碼管顯示0000,并開始閃爍,蜂鳴器報警。程序框圖如下:圖74.2 子程序設計中斷函數(shù)設計程序開始后初始化變量,然后關中斷,開始鍵值檢測及判斷,若開始鍵(*鍵)被按下,則LED被重新賦值,同時計數(shù)器開始遞減計數(shù),每秒減1;若在計數(shù)器數(shù)值減為0之前有1234被按下,則LED記錄顯示最先按下?lián)尨鹫叩木幪?,同時計數(shù)器保持當前數(shù)值不再遞減并進行

16、閃爍。若計時器10s倒數(shù)計時結束后仍未有鍵按下,則數(shù)碼管顯示狀態(tài)為0000并閃爍,同時蜂鳴器報警,直到再次按下開始鍵時,數(shù)碼管顯示0010進行倒計時。中斷函數(shù)流程圖:圖8、中斷函數(shù)流程圖附錄一:電路實物照片圖9、在開始鍵未按下時顯示0000圖10、LED顯示搶答者編號及按下時間附錄二:程序調試圖11、程序調試圖12、程序調試附錄三:電路原理圖圖13、系統(tǒng)整圖附錄四:主要程序主函數(shù)程序:/-*/工 程 名: timer */硬件連接:(1)PTD.0接指示燈 */ (2)MCU的串口與PC方的串口相連 */程序描述: */ (1)TPM1溢出中斷,數(shù)碼管顯示分秒信息。/目 的: 學習定時器基本功

17、能 */說 明: 無 */-蘇州大學飛思卡爾嵌入式系統(tǒng)研發(fā)中心2011年-*/總頭文件#include "Includes.h"void main(void) /1 主程序使用的變量定義 /uint8 start=1; /2 關總中斷 DisableInterrupt(); /禁止總中斷 /3 芯片初始化 MCUInit(); /芯片初始化 /4 模塊初始化 Buzzer_DD=0xff; LEDdata_D=0xff; TPMinit(TPM_NUM_1); /定時器1初始化 LEDinit(); /數(shù)碼管初始化 KBInit(); /鍵盤初始化 /5 內存初始化 /6

18、開放中斷 EnableKBint(); /開鍵盤中斷 EnabletimerInt(TPM_NUM_1); /開放定時器1溢出中斷 EnableInterrupt(); /開放總中斷 LEDshow(ledbuf); /7系統(tǒng)復位后,數(shù)碼管顯示“0000 ”并閃爍;按下“開始”鍵后,各搶答鍵才有效 /不斷循環(huán)閃爍0000直到開始鍵(*鍵)被按下,跳出循環(huán)后開始計時 do LEDdata=0xc0; LEDcs1=0x03; LEDcs2=0x0c; Delay(10); /延時使數(shù)碼管顯示閃爍 LEDdata=0xff;Delay(1); LEDdata=0xc0; while(start=0

19、); /7 主循環(huán) while (1) LEDshow(ledbuf);/正常顯示計數(shù)器當前計數(shù)的值 中斷函數(shù)程序:/-*/ 文件名: isr.c */ 說 明: 中斷處理函數(shù)文件 */-*/頭文件#include "isr.h"/此處為用戶新定義中斷處理函數(shù)的存放處/-*/函數(shù)名: isrKeyBoard */功 能: 掃描鍵盤,向串口發(fā)送鍵值和定義值 */參 數(shù): 無 */返 回: 無 */說 明: 調用了KBScanN、SCISend1、KBInit函數(shù) */-*interrupt void isrKeyBoard(void) uint8 value,KeyDef;

20、uint16 i; for(i=0; i<1000; i+); DisableInterrupt(); /關總中斷 DisableKBint(); /屏蔽鍵盤中斷 value = KBScanN(10); /掃描鍵值,存于value中 if(value!=0xFF) KeyDef=KBDef(value); if(KeyDef='*') flag=0; /鍵值按下標志位 start=1; /啟動減數(shù) Buzzer=0; /關閉蜂鳴器 /對數(shù)碼管重新回到計時初值 ledbuf0='0' ledbuf1='0' ledbuf2='1&#

21、39; ledbuf3='0' num=11; if(KeyDef!='*'&&num>0) start=0; /用flag來對數(shù)據(jù)進行鎖存 if(flag=0) ledbuf0=KeyDef; flag=1; KBInit(); /鍵盤初始化鍵盤中斷 EnableKBint(); /開放鍵盤中斷 EnableInterrupt() ; /開總中斷/-*/函數(shù)名: isrT1Out */功能: 定時器1溢出中斷處理函數(shù),以秒為最小單位計時, */并清定時器1溢出標志位 */參 數(shù): 無 */返 回: 無 */說 明: 無 */-*inter

22、rupt void isrT1Out(void) /溢出時間0.5s uint8 temp; DisableInterrupt(); /禁止總中斷 if(start=1) /數(shù)碼管顯示數(shù)值每隔1s減1 if(num!=0)num-; else num=0; /判斷數(shù)碼管狀態(tài)是否減到0,若沒有則數(shù)碼管減1顯示 if(num!=0) ledbuf2='0' ledbuf3=num-1+'0' else /數(shù)碼管則顯示“0000”并閃爍 LEDdata=0xc0; LEDcs1=0x03; LEDcs2=0x0c; Delay(7); /延時使數(shù)碼管顯示閃爍 LEDd

23、ata=0xff; Delay(7); LEDdata=0xc0; /實現(xiàn)蜂鳴器的報警鳴叫 Buzzer=1; Delay(30); if(start=0) /數(shù)碼管則顯示“0000”并閃爍 if(num>0) /如果在10s內有鍵按下,則LED顯示搶答者編號以及當前時間,并閃爍顯示 LEDshow(ledbuf); LEDcs1=0x03; LEDcs2=0x0c; Delay(3); /延時使數(shù)碼管顯示閃爍 LEDdata=0xff;Delay(3); LEDshow(ledbuf); if(num=0) /如果在10s內沒有鍵按下,則LED顯示0000并閃爍顯示 LEDdata=0xc0; LEDcs1=0x03; LEDcs2=0x0c; Delay(3); /延時使數(shù)碼管顯示閃爍 LEDdata=0xff;Delay(3); LEDdata=0xc0; TPM_MODH(1) = 0x7a; TPM_MODL(1) = 0x12; /清定時器1溢出標志位 temp = TPM_CSTR(1); /讀取定時器1狀態(tài)和控制寄存器TPM1SC TPM_CSTR(1) &= (TPM1SC_TOF_MASK); /向定時器溢出標志位TOF寫0 EnableInterrupt()

溫馨提示

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

評論

0/150

提交評論