基于單片機(jī)的搶答器設(shè)計報告_第1頁
基于單片機(jī)的搶答器設(shè)計報告_第2頁
基于單片機(jī)的搶答器設(shè)計報告_第3頁
基于單片機(jī)的搶答器設(shè)計報告_第4頁
基于單片機(jī)的搶答器設(shè)計報告_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、精品文檔精品文檔湖南商學(xué)院單片機(jī)應(yīng)用系統(tǒng)課 程設(shè)計(實 習(xí))報告題目基于單片機(jī)的搶答器設(shè)計姓名:學(xué)號:專業(yè):班級:指導(dǎo)教師:職稱:胡飄100910122電子信息工程電信1004班肖晴實驗師. 。1歡迎下載精品文檔 歡迎下載精品文檔_ 。4歡迎下載精品文檔_02歡迎下載計算機(jī)與信息工程學(xué)院2013年6月課程設(shè)計(實習(xí))評審表姓名胡飄學(xué)院計信學(xué)院學(xué)號100910122專業(yè)班級電信1004班題目基于單片機(jī)的搶答器設(shè)計評審息見評審成績指導(dǎo)教師簽名職稱評審時間年 月 日課程設(shè)計(實習(xí))作品驗收表題目基于單片機(jī)的搶答器設(shè)計參與人員姓名胡飄班級電信1004班學(xué)號100910122設(shè)計任務(wù)與要求:具有3路搶答

2、輸入(由獨立按鍵實現(xiàn)),時間分辨率小于100ms顯示搶答剩余時 問,初始為10秒。搶答成功,蜂鳴器響,同時顯示搶答成功的號碼。作品完成情況:上電顯示10s,按開始鍵開始倒計時,若有按鍵顯示時間和搶答者號碼,同時蜂鳴器響,若倒計時為0,蜂鳴器響,按清除鍵則復(fù)位到10s。驗收情況:驗收教師簽名:年 月 日注:1.除“驗收情況”欄外,其余各欄均由學(xué)生在作品驗收前填寫。2. “驗收情況”欄由驗收小組按實際驗收的情況如實填寫。目 錄1 設(shè)計任務(wù)與要求 12系統(tǒng)功能描述 TOC o 1-5 h z HYPERLINK l bookmark24 o Current Document 3系統(tǒng)總體設(shè)計14系統(tǒng)詳

3、細(xì)設(shè)計3主要電路設(shè)計 3輸入模塊設(shè)計 3單片機(jī)模塊4顯示模塊4聲音模塊5 HYPERLINK l bookmark29 o Current Document 軟件設(shè)計6主程序設(shè)計6定時器設(shè)計7 HYPERLINK l bookmark31 o Current Document 5系統(tǒng)實現(xiàn)與測試7Proteus 軟件7 HYPERLINK l bookmark33 o Current Document 安裝和調(diào)試過程8軟硬件調(diào)試8硬件安裝8 HYPERLINK l bookmark35 o Current Document 6課程設(shè)計總結(jié)10 HYPERLINK l bookmark37 o C

4、urrent Document 心得體會10 HYPERLINK l bookmark39 o Current Document . 實踐總結(jié)10 HYPERLINK l bookmark41 o Current Document 參考文獻(xiàn)11 HYPERLINK l bookmark43 o Current Document 附錄11精品文檔 歡迎下載 。精品文檔 歡迎下載 。1 設(shè)計任務(wù)與要求基于單片機(jī)的搶答器設(shè)計精品文檔_02歡迎下載精品文檔_02歡迎下載具有3路搶答輸入(由獨立按鍵實現(xiàn)),時間分辨率小于100ms顯示搶答剩余時間, 初始為10秒。搶答成功,蜂鳴器響,同時顯示搶答成功的號

5、碼。2系統(tǒng)功能描述(1)具有3路搶答輸入(由獨立按鍵實現(xiàn)),時間分辨率小于100ms(2)主持人按“開始”鍵,顯示搶答剩余時間,初始為 10秒。(3)搶答成功,蜂鳴器響,同時顯示搶答成功的號碼。(4)主持人按“清除鍵”鍵,復(fù)位為初始 10秒,進(jìn)入準(zhǔn)備狀態(tài)。(5)若十秒倒計時時間到,則蜂鳴器響。3系統(tǒng)總體設(shè)計搶答輸入和控制輸入共同控制單片機(jī)輸出顯示和蜂鳴器響,輸出鎖存控制輸入的優(yōu) 先性。各模塊如下:(1)輸入模塊:由獨立按鍵實現(xiàn)搶答輸入和“開始” “清除”控制輸入。(2)單片機(jī)控制模塊:采用 AT89S51芯片控制輸出。(3)輸出鎖存模塊:采用74HC573S片鎖存數(shù)據(jù)。(4)顯示輸出模塊:由四

