單片機課程設(shè)計基于AT89C51單片機的搶答器設(shè)計_第1頁
單片機課程設(shè)計基于AT89C51單片機的搶答器設(shè)計_第2頁
單片機課程設(shè)計基于AT89C51單片機的搶答器設(shè)計_第3頁
單片機課程設(shè)計基于AT89C51單片機的搶答器設(shè)計_第4頁
單片機課程設(shè)計基于AT89C51單片機的搶答器設(shè)計_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 電子系單片機課程設(shè)計報告題目:基于at89c51單片機的搶答器設(shè)計 班 級 通信工程*班 指 導 教 師 * 設(shè) 計 成 員 * 一課程設(shè)計意義搶答器是一種應(yīng)用非常廣泛的設(shè)備,對于我們大家來說并不陌生。在各種競賽、搶答場合中,它能迅速、客觀地分辨出最先獲得發(fā)言權(quán)的選手。隨著科技的發(fā)展,現(xiàn)在的搶答器有著數(shù)字化,智能化的方向發(fā)展,并且要求操作簡單,經(jīng)濟實用。因此,我們小組選擇八路搶答器這一課題,利用單片機的功能來實現(xiàn)。在主持人按下開始鍵后,各位選手通過為其分配的按鈕,來進行搶答,最先按鍵者獲得回答權(quán),能夠準確、直觀地判斷出第一搶答者,體現(xiàn)了公平公正的原則。設(shè)計中介紹了單片機控制、數(shù)碼顯示八路搶答

2、器的電路組成、設(shè)計思路及功能。通過參考文獻以及資料的收集,為搶答活動提供了簡單設(shè)計思路。搶答器的功能涵蓋了搶答、計時及犯規(guī)組號搶答器具有自鎖,復(fù)位等功能,操作簡單,經(jīng)濟實用。二課程設(shè)計任務(wù)書1.功能要求基于at89c511單片機設(shè)計制作一個搶答器,主要有如下功能:(1) 可同時供8個代表隊參加比賽,編號為0、1、2、3、4、5、6、7,各用一個按鈕;(2) 給節(jié)目主持人設(shè)置一個控制開關(guān),用來控制系統(tǒng)的清零和搶答的開始;(3) 搶答器具有數(shù)據(jù)鎖存功能、顯示功能和聲音提示功能。搶答開始后,若有選手按動按鈕,編號立即鎖存,并在led數(shù)碼管上顯示選手的編號,同時燈亮且伴隨聲音提示。此外,要封鎖輸入電路

3、,禁止其他選手搶答,最先搶答選手的編號一直保持到主持人將系統(tǒng)清零。2.設(shè)計要求基于at89c51單片機搶答器由控制核心at89c51、復(fù)位電路、電源電路、蜂鳴器電路、選手按鍵、主持人按鍵和數(shù)碼顯示電路等部分組成:(1)熟悉at89s51單片機系統(tǒng)的使用方法;(2)掌握復(fù)位電路工作原理及設(shè)計;(3)掌握晶振電路工作原理及設(shè)計;(4)蜂鳴器電路的設(shè)計;(5)led數(shù)碼管的特性及使用;(6)按鍵電路的設(shè)計;(7)初步掌握at89c51單片機編程方法;(8)初步掌握at89c51系統(tǒng)的調(diào)試方法。指導教師:日 期:三、課程設(shè)計進度計劃及檢查情況記錄表序號日期計劃完成內(nèi)容實際完成內(nèi)容16月13日確定課題,

4、搜集相關(guān)資料完成26月14日繪制電路圖,完成硬件部分的設(shè)計完成36月15日編寫軟件部分的程序完成46月16日軟件部分調(diào)試,設(shè)計報告整理完成56月17日答辯,完善課程設(shè)計報告完成6四、成績評定與評語 該同學在老師的指導下進行了基于at89c51單片機的搶答器設(shè)計與實現(xiàn),設(shè)計題目有一定工作量,基本涵蓋了課程的大部分基礎(chǔ)知識。其間調(diào)試出過不少意想不到的問題,比如限時器的設(shè)計等問題,經(jīng)過大量資料的查找解決了該困難,培養(yǎng)了獨立解決問題的能力。經(jīng)過該組同學的共同努力,同時,他們在電路設(shè)計、控制程序的開發(fā)等方面有了長足的進步。 該同學在本設(shè)計過程中能夠發(fā)揮自己的主觀能動性,積極地查找資料,設(shè)計電路,進行試驗

