




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、電子系統(tǒng)設(shè)計(jì)與工程實(shí)踐期末實(shí)踐數(shù)字搶答器學(xué)院:_專業(yè):_班級:_姓名:_學(xué)號:_年 月 日基于AW60十秒倒計(jì)時搶答器的設(shè)計(jì)摘要:本設(shè)計(jì)是以飛思卡爾公司的AW60HCS08單片機(jī)為核心設(shè)計(jì)的四路搶答器。本搶答器能實(shí)現(xiàn)四人搶答、倒計(jì)時10秒后就不能搶答、數(shù)碼管顯示搶答成功的按鍵及倒計(jì)時,在搶答成功和十秒倒計(jì)時結(jié)束時報警等功能。同時該搶答器是基于單片機(jī)設(shè)計(jì)出來的,因此很容易對搶答器的路數(shù)進(jìn)行擴(kuò)展,同時又避免了由門電路組合的數(shù)字搶答器隨著路數(shù)的增加線路數(shù)目成倍增加的問題。與門電路搭建的搶答器相比,該搶答器不僅在結(jié)構(gòu)上顯得簡單,而且在費(fèi)用方面也略顯優(yōu)勢。Abstract: The Freescales
2、 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 answer
3、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 gate cir
4、cuit , the responder is not only simple in the structure, but also slightly better in terms of costs. 關(guān)鍵字:aw60、4人搶答、倒計(jì)時10s、數(shù)碼管顯示Key words: aw60, four people vies to answer first, the countdown 10 s, digital tube display1 設(shè)計(jì)要求 具體要求(1)提供4路搶答鍵,編號分別為1、2、3、4,提供“開始”鍵,編號為“*”。(2)系統(tǒng)復(fù)位后,數(shù)碼管顯示“0000”并閃爍;按下“開始”鍵
5、后,各搶答鍵才有效,數(shù)碼管停止閃爍,并進(jìn)行10s倒計(jì)時,計(jì)時時間在后兩位數(shù)碼管顯示;若在10s內(nèi)沒有人搶答,則在計(jì)數(shù)為0后,顯示“0000”并閃爍,直至“開始”鍵再次按下,重新計(jì)數(shù);若在10s內(nèi)有人按下?lián)尨疰I,則停止計(jì)數(shù),后兩位數(shù)碼管顯示當(dāng)前計(jì)數(shù)時間,第1位數(shù)碼管顯示搶答鍵編號,數(shù)碼管閃爍,直至“開始”鍵再次按下,重新計(jì)數(shù)。(3)每次按鍵或計(jì)時為0后通過蜂鳴器發(fā)出提示音。系統(tǒng)功能 該系統(tǒng)能夠按下開始鍵后數(shù)碼管開始10s倒計(jì)時,當(dāng)?shù)褂?jì)時為零若沒有搶答鍵按下則數(shù)碼管顯示0000,并閃爍蜂鳴器報警。若有一個或多個搶答鍵在倒計(jì)時結(jié)束前按下,則數(shù)碼管第一位顯示按下最先按下?lián)尨疰I的編號,后兩位數(shù)碼管顯示按
6、下時的時間,其他顯示0且閃爍蜂鳴器報警。當(dāng)開始鍵再次按下的時候,系統(tǒng)恢復(fù)十秒倒計(jì)時狀態(tài),第一位數(shù)碼管清零。2 總體設(shè)計(jì)2.1 系統(tǒng)工作原理以下為系統(tǒng)的工作原理流程圖(見圖2),其中開始鍵為*鍵,1234搶答鍵為鍵盤控制,由中斷中的程序控制各種狀態(tài)的實(shí)現(xiàn),其工作原理為:接通電源后,搶答器數(shù)碼管顯示“0000”并閃爍,直到主持人按下開始鍵,搶答器數(shù)碼管變?yōu)椤?010”,同時搶答器的計(jì)時器開始進(jìn)行10s的倒計(jì)時;選手在定時時間內(nèi)搶答時,搶答器完成:優(yōu)先判斷、編號鎖存、編號顯示、時間顯示、數(shù)碼管閃爍、蜂鳴器提示。若在正常的十秒搶答時間中沒有人按下?lián)尨疰I,則倒計(jì)時一直進(jìn)行到零,數(shù)碼管顯示0000并閃爍,
7、同時蜂鳴器報警,當(dāng)主持人再次按下開始鍵時數(shù)碼管恢復(fù)到0010開始新一輪搶答倒計(jì)時。 圖1、系統(tǒng)工作原理流程圖3 硬件設(shè)計(jì)3.1 硬件組成本系統(tǒng)是以飛思卡爾公司的AW60HCS08單片機(jī)為核心設(shè)計(jì)的四路搶答器。其主要的硬件部分由AW60的最小系統(tǒng)、電源模塊、時鐘模塊、鍵盤模塊以及蜂鳴器等所組成(見圖2)。其中電源模塊為其他各個模塊供電;LED模塊為顯示模塊,包括顯示10s倒計(jì)時,搶答者編號,搶答時間,數(shù)碼管閃爍;時鐘模塊為單片機(jī)工作提供時鐘,鍵盤模塊提供搶答鍵1234,開始(復(fù)位)鍵,用來檢測是否有鍵發(fā)生,從而產(chǎn)生鍵盤中斷交由單片機(jī)處理,單片機(jī)在對按鍵進(jìn)行分析后控制相應(yīng)的數(shù)碼管顯示以及控制蜂鳴器
8、報警。圖2、模塊電路組成3.2 單片機(jī)核心模塊本設(shè)計(jì)采用AW60HCS08單片機(jī),S08是2004年左右推出8位MCU,資源豐富,功耗低,性價比很高,是08系列MCU發(fā)展趨勢,其性能與許多16位MCU相當(dāng)。MC9S08AW60是低成本、高性能8位微處理器S08家族中的成員,本次課程設(shè)計(jì)就是以該芯片為基礎(chǔ),來進(jìn)行嵌入式的設(shè)計(jì)。該單片機(jī)的主要性能:(1)最高達(dá)40MHz的CPU工作頻率和20Hz的內(nèi)部總線工作頻率表;時鐘源選項(xiàng)包括晶振、諧振器、外部時鐘或內(nèi)部產(chǎn)生的時鐘。(2)相比HC08 CPU指令集,S08 CPU增加了BGND指令。(3)單線后臺調(diào)試模式接口;增強(qiáng)的斷點(diǎn)能力,允許單一的斷點(diǎn)設(shè)置
9、在線調(diào)試(在片內(nèi)調(diào)試的模塊增加了多于兩個的斷點(diǎn))。(4)內(nèi)含32個中斷/復(fù)位源;內(nèi)含2KB的片內(nèi)RAM;內(nèi)含60KB的片內(nèi)在線可編程Flash存儲器,帶有塊保護(hù)和安全選項(xiàng)。(5)可選的計(jì)算機(jī)正常操作(COP)復(fù)位;低電壓檢測和復(fù)位或中斷;非法操作碼檢測與復(fù)位;非法地址檢測與復(fù)位。(6)ADC:多達(dá)16個通道,10位A/D轉(zhuǎn)換器與自動比較功能;兩個串行通信接口SCI模塊與可選的13位中斷;一個串行外設(shè)接口SPI模塊;集成電路互連總線I2C模塊運(yùn)作高達(dá)100kbps的最高總線負(fù)載;8引腳鍵盤中斷KBI模塊。(7)定時器:1個2通道和1個6通道16位定時器/脈沖寬度調(diào)制器模板。具有輸入、捕捉、輸出比
10、較、脈寬調(diào)制功能。圖3、最小系統(tǒng)圖3.3 顯示和控制電路本系統(tǒng)采用數(shù)碼管顯示搶答者編號和剩余時間,鉅陣鍵盤用于搶答器的復(fù)位和搶答者的搶答。數(shù)碼管顯示原理簡單,編程比較容易實(shí)現(xiàn)。矩陣鍵盤可以實(shí)現(xiàn)多種控制,便于擴(kuò)展功能,同時又可節(jié)省大量的IO口,供單片機(jī)的其它功能應(yīng)用。圖4、LED模塊圖5、鍵盤模塊3.4電源模塊電路中需要大量引腳用來提供足夠的電流容量。所有的電源引腳必須有適當(dāng)?shù)呐月冯娙?,來抑制高頻噪音。一些VDD和VSS引腳僅用于噪音旁路。圖中的電源電路顯示了一個典型的電源連接圖。電源電路部分的電容構(gòu)成濾波電路,可以改善系統(tǒng)的電磁兼容性,降低電源波動對系統(tǒng)的影響,增強(qiáng)電路工作穩(wěn)定性。為標(biāo)識系統(tǒng)通
11、電與否,可以增加一個電源指示燈。注意那些僅連接電容的引腳,不要將它們直接連接電源電壓。圖6、電源模塊 3.5蜂鳴器在單片機(jī)應(yīng)用的設(shè)計(jì)上,很多方案都會用到蜂鳴器,大部分都是使用蜂鳴器來做提示或報警,比如按鍵按下、開始工作、工作結(jié)束或是故障等等由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O口是無法直接驅(qū)動的,所以要利用放大電路來驅(qū)動,一般使用三極管來放大電流就可以了。圖7、蜂鳴器模塊3.6長距離傳輸模塊3.6.1限制數(shù)據(jù)長距離傳輸?shù)囊蛩厮^“長線”,即指那些必須考慮傳輸延遲的連接線,并且長線的“長”是相對的,對于微秒級的數(shù)字電路來說,1米左右的連線要求當(dāng)長線來看待;對10毫秒級的電路,幾米長
12、的連線才當(dāng)作長線處理。信號在長線中傳輸時,不僅存在傳輸延遲,而且會使信號波形嚴(yán)重畸變,并引入一些有害的干擾。采用長線傳輸后,一般總要發(fā)生如下問題:1、外界電磁場通過傳輸線對信號產(chǎn)生的干擾由于發(fā)送和接收設(shè)備之間存在的公共地線,因此各種干擾極易通過公共地線疊加在信號上,特別是現(xiàn)場的電磁干擾通過公共底線能很容易的導(dǎo)入接受設(shè)備。2、傳輸線分布電容數(shù)據(jù)的傳輸實(shí)際上是對傳輸線分布電容充電和放電的過程,而充電的上升時間和放電的下降時間有所不同,會引起數(shù)據(jù)接受錯誤。3、傳輸線存在的地的電位差傳輸線間連接的公共地線,由于發(fā)送設(shè)備和接受設(shè)備往往使用各自的電源設(shè)備。是二者的電位可能不一致,從而信號地線中會產(chǎn)生電流。
13、由于傳輸線電阻的存在,使地線兩端產(chǎn)生電壓降,即電位差。當(dāng)發(fā)送設(shè)備想接收設(shè)備發(fā)送數(shù)據(jù)時,接受設(shè)備得到的電壓信號與沒有地電位差時得到的不同。當(dāng)又用信號較小、而地電位差較大時,接受設(shè)備無法得到準(zhǔn)確的信號,數(shù)據(jù)傳輸將無法進(jìn)行。4、傳輸線的負(fù)載阻抗與傳輸特性阻抗不匹配當(dāng)傳輸?shù)呢?fù)載阻抗與傳輸特性阻抗不匹配時,會在線路中產(chǎn)生多次發(fā)射,致使信號產(chǎn)生畸變,數(shù)據(jù)傳輸出現(xiàn)錯誤。3.6.2長距離傳輸抗干擾措施空間干擾包括靜電場、高頻電磁場以及磁場引起的干擾主要的解決方法:1、空間隔離:使敏感設(shè)備或信號線遠(yuǎn)離干擾,如大型動力設(shè)備及大變壓器等??臻g隔離的方法主要有變壓器隔離、光電隔離、浮地屏蔽三種方式。2、屏蔽:對敏感電
14、路加屏蔽盒或?qū)π盘柤悠帘螌樱⒁馄帘螌硬荒茈S意接地, 必要時屏蔽層外還要有絕緣層。屏蔽主要用來解決電磁干擾,將電力線或磁力線的影響限定在某個范圍之內(nèi)或阻止他們進(jìn)入某個范圍。3、電氣布線:合理的選擇信號線,并在實(shí)際施工中正確的敷設(shè)信號線來抑制干擾。3.6.3長線傳輸模塊為了解決長線傳輸?shù)膯栴},特別在電路中加入了長線傳輸模塊。本模塊是以NS公司的單片集成穩(wěn)壓器為核心,其能滿足輸入電壓在740V之內(nèi),均能輸出恒定的5V電壓和3A電流,能夠很好的解決百米范圍內(nèi)的長線傳輸問題。圖8、長線傳輸模塊4 程序設(shè)計(jì)4.1 主程序設(shè)計(jì)程序開始后初始化芯片,模塊,變量,然后進(jìn)行主循環(huán),開始執(zhí)行主程序,計(jì)時器開始10
15、s倒數(shù)計(jì)時數(shù)碼管顯示狀態(tài)為0010,執(zhí)行過程中還可檢測是否有搶答鍵,如果按下則計(jì)時停止后兩位數(shù)碼管顯示時間,第一位數(shù)碼管顯示搶答編號,其他數(shù)碼管均為零,蜂鳴器報警,再次按下開始復(fù)位鍵時,數(shù)碼管顯示0010進(jìn)行倒計(jì)時。如果沒有搶答鍵按下,則倒計(jì)時為零時數(shù)碼管顯示0000,并開始閃爍,蜂鳴器報警。程序框圖如下:圖74.2 子程序設(shè)計(jì)中斷函數(shù)設(shè)計(jì)程序開始后初始化變量,然后關(guān)中斷,開始鍵值檢測及判斷,若開始鍵(*鍵)被按下,則LED被重新賦值,同時計(jì)數(shù)器開始遞減計(jì)數(shù),每秒減1;若在計(jì)數(shù)器數(shù)值減為0之前有1234被按下,則LED記錄顯示最先按下?lián)尨鹫叩木幪枺瑫r計(jì)數(shù)器保持當(dāng)前數(shù)值不再遞減并進(jìn)行閃爍。若計(jì)
16、時器10s倒數(shù)計(jì)時結(jié)束后仍未有鍵按下,則數(shù)碼管顯示狀態(tài)為0000并閃爍,同時蜂鳴器報警,直到再次按下開始鍵時,數(shù)碼管顯示0010進(jìn)行倒計(jì)時。中斷函數(shù)流程圖:圖8、中斷函數(shù)流程圖附錄一:電路實(shí)物照片圖9、在開始鍵未按下時顯示0000圖10、LED顯示搶答者編號及按下時間附錄二:程序調(diào)試圖11、程序調(diào)試圖12、程序調(diào)試附錄三:電路原理圖圖13、系統(tǒng)整圖附錄四:主要程序主函數(shù)程序:/-*/工 程 名: timer */硬件連接:(1)PTD.0接指示燈 */ (2)MCU的串口與PC方的串口相連 */程序描述: */ (1)TPM1溢出中斷,數(shù)碼管顯示分秒信息。/目 的: 學(xué)習(xí)定時器基本功能 */說
17、 明: 無 */-蘇州大學(xué)飛思卡爾嵌入式系統(tǒng)研發(fā)中心2011年-*/總頭文件#include Includes.hvoid main(void) /1 主程序使用的變量定義 /uint8 start=1; /2 關(guān)總中斷 DisableInterrupt(); /禁止總中斷 /3 芯片初始化 MCUInit(); /芯片初始化 /4 模塊初始化 Buzzer_DD=0xff; LEDdata_D=0xff; TPMinit(TPM_NUM_1); /定時器1初始化 LEDinit(); /數(shù)碼管初始化 KBInit(); /鍵盤初始化 /5 內(nèi)存初始化 /6 開放中斷 EnableKBint(
18、); /開鍵盤中斷 EnabletimerInt(TPM_NUM_1); /開放定時器1溢出中斷 EnableInterrupt(); /開放總中斷 LEDshow(ledbuf); /7系統(tǒng)復(fù)位后,數(shù)碼管顯示“0000 ”并閃爍;按下“開始”鍵后,各搶答鍵才有效 /不斷循環(huán)閃爍0000直到開始鍵(*鍵)被按下,跳出循環(huán)后開始計(jì)時 do LEDdata=0xc0; LEDcs1=0x03; LEDcs2=0x0c; Delay(10); /延時使數(shù)碼管顯示閃爍 LEDdata=0xff;Delay(1); LEDdata=0xc0; while(start=0); /7 主循環(huán) while (
19、1) LEDshow(ledbuf);/正常顯示計(jì)數(shù)器當(dāng)前計(jì)數(shù)的值 中斷函數(shù)程序:/-*/ 文件名: isr.c */ 說 明: 中斷處理函數(shù)文件 */-*/頭文件#include isr.h/此處為用戶新定義中斷處理函數(shù)的存放處/-*/函數(shù)名: isrKeyBoard */功 能: 掃描鍵盤,向串口發(fā)送鍵值和定義值 */參 數(shù): 無 */返 回: 無 */說 明: 調(diào)用了KBScanN、SCISend1、KBInit函數(shù) */-*interrupt void isrKeyBoard(void) uint8 value,KeyDef; uint16 i; for(i=0; i0) start=
20、0; /用flag來對數(shù)據(jù)進(jìn)行鎖存 if(flag=0) ledbuf0=KeyDef; flag=1; KBInit(); /鍵盤初始化鍵盤中斷 EnableKBint(); /開放鍵盤中斷 EnableInterrupt() ; /開總中斷/-*/函數(shù)名: isrT1Out */功能: 定時器1溢出中斷處理函數(shù),以秒為最小單位計(jì)時, */并清定時器1溢出標(biāo)志位 */參 數(shù): 無 */返 回: 無 */說 明: 無 */-*interrupt void isrT1Out(void) /溢出時間0.5s uint8 temp; DisableInterrupt(); /禁止總中斷 if(sta
21、rt=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ù)碼管顯示閃爍 LEDdata=0xff; Delay(7); LEDdata=0xc0; /實(shí)現(xiàn)蜂鳴器的報警鳴叫 Buzzer=1; Delay(30); if(start=0) /數(shù)碼管則顯示“0000”并閃爍 if
22、(num0) /如果在10s內(nèi)有鍵按下,則LED顯示搶答者編號以及當(dāng)前時間,并閃爍顯示 LEDshow(ledbuf); LEDcs1=0x03; LEDcs2=0x0c; Delay(3); /延時使數(shù)碼管顯示閃爍 LEDdata=0xff;Delay(3); LEDshow(ledbuf); if(num=0) /如果在10s內(nèi)沒有鍵按下,則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溢出標(biāo)志位 temp = TPM_CSTR(1); /讀取定時器1狀態(tài)和控制寄存器TPM1SC TPM_CSTR(1) &= (TPM1SC_TOF_MASK); /向定時器溢出標(biāo)志位TOF寫0 EnableInterrupt(); /開放總中斷 /未定義的中斷處理函數(shù),本函數(shù)不能刪除interrupt voi
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國育嬰師行業(yè)發(fā)展?jié)摿Ψ治黾巴顿Y方向研究報告
- 2024年全球及中國外延片檢測系統(tǒng)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030年中國四耳接線盒項(xiàng)目投資可行性研究分析報告
- 2024年全球及中國商業(yè)養(yǎng)老服務(wù)中心行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 洪洞格賓石籠施工方案
- 2025年海上風(fēng)電場工程項(xiàng)目可行性研究報告
- 進(jìn)度分析報告示例
- 證券知識培訓(xùn)課件
- 中國制傘市場深度調(diào)查及發(fā)展前景研究預(yù)測報告
- 2025年中國彈性水泥防水涂料行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 腹腔鏡下腎盂輸尿管成形術(shù)
- 醫(yī)療器械公司咨詢培訓(xùn)記錄表(全套)-
- JJG 1000-2005電動水平振動試驗(yàn)臺
- 天津地理會考知識要點(diǎn)精華版
- 綠殼蛋雞的養(yǎng)殖課件
- 小學(xué)語文擴(kuò)句、縮句專題
- 農(nóng)村公路安全生命防護(hù)工程施工方案
- (部編版)統(tǒng)編版小學(xué)語文教材目錄(一至六年級上冊下冊齊全)
- 抗滑樁專項(xiàng)的施工組織方案[專家評審]
- 常用彈簧鋼號對照表
- 小學(xué)二年級下冊勞動教案
評論
0/150
提交評論