6、位共陽數(shù)碼管輸出顯示倒計時和搶答者號碼。(5)聲音輸出模塊:由蜂鳴器的工作來控制聲音。原理方框圖如圖1所示。搶答輸入模塊控制輸入模塊單片機(jī) 模塊圖1原理方框圖精品文檔 歡迎下載精品文檔 #歡迎下載整體電路圖如圖2所示RP1R晚FM:網(wǎng)FDTADr呀吟 H.tfSPlD P7JMII P7LAI2P*l*FJmD 幻MET iSJriHTP3.vnarari巴iwHT而堆苓用彳螞F口 PDWD1 FD2JRD3 F 口 WQli FU/IM Fil鼬竭 ru砧屁圖2基于單片機(jī)的搶答器系統(tǒng)整體電路圖4系統(tǒng)詳細(xì)設(shè)計主要電路設(shè)計輸入模塊設(shè)計(1)搶答鍵輸入模塊搶答鍵輸入電路圖如圖3所示精品文檔_ 。4

7、歡迎下載精品文檔_ 。4歡迎下載圖3搶答鍵輸入電路圖由3個獨立按鍵表示1號,2號,3號搶答者,一端接地一端分別接接單片機(jī)的P1.0,P1.1,P1.2,如果按下,則相應(yīng)I/O 口變?yōu)榈碗娖?,從而控制單片機(jī) P1 口?!伴_始” “清除”控制鍵輸入模塊“開始”“清除”控制鍵輸入電路圖如圖4所示圖4 “開始” “清除”控制鍵輸入電路圖由2個獨立按鍵控制“開始”和“清除”,一端接地一端分別接接單片機(jī)的 P3.6 , P3.7,如果按下,則相應(yīng)I/O 口變?yōu)榈碗娖?,從而控制單片機(jī) P1 口。單片機(jī)模塊單片機(jī)主要由程序設(shè)計和輸入模塊信號控制,用于對顯示、聲音等模塊進(jìn)行控制 單片機(jī)控制輸出電路圖如圖5所示。

8、精品文檔 歡迎下載精品文檔 歡迎下載精品文檔 歡迎下載15XTAL1P 口皿峭口加.皿1XTAL2PDSADS 陽血質(zhì)FISTP2WP21膽P2的口39出3iT18:3635&加212223西PSENP2JM11ALEP2,412EAP2SR13P”般悟PHDP3flflXDP1I,1P3.1l/TXDPH2”到 NEPliJP3JMUT1P1.4P35PISP35/T1PISP3日亞PITP3IJRD21期31-2526127m2ii3124135_168ITU1AT30C&1接數(shù)碼管位選端接蜂鳴器圖5單片機(jī)控制輸出電路圖P0 口連接有一個排阻,用作P0 口的上拉電阻,保證P0 口沒有數(shù)據(jù)輸

9、出時候處于高 電平狀態(tài)。還接在74HC7535片的D端,作為它的輸入,鎖存輸出到數(shù)碼管。P2 口低四位接數(shù)碼管未選端,P3.4接蜂鳴器。顯示模塊顯示模塊主要是顯示搶答倒計時的時間,搶答者號碼。數(shù)碼管顯示方法包括兩種:一種是靜態(tài)顯示,一種是動態(tài)顯示。其中靜態(tài)顯示的特 點是顯示穩(wěn)定不閃爍,程序編寫簡單,但占用端口資源多;動態(tài)顯示的特點是:顯示穩(wěn) 定性沒靜態(tài)好,程序編寫復(fù)雜,但是相對靜態(tài)顯示而言占用端口資源少。在本設(shè)計中根 據(jù)實際情況采用的是動態(tài)顯示方法。4位七段數(shù)碼管顯示電路如圖6所示。接 74HC753 即 P0 口接AT89S51的P2端口低四位圖6 4位七段數(shù)碼管顯示電路圖上圖中數(shù)碼管采用的