5、調(diào)試計。在進行課程設(shè)計時,能夠比較積極地與老師溝通,在指導教師的指導下能夠解決設(shè)計中遇到的問題。具有一定的團隊組織能力。 從報告所附程序的情況及設(shè)計結(jié)果來看基本上滿足了設(shè)計任務(wù)書的要求。所撰寫的設(shè)計報告基本展示了其設(shè)計方案,大部分模塊介紹的較為清楚,但個別模塊介紹不夠全面。工作嚴謹、踏實、有效完成了計劃任務(wù)。指導教師: 日 期:課程設(shè)計的主動性與平時表現(xiàn)(20%)獨立思考能力 與動手能力(40%)課程設(shè)計 完成情況(40%)課程設(shè)計成績題目:基于at89c51單片機的搶答器設(shè)計一 總體設(shè)計方案根據(jù)系統(tǒng)的功能與要求,選擇at89c51芯片。設(shè)計一個供8名選手參加的八路掃描式搶答器。每組設(shè)計一個搶

6、答按鈕供參加者使用。電路具有第一搶答信號的鑒別和鎖定存儲功能。在主持人將系統(tǒng)復(fù)位并發(fā)出搶答指令后,如果參賽者在第一時間按搶答開關(guān),則按鈕指示燈燈亮并用組別電路顯示出搶答者的組別。同時揚聲器發(fā)出聲音。電路應(yīng)具有自鎖功能,使其他組不起作用。二設(shè)計內(nèi)容1.msc-51系列單片機介紹及硬件功能msc-51系列單片機是英特爾公司于1980年起推出的第二代產(chǎn)品。與8084相比,8051的硬件結(jié)構(gòu)和指令系統(tǒng)均有很大改進,可支持更大的存貯空間,擴充了更多的硬件功能i/o功能,速度提高了2- 5倍,可完成邏輯運算等。近年來推出的一些增強的msc-51系統(tǒng)單片機,片內(nèi)還集成了許多特殊功能單元,只需要加一些擴展電路

7、及必要的通道接口即可構(gòu)成各種計算機應(yīng)用系統(tǒng)。因msc-51系統(tǒng)單片機在智能儀表、智能接口、功能模塊等領(lǐng)域得到了非常廣泛的應(yīng)用。我們這里用的單片機是mcs51系列的at89c51作為控制系統(tǒng),它外接了八個鍵盤,也就是它可以為八個人同時提供搶答。它的顯示系統(tǒng)為兩個數(shù)碼顯示管(共陽級接法);另外還有一個揚聲器和八個發(fā)光二極管作為提示裝置。當接通電源時,單片機將會對鍵盤進行掃描,當有按鍵按下時,單片機將會向數(shù)碼顯示關(guān)發(fā)出信號,于是數(shù)碼顯示管將顯示按下鍵盤所對應(yīng)的顯示號(18)。同時,單片機還會將揚聲器連接的接口設(shè)置為零(低電平),而揚聲器的另一端接的是+5v 電壓,從而將揚聲器接通并發(fā)出報警聲;單片機

8、還會將按下的按鍵所對應(yīng)的發(fā)光二極管的接口至低電平,而發(fā)光二極管用的是共陽極接法,從而點亮發(fā)光二極管。2.硬件電路圖(1)搶答器部分電路(2)時序電路部分(3)復(fù)位電路部分(4)蜂鳴電路部分(5)電源電路部分3.程序流程圖主程序流程圖:開始 p1 口 全 置1 關(guān) 閉 顯 示 個位送40h,十位送ffh 設(shè)定中斷方式,下降沿有效 開 四 個 中 斷 關(guān) 提 示 音 十位位碼取低電平(即0送到p3.0口) 十位字符碼送p0口 延 時 十位位碼取高電平(即1送p3.0口) 個位位碼取低電平(即0送p3.1口) 個位字符碼送p0口 延 時 個位位碼取高電平(即1送p3.1口) 延時程序流程圖:開始20

9、h送入r449h送r3(r3)1=0?(r4)1=0?返回nnyyint1中斷服務(wù)流程圖:開始關(guān)閉中斷30h送r7“0”字符碼送r0(個位)“3字符碼送r1(十位)t1計數(shù),t0定時80h送th083h送th100h送tl1開啟t0 t1,中斷返回t0中斷服務(wù)程序流程圖:開始p3.4口置1延時兩次p3.4口置0返回t1中斷服務(wù)流程圖:(r7)1送入r7開始調(diào)用顯示程序r7送入a(a)=0?83h送th1,00h送tl1計數(shù)器重置初值啟動t1,t0返回關(guān)閉t1,t0,中斷yn顯示程序流程圖:開始表的首地址送到dptr(r7)送a,立即數(shù)10h送b秒數(shù)分解成十位,個位0ah送a十位值=0?取十位字