10、是4位一體七段共陽數(shù)碼管,其中AG段分別接到單片機(jī)的P0 口,由單片機(jī)輸出的P0 口數(shù)據(jù)來決定段碼值,位選碼 COM,1 COM2 COM3 COM分別 接到單片機(jī)的P2.0, P2.1 , P2.2 , P2.3,由單片機(jī)來決定當(dāng)前該顯示的是哪一位。通過查表法,將其在數(shù)碼管上顯示出來,其中P0 口為字型碼輸入端,P2 口低4位為字選段輸入段。在這里我們通過查表將字型碼送給7段數(shù)碼管顯示的數(shù)字。聲音模塊聲音模塊主要是單片機(jī)控制蜂鳴器發(fā)聲。選取壓電式無源蜂鳴器,聲音的頻譜范圍約在幾十到幾千赫茲,編寫程序控制單片 機(jī)P3.4 口的“高” “低”電平轉(zhuǎn)換頻率,產(chǎn)生一定頻率的巨型波,接上蜂鳴器就能發(fā)

11、出一定頻率的聲音,若再利用延時程序控制“高” “低”電平的持續(xù)時間,就能改變輸 出頻率,從而改變音調(diào),使蜂鳴器發(fā)出不同的聲音。單片機(jī)控制蜂鳴器電路圖如圖7所示。PJ.1JIXUP3.2/lNTDU1516 1tP3J5/T1I圖7單片機(jī)控制蜂鳴器電路圖單片機(jī)通過內(nèi)部定時器的操作實現(xiàn)交替變換的波形輸出驅(qū)動揚(yáng)聲器發(fā)聲。軟件設(shè)計主程序設(shè)計一上電數(shù)碼管顯示100,表示初始時間為10s, 0表示沒有搶答,先掃描“開始” “消除”鍵,判斷“開始”鍵是否按下,若按下,則開始倒計時,并掃描搶答鍵,若有搶答鍵按下,則顯示搶答者號碼和搶答的時間, 判斷倒計時是否為0,若是則蜂鳴器響圖8程序流程圖定時器設(shè)計采用定時

12、器/計數(shù)器T0的方式1定時,定時時間為50ms,對應(yīng)的十進(jìn)制數(shù)的初始值 為 15536 , 因使用的時鐘為 12MHz,所以定時的時間為 1us*(65536-15536)=1us*50000=50ms。要想定時1s,需要20次中斷,因此程序中定義了 中斷次數(shù)單元count,來對中斷次數(shù)進(jìn)行計數(shù)。要使最小分辨率為50ms,在定時器計時0 精品文檔 歡迎下載精品文檔 歡迎下載精品文檔 歡迎下載 。一次即50ms時,對鍵盤進(jìn)行一次掃描實現(xiàn)。因為采用 74HC753S片,因此程序變得簡 單,只需將秒單元進(jìn)行“ second/ 10 ”運(yùn)算,即可得到秒的十位的 BCD碼,秒的個位 BCM只需取余數(shù)“s

13、econd % 10”運(yùn)算就可得到,并都送 P0 口經(jīng)鎖存器利用動態(tài)方式 顯示。5 系統(tǒng)實現(xiàn)與測試Proteus 軟件Proteus軟件是由英國 Labcenter Electronics 公司于1989年推出的EDA工具軟 件,Proteus軟件不僅具有原理布圖,PCB自動制版或人工布線及互動電路仿真的功能,針 對微處理器的應(yīng)用 , 還可以直接在基于原理圖的虛擬原型上編程, 并實現(xiàn)軟件源碼級的實時調(diào)試 , 如有顯示及輸出 , 還能看到運(yùn)行后輸入輸出的效果, 配合系統(tǒng)配置的虛擬儀器如示波器, 邏輯分析儀等, 為單片機(jī)系統(tǒng)的虛擬仿真提供了功能強(qiáng)大的軟硬件調(diào)試手段。Proteus 軟件的特點:1)

14、除了既可以仿真模擬電路又可仿真數(shù)字電路以及數(shù)字、模擬混合電路外,其 獨特是能夠仿真各種單片機(jī)及嵌入式處理器。2)具有各種仿真儀器儀表工具,如示波器、邏輯分析儀、各種信號發(fā)生器、計數(shù)器、電壓源、電壓表、電流表、虛擬終端等,同一種儀器儀表可在同一電路中隨意調(diào) 動。3)可以進(jìn)行軟、硬件結(jié)合的仿真系統(tǒng),且仿真是交互的、可視化的。安裝和調(diào)試過程軟件調(diào)試?yán)?Keil uVision4 軟件進(jìn)行程序編寫, 編譯, 調(diào)試, 生成 .hex 文件, 利用 Proteus 進(jìn)行電路原理圖描繪,然后把.hex文件載入AT89S51芯片中,再仿真,通過功能對照, 來檢查修改程序,一步步使仿真與實現(xiàn)功能相近。一開始蜂

15、鳴器怎么的都不響,通過查資料請教別人,最后發(fā)現(xiàn)是因為蜂鳴器的一次 高低電平變換的程序沒有循環(huán),所以沒有維持一定時間讓它工作,通過在蜂鳴器的子程 序中加入一個100次的循環(huán),并是高低電平之間延時1ms發(fā)現(xiàn)蜂鳴器的工作是最合理的后來又發(fā)現(xiàn)按下?lián)尨疰I,倒計時不停止,經(jīng)過很多次試驗之后,發(fā)現(xiàn)是應(yīng)該在判斷搶答鍵是否按下的肯定條件下是定時器的使能標(biāo)示位置00當(dāng)主持人按下開始鍵,2號搶答者按下?lián)尨疰I時,Proteus仿真運(yùn)行圖如圖所示圖9 Proteus 仿真運(yùn)行圖硬件安裝由于經(jīng)費(fèi)的限制,元件數(shù)量也不是特別多,所以準(zhǔn)備自己焊板子,晶振復(fù)位都準(zhǔn)備 自己焊。精心策劃每個元件的安裝位置,和可以節(jié)省的引線,我把每個

16、元件多余的引腳 部分當(dāng)做線路來用,以使電路美觀一點。完工之后運(yùn)行不正常,分析可能是各個引腳和 線路之間不穩(wěn)定的原因,特別是所以電源和地都是通過引一根線出來接的電源孔懸在空 中接的電源,覺得還是不可靠,于是最后還是決定用最小系統(tǒng)來作為硬件的核心,以避 免不必要的影響。后來又最小系統(tǒng),杜邦線和排針再一次焊好了電路,一上電顯示-1,8 , 8,0,蜂鳴 器響的時間和仿真圖里蜂鳴器該響的時間一樣長,“開始”“搶答”“清除”鍵都不作用 暫時連接數(shù)碼管的各線我都用萬用表測試過了,是連通的,我想可能會是以下的原因:(1)可能是排阻的問題,但是如果是的話,數(shù)碼管應(yīng)該不會亮。(2)可能是數(shù)碼管的問題,但是也已經(jīng)

17、測試過,是正確的對應(yīng)的各引腳,而且可以顯示。(3)調(diào)用蜂鳴器響的程序放錯位置了,但是檢查了沒錯。經(jīng)過仔細(xì)檢查、測試、修改、調(diào)試之后,硬件電路圖如圖10所示。圖10硬件電路圖6課程設(shè)計總結(jié)心得體會此次課程設(shè)計,先從分析題目開始,從課本上找類似可能實現(xiàn)的功能塊,明確整體精品文檔 歡迎下載。精品文檔 歡迎下載。思路,大概畫出整體電路模塊,由于第一次接觸實際應(yīng)用設(shè)計,思維比較混亂,很多功能覺得考慮的地方太多,很難。后來去圖書館查閱了兩天資料,找到類似的應(yīng)用系統(tǒng),仔細(xì)研究了一番,多了個沒接觸過的芯片,通過幾本書上的資料,拼湊修改之后還是仿真不了, 也請教了一些老師, 后來通過比較另外一種方案, 覺得性價

18、比和簡便程度更高,所以放棄了原有的方案,重新開始設(shè)計。經(jīng)過修改程序和仿真調(diào)試,顯示的部分是差不多按我所想實現(xiàn)了,但蜂鳴器要么不響,要么能聽到一丁點聲響,參考了別的同學(xué)蜂鳴器響的程序,還有在網(wǎng)上找了很多關(guān)于蜂鳴器的資料,又請教老師問題,最終終于把蜂鳴器的問題解決了。仿真出來后,焊接電路,中途發(fā)現(xiàn)焊反了,怕影響電路拆了又重焊,還是顯示不正常,一上電是一些不該有的數(shù)字,按開始鍵三個數(shù)碼管都一起顯示倒計時,蜂鳴器一直響,一動電路又?jǐn)鄶嗬m(xù)續(xù),問過老師之后,決定還是用最小系統(tǒng)來作為硬件的核心,以避免不必要的影響。終于是又把電路板焊出來了,但是還是不如我所愿,顯示還是不正常,一上電蜂鳴器響的時間和仿真蜂鳴器