10、符碼送r1b 送入a取個位字符碼送r0返回yn4.系統(tǒng)程序設(shè)計在主持人發(fā)布搶答命令之前設(shè)定搶答的時間,主持人發(fā)布搶答命令,按下s9按鍵后,程序開始打開,定時中斷開始倒計時,然后調(diào)用鍵盤掃描子程序,編寫鍵盤掃描程序。當掃描到有人按下了鍵,馬上關(guān)閉t0,調(diào)用顯示程序,并封鎖鍵盤。p1.0-p1.7為八路搶答器的輸入端口,數(shù)碼管斷選p0口,位選p2口,蜂鳴器輸出為p3.6。主程序:beep bit 00horg 0000hljmp main org 0003h ;定義四個中斷的入口地址 ljmp start0org 000bhljmp start1org 0013hljmp start2org 00

11、1bhljmp start3org 0030hmain : mov p1, #0ffh ;p1口全置1 setb p3.0 ;串行輸入端置1 setb p3.1 ;串行輸出端置1 clr beep ;清零 mov r0, #40h ;個位送“0” mov r1, #0ffh ;十位全滅 mov ip, #01h mov ie, #8fhloop: clr p3.6 ;串行輸入端清零 mov p0, r1 lcall del ;延時 setb p3.0 clr p3.1 mov p0, r0 lcall del ;延時 setb p3.1 ;串行輸出端置1 sjmp loop延時部分程序:del

12、: mov r4, #20h ;立即數(shù)送r4dly1: mov r3, #49h ;立即數(shù)送r4dly2: djnz r3, dly2 ;(r3)1不為0,繼續(xù) djnz r4, dly1 ;(r4)1不為0,繼續(xù) ret ;返回int0中斷服務(wù)程序:start0: clr ea mov a, p1ml0: cjne a, #0feh, ml1 ;1”字符碼送p0口 mov r0, 0f9h clr p2.0 sjmp ml8ml1: cjne a, #0feh, ml2 ;2字符碼送p0口 mov r0, 0a4h clr p2.1 sjmp ml8ml2: cjne a, #0fbh, m

13、l3 ;“3字符碼送p0 mov r0, 0b0h clr p2.2 sjmp ml8ml3: cjne a, #0f7h, ml4 ;“4字符碼送p0 mov r0, 99h clr p2.3 sjmp ml8ml4: cjne a, #0efh, ml5 ;“5字符碼送p0 mov r0, 92h clr p2.4 sjmp ml8ml5: cjne a, #0dfh, ml6 ;“6字符碼送p0 mov r0, 82h clr p2.5 sjmp ml8ml6: cjne a, #0bfh, ml7 ;“7字符碼送p0 mov r0, f8h clr p2.6 sjmp ml8ml7:

14、cjne a, #7fh, ml8 ;“8”字符碼送p0 mov r0, 80h sjmp ml8ml8: clr p3.6 ;蜂鳴器響 retint1中斷服務(wù)程序:start1: clr ea ;關(guān)中斷 mov r7, #30 ;立即數(shù)30送r7 mov r0, #0l0h mov r1, #0b0h mov tmod, #42h mov th0, #80h ;80h送th0 mov th1, #83h ;83h送th1 mov tl1, #00h setb tr0 setb tr1 setb ea rett0中斷服務(wù)程序:start2: setb p3.4 ;定時/計數(shù)器0外部信號輸入端置

15、1 nop nop clr p3.4t1中斷服務(wù)程序:strat3: dec r7 ;秒減1 lcall disp ;調(diào)顯示處理程序 mov a, r7 ; (r7)送累加器a jz ml10 cjnz r7, #00h, ml10 mov th1, #83h ;將83h送到th1 mov tl1, #00h ;將00h送到tl1 setb tr1 setb tr0 setb ea ;開中斷 ljmp ml11ml10: clr p3.6 ;蜂鳴器響 clr tr0 ;關(guān)閉定時器t0 clr tr1 ;關(guān)閉定時器t0 clr eaml11: ret顯示部分程序:disp: mov dptr,#

16、tab mov a,r7 ;(r7)送a,立即數(shù)10送b mov b,#10 ;秒數(shù)分解成十位,個位 div ab cjnz a,#00h,mlr mov a,#0ahmlr:mov a,a+dptr mov r0,a ;取個位字符碼送r0 rettab:db 00h,0f9h,0a4h,0b0h,99h db 92h,82h,0f8h,80h,90h,0ffh5.調(diào)試與結(jié)果軟件調(diào)試是通過對用戶程序的匯編、連接、執(zhí)行來發(fā)現(xiàn)程序中存在的語法錯誤與邏輯錯誤并加以排除糾正的過程。程序運行后編輯,查看是否有邏輯的錯誤。3號選手按搶答器后試驗箱顯示結(jié)果如下圖所示:搶答后剩余時間顯示如下圖所示:三結(jié)論、建