19、該響時的時間一樣長, 按開始鍵也沒有反應(yīng)。 經(jīng)過同學(xué)幫助,檢驗了數(shù)碼管以及和單片機(jī)連接的地方,都沒有問題,按理來說一上電應(yīng)該和主程序一開始設(shè)定的功能一樣,只能再重新測好每一個電路線和元件。經(jīng)老師指導(dǎo),應(yīng)該在上電時,測每個腳應(yīng)該有的電壓,看元件輸出功能是否正確,再逐步確定每一個芯片和電路的是否有問題,然后修改調(diào)試。我只能想到是,仿真和實際電路對于程序下載可能存在一些區(qū)別,特別是數(shù)碼管的位選和顯示段,還需不斷學(xué)習(xí),改進(jìn)。實踐總結(jié)經(jīng)過這段時間天天起早貪黑的守著電腦旁調(diào)試, 以及不斷查閱資料和請教別人的過程中,發(fā)現(xiàn)自己是多么的不懂,時間是過得很充實,幾乎忘了吃喝拉撒,每天做到凌晨一兩點,身心疲憊,天天

20、睡覺夢到先是程序該怎么改,后來又硬件該怎么測試,夢里想出來很多修改并最終成功的方法。總而言之,此次課程設(shè)計讓我更加細(xì)心,認(rèn)真地去做每一個部分,一步步的根據(jù)功能來測試電路,鎖定要修改的地方,學(xué)到的不僅是單片機(jī)的知識,還有很多對于我們這個專業(yè)來說必備的一些技能。參考文獻(xiàn).唐穎、程菊花等.單片機(jī)原理與應(yīng)用及C51程序設(shè)計M.北京大學(xué)出版社,2008年2 . 張毅剛、楊志明等. 基于 Proteus 的單片機(jī)課程的基礎(chǔ)實驗與課程設(shè)計M. 人民郵電出版社, 2012 年. 宋戈、黃鶴松等.51 單片機(jī)范例大全M. 中國郵電出版社, 2010年. 徐愛鈞、 彭秀華等 . 單片機(jī)高級語言編程與uVision

21、2 應(yīng)用實踐 M. 電子工業(yè)出版社,2008 年附錄源程序清單#include #define uint unsigned int#define uchar unsigned charunsignedcharcodetable=0 x40,0 x79,0 x24,0 x30,0 x19,0 x12,0 x02,0 x78,0 x00,0 x10,0 x08,0 x03,0 x46,0 x21,0 x06,0 x0e; / 共陰極數(shù)碼管編碼表0 - f 顯示sbit start= P3A6;/ 變量定義sbit reset = P3A7;sbit key1 = P1A0;sbit key2 =

22、P1A1;sbit key3 = P1A2;sbit buzzer = P3A4;bit start_flag = 0;bit key1_flag = 0;bit key2_flag = 0;bit key3_flag = 0;bit reset_flag = 0;bit action = 0;uchar second = 10;uchar count = 0;uchar number = 0;uchar number_display = 0;void delay(uint z)/ 延時函數(shù)uint x,y;for(x=z;x0;x-)for(y=100;y0;y-);/ 數(shù)碼管顯示驅(qū)動函數(shù)v

23、oid display(uchar number,uchar second)uchar second_first,second_second;second_first = second / 10;second_second = second % 10;P2 = 0 xfd;P0 = tablenumber;delay(2);P2 = 0 xf7;P0 = 0 x3f;delay(2);P2 = 0 xfb;P0 = tablesecond_first;delay(2);P2 = 0 xfe;P0 = tablesecond_second;delay(2);void start_keyscan(

24、)if(start = 0)delay(8);if(start = 0)&(!start_flag)start_flag = 1;action = 1;TR0 = 1;elsestart_flag = 0;uchar key_scan3()/ 開始鍵掃描函數(shù)/3 位搶答鍵掃描函數(shù)if(key1 = 0)delay(8);if(key1 = 0)&(!key1_flag) key1_flag = 1;number = 1;number_display = number;elsekey1_flag = 0;number = 0;if(key2 = 0) delay(8);if(key2 = 0)&

25、(!key2_flag) key2_flag = 1;number = 2;number_display = number;elsekey2_flag = 0;number = 0;if(key3 = 0) delay(8);if(key3 = 0)&(!key3_flag) key3_flag = 1;number = 3;number_display = number;elsekey3_flag = 0;number = 0;if(number_display != 0)return 1;elsereturn 0;復(fù)位鍵掃描函數(shù)void reset_keyscan()/if(reset = 0)delay(8);if(reset = 0)&(!reset_flag)reset_flag = 1;number_display = 0;second=1

溫馨提示

  • 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

提交評論