17、議及課程設(shè)計體會通過資料的收集和查詢,我們對程序的流程圖有一個基本的結(jié)構(gòu),結(jié)合找到的相關(guān)參考資料,以及自己對單片機知識的認識,利用protel 99進行作圖仿真,結(jié)合硬件完成了搶答器的設(shè)計。本次課程設(shè)計綜合性比較強,不僅要求我們能夠靈活的使用單片機的各種指令,熟練使用單片機設(shè)計搶答器,熟練編寫順序結(jié)構(gòu)程序,循環(huán)結(jié)構(gòu)程序以及分支結(jié)構(gòu)程序,還要求對單片機的電路連接結(jié)構(gòu),對數(shù)碼管管理芯片有明確清晰的了解與認識。從這次課程設(shè)計中我學到了很多,比如面對問題要保持冷靜,特別是在程序的編寫這一塊,要找出程序的錯誤一定要有一個冷靜的頭腦,否則很難發(fā)現(xiàn)錯誤甚至是越改越錯。另外我還認識到與他人合作的重要性,在設(shè)計

18、中一個人掌握原理知識是遠遠不夠的,必須讓每個人都知道,否則一個人的錯誤,就有可能導致整個工作失敗。尤其是我作為組長,更要有統(tǒng)籌規(guī)劃,給組員分配好任務(wù),團結(jié)協(xié)作是我們成功的一項非常重要的保證。并且,不懂的地方還要虛心向其他的同學學習。最后,還要感謝在這次課程設(shè)計中周秋茜老師提供的指導和幫助。四參考文獻 1 胡漢才.單片機原理與接口技術(shù).北京:清華大學出版社,19982 馮育長.單片機系統(tǒng)設(shè)計與實例指導.北京:西安電子科技大學出版社,20073 李光飛.單片機課程設(shè)計實例指導.北京:北京航天航空大學出版社,20044 趙輝. protel 99電子線路cad.北京:北京郵電大學出版社,2008附錄

19、1:完整源程序:beep bit 00horg 0000hljmp main org 0003h ;定義四個中斷的入口地址 ljmp start0org 000bhljmp start1org 0013hljmp start2org 001bhljmp start3org 0030hmain : mov p1, #0fh ;p1口全置1 setb p3.0 ;串行輸入端置1 setb p3.1 ;串行輸出端置1 clr beep ;清零 mov r0, #40h ;個位送“0” mov r1, #0ffh ;十位全滅 mov ip, #01h mov ie, #8fhloop: clr p3.

20、6 ;串行輸入端清零 mov p0, r1 lcall del ;延時 setb p3.0 clr p3.1 mov p0, r0 lcall del ;延時 setb p3.1 ;串行輸出端置1 sjmp loopdel: mov r4, #20h ;立即數(shù)送r4dly1: mov r3, #49h ;立即數(shù)送r4dly2: djnz r3, dly2 ;(r3)1不為0,繼續(xù) djnz r4, dly1 ;(r4)1不為0,繼續(xù) ret ;返回start0: clr ea mov a, p1ml0: cjne a, #0feh, ml1 ;1”字符碼送p0口 mov r0, 0f9h cl

21、r p2.0 sjmp ml8ml1: cjne a, #0feh, ml2 ;2字符碼送p0口 mov r0, 0a4h clr p2.1 sjmp ml8ml2: cjne a, #0fbh, ml3 ;“3字符碼送p0口 mov r0, 0b0h clr p2.2 sjmp ml8ml3: cjne a, #0f7h, ml4 ;“4字符碼送p0口 mov r0, 99h clr p2.3 sjmp ml8ml4: cjne a, #0efh, ml5 ;“5字符碼送p0口 mov r0, 92h clr p2.4 sjmp ml8ml5: cjne a, #0dfh, ml6 ;“6字

22、符碼送p0口 mov r0, 82h clr p2.5 sjmp ml8ml6: cjne a, #0bfh, ml7 ;“7字符碼送p0口 mov r0, f8h clr p2.6 sjmp ml8ml7: cjne a, #7fh, ml8 ;“8”字符碼送p0口 mov r0, 80hml8: clr p3.6 ;蜂鳴器響 ret istart1: clr ea ;關(guān)中斷 mov r7, #30 ;立即數(shù)30送r7 mov r0, #0l0h mov r1, #0b0h mov tmod, #42h mov th0, #80h ;80h送th0 mov th1, #83h ;83h送th1 mov tl1, #00h setb tr0 setb tr1 setb ea ret istart2: setb p3.4 ;定時/計數(shù)器0外部信號輸入端置1 nop nop clr p3.4 ret istrat3: dec r7 ;秒減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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論