畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的八路智力搶答器設(shè)計(jì)_第1頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的八路智力搶答器設(shè)計(jì)_第2頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的八路智力搶答器設(shè)計(jì)_第3頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的八路智力搶答器設(shè)計(jì)_第4頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的八路智力搶答器設(shè)計(jì)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、河北能源職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文第1章 概要1.1設(shè)計(jì)相關(guān)背景畢業(yè)設(shè)計(jì)是學(xué)好本門課程的又一重要實(shí)踐性教學(xué)環(huán)節(jié),畢業(yè)設(shè)計(jì)的目的和任務(wù)就是配合單片機(jī)的教學(xué)和平時(shí)實(shí)驗(yàn),以達(dá)到鞏固消化課程的內(nèi)容,進(jìn)一步加強(qiáng)綜合應(yīng)用能力及單片機(jī)應(yīng)用系統(tǒng)開發(fā)和設(shè)計(jì)能力的訓(xùn)練,啟發(fā)創(chuàng)新思維,使之具有獨(dú)立單片機(jī)產(chǎn)品和科研的基本技能,是以培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí)的過程,是知識(shí)轉(zhuǎn)化為能力和能力轉(zhuǎn)化為工程素質(zhì)的重要階段。在實(shí)際生活中有好多地方都用到了單片機(jī),因此學(xué)習(xí)好這門課程有著十分重要的意義。搶答器是在競賽、文體娛樂活動(dòng)(搶答活動(dòng))中,能準(zhǔn)確、公正、直觀地判斷出搶答者的機(jī)器。工廠、學(xué)校和電視臺(tái)等單位常舉辦各種智力競賽, 搶答記分

2、器是必要設(shè)備。在我校舉行的各種競賽中我們經(jīng)??吹接袚尨鸬沫h(huán)節(jié),舉辦方多數(shù)采用讓選手通過舉答題板的方法判斷選手的答題權(quán),這在某種程度上會(huì)因?yàn)橹鞒秩说闹饔^誤斷造成比賽的不公平性。為解決這個(gè)問題,八路數(shù)顯搶答器的產(chǎn)生是個(gè)必然的趨勢(shì)。 在知識(shí)競賽中, 特別是做搶答題時(shí),在搶答過程中,為了知道哪一組或哪一位選手先答題,必須要有一個(gè)系統(tǒng)來完成這個(gè)任務(wù)。如果在搶答中,只靠人的視覺是很難判斷出哪組先答題。利用單片機(jī)來設(shè)計(jì)搶答器,使以上問題得以解決,即使兩組的搶答時(shí)間相差幾微秒,也可分辨出哪組優(yōu)先答題。1.2設(shè)計(jì)的目的 通過畢業(yè)實(shí)習(xí)使學(xué)生熟悉搶答器的應(yīng)用及發(fā)展,理解智力競賽搶答器電路的工作原理;同時(shí)學(xué)習(xí)現(xiàn)場(chǎng)職工

3、的愛崗敬業(yè)精神,樹立學(xué)習(xí)為生產(chǎn)實(shí)踐服務(wù)的崇高理想,通過畢業(yè)實(shí)習(xí)作好理論學(xué)習(xí)和工作實(shí)際的銜接和過渡,培養(yǎng)適應(yīng)生產(chǎn)、投身生產(chǎn)的信心和勇氣;廣泛收集與自己所學(xué)專業(yè)有關(guān)的技術(shù)資料和經(jīng)驗(yàn)數(shù)據(jù),為高質(zhì)量地完成畢業(yè)設(shè)計(jì)任務(wù)打下堅(jiān)實(shí)的基礎(chǔ)。圖1-1 搶答器實(shí)物圖通過這次設(shè)計(jì),掌握51單片機(jī)的原理,了解簡單多功能搶答器組成原理,初步掌握多功能搶答器的調(diào)整及測(cè)試方法,提高動(dòng)手能力和排除故障的能力。同時(shí)通過本課題設(shè)計(jì)與裝配、調(diào)試,提高自己的動(dòng)手能力,鞏固已學(xué)的理論知識(shí),建立單片機(jī)理論和實(shí)踐的結(jié)合,了解多功能搶答器各單元電路之間的關(guān)系及相互影響,從而能正確設(shè)計(jì)、計(jì)算定時(shí)計(jì)數(shù)的各個(gè)單元電路。初步掌握多功能搶答器的調(diào)整及

4、測(cè)試方法。提高動(dòng)手能力和排除故障的能力。1.3要求及思路搶答器是為競賽參賽者答題時(shí)進(jìn)行搶答而設(shè)計(jì)的一種優(yōu)先判決器電路,競賽者可以分為若干組,搶答時(shí)各組對(duì)主持人提出的問題要在最短的時(shí)間內(nèi)做出判斷,并按下?lián)尨鸢存I回答問題。當(dāng)?shù)谝粋€(gè)人按下按鍵后,則在顯示器上顯示該組的號(hào)碼,同時(shí)電路將其他各組按鍵封鎖,使其不起作用?;卮鹜陠栴}后,由主持人將所有按鍵恢復(fù),重新開始下一輪搶答。搶答器具有定時(shí)搶答功能,且一次搶答的時(shí)間可以由主持人設(shè)定(如,30秒)。當(dāng)主持人啟動(dòng)開始鍵后,定時(shí)器進(jìn)行減計(jì)時(shí)。 參賽選手在設(shè)定的時(shí)間內(nèi)進(jìn)行搶答,搶答有效,定時(shí)器停止工作,顯示器上顯示選手的編號(hào)和搶答的時(shí)間,并保持到主持人將系統(tǒng)清除

5、為止。如果定時(shí)時(shí)間已到,無人搶答,本次搶答無效,系統(tǒng)通過一個(gè)指示燈報(bào)警并禁止搶答,定時(shí)顯示器上顯示00。1.4搶答器方案選擇搶答器分類1.4.1原始競賽搶答器原始競賽搶答器是由模擬電路,數(shù)字電路所組成的。其功能單一,可靠性差。1.4.2電子搶答器電子搶答器的中心構(gòu)造一般都是由搶答器由單片機(jī)以及外圍電路組成,其搭配的配件不同又分為,非語音非記分搶答器和語音記分搶答器。 多適用于學(xué)校和企事業(yè)單位舉行的簡單的搶答活動(dòng)。非語音記分搶答器構(gòu)造很簡單,就是一個(gè)搶答器的主機(jī)和一個(gè)搶答按鈕組成,在搶答過程中選手是沒有記分的顯示屏。該系統(tǒng)由單片機(jī)控制, 線路相對(duì)簡單、結(jié)構(gòu)緊湊、價(jià)格低廉、性能優(yōu)越,運(yùn)行穩(wěn)定,有較

6、高的性價(jià)比。1.4.3電腦搶答器 電腦搶答器又分為無線電腦搶答器和有線電腦搶答器。 無線電腦搶答器的構(gòu)成是由:主機(jī)和搶答器專用的軟件和無線按鈕。 無線電腦搶答器利用電腦和投影儀,可以把搶答氣氛活躍起來,一般多使用于電臺(tái)等大型的活動(dòng)。 有線電腦搶答器也是由主機(jī)和電腦配合起來,電腦在和投影儀配合起來,利用專門研發(fā)的配套的搶答器軟件,可以十分完美的表現(xiàn)搶答的氣氛。但其成本較高,制作相對(duì)復(fù)雜綜合分析以上三種實(shí)現(xiàn)方法,本設(shè)計(jì)決定采用單片機(jī)at89c51為核心元件設(shè)計(jì)智力競賽搶答器。在滿足工作要求的前提下,性價(jià)比高的設(shè)計(jì)是我們的首選。 一般搶答器由單片機(jī)以及外圍電路組成,分為五路八路等不同,五路和八路的差

7、別是,搶答器背面的接口有幾組,和外形沒有關(guān)系。 早期的搶答器只由幾個(gè)三極管、可控硅、發(fā)光管等組成,能通過發(fā)光管的指示辯認(rèn)出選手號(hào)碼。現(xiàn)在大多數(shù)搶答器均使用單片機(jī)(如msc-51型)和數(shù)字集成電路,并增加了許多新功能,如選手號(hào)碼顯示、搶按前或搶按后的計(jì)時(shí)、選手得分顯示等功能。本設(shè)計(jì)利用at89c51單片機(jī)及外圍接口實(shí)現(xiàn)的搶答系統(tǒng),利用單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和記數(shù)的原理,將軟、硬件有機(jī)地結(jié)合起來,使得系統(tǒng)能夠正確地進(jìn)行計(jì)時(shí),同時(shí)使數(shù)碼管能夠正確地顯示時(shí)間和選手號(hào)碼。用開關(guān)做鍵盤輸出,揚(yáng)聲器發(fā)生提示。系統(tǒng)達(dá)到要求:在搶答中,只有開始后搶答才有效,如果在開始搶答前搶答為無效;搶答限定時(shí)間和回答問題

8、的時(shí)間可是在1-99s設(shè)定;可以顯示是哪位選手有效搶答和無效搶答,正確按鍵后有音樂提示;搶答時(shí)間和回答問題時(shí)間倒記時(shí)顯示,時(shí)間完后系統(tǒng)自動(dòng)復(fù)位;按鍵鎖定,在有效狀態(tài)下,按鍵無效。通過研究并在設(shè)計(jì)驗(yàn)證后發(fā)現(xiàn),采用單片機(jī)技術(shù)設(shè)計(jì)的搶答器與目前常用的搶答器相比,首先,電路連接簡單,因?yàn)榇蠖鄶?shù)功能單元都通過程序設(shè)計(jì)在單片機(jī)內(nèi)部,第二,工作性能可靠,抗干擾能力優(yōu)于目前搶答器。所以本研究是一個(gè)實(shí)用的工程設(shè)計(jì),具有創(chuàng)新性。第二章 搶答器系統(tǒng)概述2.1單片機(jī)系統(tǒng)原理本課題采用了單片機(jī)最小系統(tǒng)來實(shí)現(xiàn)八路搶答器,下面是單片機(jī)最小系統(tǒng)的原理。單片機(jī)的主要功能是負(fù)責(zé)整個(gè)系統(tǒng)的控制,不承擔(dān)復(fù)雜的數(shù)據(jù)處理任務(wù),因此在設(shè)計(jì)

9、單片機(jī)最小系統(tǒng)時(shí)通常選用at89c5l、at89c52、at89s51、at89s52(s系列芯片支持isp功能)等型號(hào)的8位單片機(jī)作為mcu。本單片機(jī)最小系統(tǒng)采用的是at89c51。一個(gè)典型的單片機(jī)最小系統(tǒng)一般由時(shí)鐘電路、復(fù)位電路、片外ram、片外rom、按鍵、數(shù)碼管、液晶顯示器、外部擴(kuò)展接口等部分組成,圖2-1 、圖2-2分別給出了單片機(jī)最小系統(tǒng)的結(jié)構(gòu)框圖、原理圖。圖2-1 單片機(jī)最小系統(tǒng)的結(jié)構(gòu)框圖圖2-2單片機(jī)最小系統(tǒng)的原理圖2.2搶答器的主要流程流程圖是由一些圖框和流程線組成的,其中圖框表示各種操作的類型,圖框中的文字和符號(hào)表示操作的內(nèi)容,流程線表示操作的先后次序。流程圖的基本結(jié)構(gòu)為順

10、序結(jié)構(gòu),分支結(jié)構(gòu)(又稱選擇結(jié)構(gòu)),循環(huán)結(jié)構(gòu)。為便于識(shí)別,繪制流程圖的習(xí)慣做法是:方框表示:要執(zhí)行的處理平行四邊型表示:代表資料輸人。不規(guī)則圖形代表資料輸出或報(bào)表輸出。菱形表示:決策或判斷。加載程序運(yùn) 行行開始開始數(shù)碼管顯示fff開始搶按時(shí)間倒計(jì)時(shí)開始前有選手搶按顯示違例選手號(hào)碼并伴有語音報(bào)警倒計(jì)時(shí)結(jié)束,超時(shí)有選手搶按顯示fff顯示選手號(hào)碼,倒計(jì)時(shí)時(shí)間,語音報(bào)警,答題,答題時(shí)間倒計(jì)時(shí)正常流程違規(guī)流程若超過答題時(shí)間,則數(shù)碼管顯示fff答題完畢根據(jù)選手表現(xiàn),規(guī)則由主持人減分圖2 搶答器工作流程第3章 智力搶答器的硬件設(shè)計(jì)3.1硬件電路的設(shè)計(jì)本設(shè)計(jì)分為硬件設(shè)計(jì)和軟件設(shè)計(jì),這兩者相互結(jié)合,不可分離;從時(shí)

11、間上看,硬件設(shè)計(jì)的絕大部分工作量是在最初階段,到后期往往還要做一些修改。只要技術(shù)準(zhǔn)備充分,硬件設(shè)計(jì)的大返工是比較少的,軟件設(shè)計(jì)的任務(wù)貫徹始終,到中后期基本上都是軟件設(shè)計(jì)任務(wù),隨著集成電路技術(shù)的飛速發(fā)展,各種功能很強(qiáng)的芯片不斷出現(xiàn),使硬件電路的集成度越來越高,硬件設(shè)計(jì)的工作量在整個(gè)項(xiàng)目中的所占的比重逐漸下降。為使硬件電路設(shè)計(jì)盡可能合理,應(yīng)注意以下幾方面:(1) 盡可能采用功能強(qiáng)的芯片,以簡化電路,功能強(qiáng)的芯片可以代替若干普通芯片,隨著生產(chǎn)工藝的提高,新型芯片的的價(jià)格不斷下降,并不一定比若干普通芯片價(jià)格的總和高。(2) 留有設(shè)計(jì)余地。在設(shè)計(jì)硬件電路時(shí),要考慮到將來修改擴(kuò)展的方便。因?yàn)楹苌儆幸诲N定音

12、的電路設(shè)計(jì),如果現(xiàn)在不留余地,將來可能要為一點(diǎn)小小的修改或擴(kuò)展而被迫進(jìn)行全面返工。(3) 程序空間,選用片內(nèi)程序空間足夠大的單片機(jī),本設(shè)計(jì)采用at89c51單片機(jī)。(4) ram空間,at89c51內(nèi)部ram不多,當(dāng)要增強(qiáng)軟件數(shù)據(jù)處理功能時(shí),往往覺得不足。如果系統(tǒng)配置了外部ram,則建議多留一些空間。如選用8155作i/o接口,就可以增強(qiáng)256字節(jié)ram。如果有大批數(shù)據(jù)需要處理,則應(yīng)配置足夠的ram,如6264,62256等。隨著軟件設(shè)計(jì)水平的提高,往往只要改變或增加軟件中的數(shù)據(jù)處理算法,就可以使系統(tǒng)功能提高很多,而系統(tǒng)的硬件不必做任何更換就使系統(tǒng)升級(jí)換代。只要在硬件電路設(shè)計(jì)初期考慮到這一點(diǎn),

13、就應(yīng)該為系統(tǒng)將來升級(jí)留足夠的ram空間,哪怕多設(shè)計(jì)一個(gè)ram的插座,暫不插芯片也好。(5) i/o端口:在樣機(jī)研制出來后進(jìn)行現(xiàn)場(chǎng)試用時(shí),往往會(huì)發(fā)現(xiàn)一些被忽視的問題,而這些問題不是靠單純的軟件措施來解決的。如有些新的信號(hào)需要采集,就必須增加輸入檢測(cè)端;有些物理量需要控制,就必須增加輸出端。如果在硬件電路設(shè)計(jì)就預(yù)留出一些i/o端口,雖然當(dāng)時(shí)空著沒用,那么用的時(shí)候就派上用場(chǎng)了。 3.2八路搶答器性能特點(diǎn)及工作原理智力競賽搶答器用單片機(jī)來設(shè)計(jì)制作完成,由于其功能的實(shí)現(xiàn)主要通過軟件編程來完成, 采用單片機(jī)at89c51,它是低功耗、高性能的cmos型8位單片機(jī)。片內(nèi)帶有4kb的flash存儲(chǔ)器,且允許在

14、系統(tǒng)內(nèi)改寫或用編程器編程。該智力競賽搶答器的準(zhǔn)確度很高,其誤差主要由晶振自身的誤差所造成。at89c51單片機(jī)內(nèi)部由cpu、振蕩電路、總線控制部件、中斷控制部件、片內(nèi)flash存儲(chǔ)器、片內(nèi)ram、并行i/o接口、定時(shí)器和串行i/o接口構(gòu)成。單片機(jī)內(nèi)部最核心的部分是cpu。cpu主要功能是產(chǎn)生各種控制信號(hào),控制存儲(chǔ)器、輸入/輸出端口的數(shù)據(jù)傳輸、數(shù)據(jù)的算術(shù)運(yùn)算、邏輯運(yùn)算以及位操作處理等。其內(nèi)部結(jié)構(gòu)去下圖所示:外部定時(shí)元件復(fù)位中斷電源系統(tǒng)時(shí)鐘romcpu定時(shí)/計(jì)數(shù)器串行i/o口并行i/o口ram圖 3-1 at89c51單片機(jī)的內(nèi)部結(jié)構(gòu)圖at89c51單片機(jī)的存儲(chǔ)器在物理上設(shè)計(jì)成程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)

15、器兩個(gè)獨(dú)立的空間,片內(nèi)程序存儲(chǔ)器的容量為4kb,片內(nèi)數(shù)據(jù)存儲(chǔ)器為128個(gè)字節(jié)。at89c51單片機(jī)有4個(gè)8位的并行i/o口:p0口,p1口,p2口和p3口。各個(gè)接口均由接口鎖存器,輸出驅(qū)動(dòng)器,和輸入緩沖器組成。p1口是唯一的單功能口,僅能用作通用的數(shù)據(jù)輸入/輸出口。p3口是雙功能口除了具有數(shù)據(jù)輸入/輸出功能外,每條接口還具有不同的第二功能,如p3.0是串行輸入口線,p3.1口是串行輸出口線。在需要外部程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器擴(kuò)展時(shí),p0可作為分時(shí)復(fù)用的低8位地址/數(shù)據(jù)總線,p2口可作為高8位的地址總線。p3口也可作為at89c51的一些特殊功能口,同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。3.3

16、控制系統(tǒng)及所需元件 控制系統(tǒng)主要由單片機(jī)應(yīng)用電路、存儲(chǔ)器接口電路、顯示接口電路組成。其中單片機(jī)at89c51是系統(tǒng)工作的核心,它主要負(fù)責(zé)控制各個(gè)部分協(xié)調(diào)工作。at89c51的管腳圖如下圖3-3所示:圖3-3 at89c51的管腳圖所需元件:該系統(tǒng)的核心器件是at89c51。在其外圍接上復(fù)位電路、上拉電阻、數(shù)碼管、按鈕及揚(yáng)聲器。元件為:晶振x1、電容c1、c2、c3、 電阻rp1、p3.0和p3.1由裁判控制,分別是搶答開始和停止鍵。p1.0-p1.7是8組搶答的輸入口,p2.0-p2.3口為數(shù)碼管的段選口,位選口用的是p0.0-p0.6口輸出, p3.6為蜂鳴器的控制口。管腳說明89c51 單

17、片機(jī)實(shí)際有效的引腳為40個(gè),其封裝形式及引腳圖如上圖所示,各管腳說明如下:vcc:(40腳)主電源+5v,正常操作和對(duì)eprom編程及驗(yàn)證時(shí)均接+5v電源。gnd:(20腳)接地。p0口:p0口為一個(gè)8位漏級(jí)開路雙向i/o口,在訪問片外存儲(chǔ)器時(shí),它分時(shí)作低8位地址線和8位雙向數(shù)據(jù)總線用。在eprom編程時(shí),由p0輸入指令字節(jié),而在驗(yàn)證程序時(shí),則輸出指令字節(jié)。驗(yàn)證程序時(shí),要求外接上拉電阻。p0能以吸收電流的方式驅(qū)動(dòng)8個(gè)lsttl負(fù)載。p1口:p1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向i/o口,eprom編程和驗(yàn)證程序時(shí),由它輸入低8位地址。p1能驅(qū)動(dòng)4個(gè)lsttl負(fù)載。在8032/8052中,p1.

18、0還相當(dāng)于專用功能端t2,即定時(shí)器的計(jì)數(shù)觸發(fā)輸入端;p1.1還相當(dāng)于專用功能端t2ex,即定時(shí)器t2的外部控制端。p2口:p2口為一個(gè)內(nèi)部上拉電阻的8位雙向i/o口,p2口緩沖器可接收、輸出4個(gè)ttl門電流,當(dāng)p2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),p2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),p2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),p2口輸出其特殊功能寄存器的內(nèi)容。p2口在flash編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制

19、信號(hào)。p3口:p3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向i/o口,可接收輸出4個(gè)ttl門電流。當(dāng)p3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,p3口將輸出電流(ill)這是由于上拉的緣故。p3口也可作為at89c51的一些特殊功能口,如下表所示: p3口管腳第二功能 p3.0 rxd(串行輸入口) p3.1 txd(串行輸出口) p3.2 /int0(外部中斷0) p3.3 /int1(外部中斷1) p3.4 t0(記時(shí)器0外部輸入) p3.5 t1(記時(shí)器1外部輸入) p3.6 /wr(外部數(shù)據(jù)存儲(chǔ)器寫選通) p3.7 /rd(外部數(shù)據(jù)存儲(chǔ)器讀選通) rs

20、t:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持rst腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ale/prog:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時(shí),ale端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時(shí), ale只有在執(zhí)行movx,movc指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。 /psen:外部程序存儲(chǔ)

21、器的讀選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/psen有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/psen信號(hào)將不出現(xiàn)。 /ea/vpp:當(dāng)/ea保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000h-ffffh),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/ea將內(nèi)部鎖定為reset;當(dāng)/ea端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。 xtal1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 xtal2:來自反向振蕩器的輸出。3.4時(shí)鐘頻率電路的設(shè)計(jì)單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作。在單片機(jī)內(nèi)部有一個(gè)時(shí)鐘振蕩電路,只

22、需要外接一個(gè)振蕩源就能產(chǎn)生一定的時(shí)鐘信號(hào)送到單片機(jī)內(nèi)部的各個(gè)單元,決定單片機(jī)的工作速度。時(shí)鐘電路如圖所示。外部振蕩源電路一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在xtal2引腳產(chǎn)生幅度為3v左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要由石英晶振的頻率確定。電路中兩個(gè)電容 c1,c2的作用有兩個(gè):一是幫助振蕩器起振;二是對(duì)振蕩器的頻率進(jìn)行微調(diào)。振蕩頻率一般在2mhz 12mhz之間,單片機(jī)常選擇6mhz 或12mhz,外接晶振電容器c1與c2在30pf左右,對(duì)于陶瓷振蕩器c1、c2約為47pf左右。在本次設(shè)計(jì)我們選擇的是6mhz的石英晶振,電容c1、c2為30pf。3.5復(fù)位電

23、路的設(shè)計(jì)單片機(jī)的第9腳rst為硬件復(fù)位端,只要將該端持續(xù)4個(gè)機(jī)器周期的高電平即可實(shí)現(xiàn)復(fù)位,復(fù)位后單片機(jī)的各狀態(tài)都恢復(fù)到初始化狀態(tài)其電路圖如圖所示:圖中由按鍵reset1以及電解電容c3、電阻r2構(gòu)成按鍵及上復(fù)位電路。復(fù)位電路由于單片機(jī)是高電平復(fù)位,所以當(dāng)按鍵reset1按下時(shí)候,單片機(jī)的9腳reset管腳處于高電平,此時(shí)單片機(jī)處于復(fù)位狀態(tài)。當(dāng)上電后,由于電容的緩慢充電,單片機(jī)的9腳電壓逐步由高向低轉(zhuǎn)化,經(jīng)過一段時(shí)間后,單片機(jī)的9腳處于穩(wěn)定的低電平狀態(tài),此時(shí)單片機(jī)上電復(fù)位完畢,系統(tǒng)程序從0000h開始執(zhí)行。值得注意的是,在設(shè)計(jì)當(dāng)中使用到了硬件復(fù)位和軟件復(fù)位兩種功能,由上面的硬件復(fù)位后的各狀態(tài)可知

24、寄存器及存儲(chǔ)器的值都恢復(fù)到了初始值,而前面的功能介紹中提到了倒計(jì)時(shí)時(shí)間的記憶功能,該功能的實(shí)現(xiàn)的前提條件就是不能對(duì)單片機(jī)進(jìn)行硬件復(fù)位,所以設(shè)定了軟復(fù)位功能。軟復(fù)位實(shí)際上就是當(dāng)程序執(zhí)行完畢之后,將程序指針通過一條跳轉(zhuǎn)指令讓它跳轉(zhuǎn)到程序執(zhí)行的起始地址。3.6搶答器各單元功能的實(shí)現(xiàn)按鍵電路:8位按鍵電路供搶答者搶答使用;計(jì)時(shí)電路:led計(jì)時(shí),計(jì)時(shí)時(shí)間由軟件設(shè)定;鎖定功能:由軟件實(shí)現(xiàn),當(dāng)有人先搶答后,其余桌再按搶答按紐無效;聲響電路:直流蜂鳴器,用于提醒主持人有人搶答,或本輪計(jì)時(shí)時(shí)間到,仍無人搶答;位號(hào)顯示電路: led顯示電路,顯示搶答者桌號(hào);電源電路:采用220v市電輸入后經(jīng)變壓器降至所需的交流低

25、電壓,經(jīng)整流濾波后,再經(jīng)三端穩(wěn)壓電路,穩(wěn)定輸出直流+5v電壓,供整機(jī)各個(gè)單元使用。3.7鍵盤電路的設(shè)計(jì)鍵盤是人與單片機(jī)打交道的主要設(shè)備。關(guān)于鍵盤硬件電路的設(shè)計(jì)方法也可以在文獻(xiàn)和書籍中找到,配合各種不同的硬件電路,這些書籍中一般也提供了相應(yīng)的鍵盤掃描程序。站在系統(tǒng)監(jiān)控軟件設(shè)計(jì)的立場(chǎng)上來看,僅僅完成鍵盤掃描,讀取當(dāng)前時(shí)刻的鍵盤狀態(tài)是不夠的,還有不少問題需要妥善解決,否則,人們?cè)诓僮麈I盤就容易引起誤操作和操作失控現(xiàn)象。在單片機(jī)應(yīng)用中鍵盤用得最多的形式是獨(dú)立鍵盤及矩陣鍵盤。它們各有自己的特點(diǎn),其中獨(dú)立鍵盤硬件電路簡單,而且在程序設(shè)計(jì)上也不復(fù)雜,一般用在對(duì)硬件電路要求不高的簡單電路中;矩陣鍵盤與獨(dú)立鍵盤

26、有很大區(qū)別,首先在硬件電路上它要比獨(dú)立鍵盤復(fù)雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢(shì)得多,因此它更適合于多按鍵電路。其次就是消除在按鍵過程中產(chǎn)生的“毛刺” 現(xiàn)象。這里采用最常用的方法,即延時(shí)重復(fù)掃描法。在本設(shè)計(jì)中采用了獨(dú)立鍵盤的方式,本設(shè)計(jì)中有8個(gè)搶答按鍵輸入,一個(gè)開始按鍵、一個(gè)結(jié)束按鍵,此外還有搶答時(shí)間調(diào)整鍵、回答時(shí)間調(diào)整鍵,加一按鍵、減一按鍵各一個(gè)。如圖所示。搶答按鍵及調(diào)整按鍵在圖中8個(gè)搶答按鍵分別接入單片機(jī)的p1.0p1.7端口,單片機(jī)通過讀取p1.0p1.7的值來判斷當(dāng)前輸入的是8個(gè)搶答按鍵中的哪一個(gè)。搶答時(shí)間調(diào)整和回答時(shí)間調(diào)整接到單片機(jī)的p3.3和p3.4接口,

27、加一及減一按鍵接到單片機(jī)的p3.5和p3.6接口。開始、結(jié)束按鍵在圖中,開始及結(jié)束按鍵接到單片機(jī)的10、11腳,這里用到了單片機(jī)10、11腳復(fù)合功能中的io端口功能,單片機(jī)通過讀取10、11腳的p3.0、p3.1的io端口值來判斷當(dāng)前是否處于搶答開始狀態(tài)或搶答結(jié)束狀態(tài)。顯示電路的設(shè)計(jì)顯示功能與硬件關(guān)系極大,當(dāng)硬件固定后,如何在不引起操作者誤解的前提下提供盡可能豐富的信息,全靠軟件來解決。在這里我們使用的是七段數(shù)碼管顯示,通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動(dòng)態(tài)顯示。其中靜態(tài)顯示的特點(diǎn)是顯示穩(wěn)定不閃爍,程序編寫簡單,但占用端口資源多;動(dòng)態(tài)顯示的特點(diǎn)是顯示穩(wěn)定性沒靜態(tài)好,

28、程序編寫復(fù)雜,但是相對(duì)靜態(tài)顯示而言占用端口資源少。在本設(shè)計(jì)中根據(jù)實(shí)際情況采用的是動(dòng)態(tài)顯示方法。通過查表法,將其在數(shù)碼管上顯示出來,其中p0口為字型碼輸入端,p2口低3位為字選段輸入端。在這里我們通過查表將字型碼送給7段數(shù)碼管顯示的數(shù)字,數(shù)碼管顯示原理如下: mov a,r3 movc a,a+dptr mov p2,#0feh mov p0,a acall delay mov dptr,#dat2 mov a,r5 movc a,a+dptr mov p2,#0fdh mov p0,a acall delay mov a,r4 movc a,a+dptr mov p2,#0fbh mov p0

29、,a acall delay ret4位七段數(shù)碼管顯示電路如圖所示。共陰極數(shù)碼管圖中數(shù)碼管采用的是4位七段共陰數(shù)碼管,其中ah段分別接到單片機(jī)的p0口,由單片機(jī)輸出的p0口數(shù)據(jù)來決定段碼值,位選碼com1、com3、com4分別接到單片機(jī)的p2.0、p2.1、p2.2,由單片機(jī)來決定當(dāng)前該顯示的是哪一位。在圖中還有八個(gè)1k的電阻,連接在p0口上,用作p0口的上拉電阻,保證p0口沒有數(shù)據(jù)輸出時(shí)候處于高電平狀態(tài)。3.7.1 鎖定功能的設(shè)計(jì)當(dāng)有人按下?lián)尨鸢醇~后,其余桌再按搶答按紐無效。該功能用軟件實(shí)現(xiàn)。3.7.2 聲響電路當(dāng)有人按下?lián)尨鸢醇~后,接通直流蜂鳴器電路,提示主持人有人搶答電路參見下圖聲響顯

30、示電路3.8位號(hào)顯示即鎖存功能的設(shè)計(jì)當(dāng)有人搶答時(shí)顯示搶答桌號(hào),實(shí)現(xiàn)方法有兩種方法一: 單獨(dú)一位led方法二: 借用計(jì)時(shí)led本設(shè)計(jì)采用第一種方法。3.9系統(tǒng)復(fù)位使cpu進(jìn)入初始狀態(tài),從0000h地址開始執(zhí)行程序的過程叫系統(tǒng)復(fù)位。從實(shí)現(xiàn)系統(tǒng)復(fù)位的方法來看,系統(tǒng)復(fù)位可分為硬件復(fù)位和軟件復(fù)位。硬件復(fù)位必須通過cpu外部的硬件電路給cpu的reset端加上足夠時(shí)間的高電位才能實(shí)現(xiàn)。上電復(fù)位,人工按鈕復(fù)位和硬件看門狗復(fù)位均為硬件復(fù)位。硬件復(fù)位后,各專用寄存器的狀態(tài)均被初始化,且對(duì)片內(nèi)通用寄存器的內(nèi)容沒有影響。但是,硬件復(fù)位還能自動(dòng)清除中斷激活標(biāo)志,使中斷系統(tǒng)能夠正常工作,這樣一個(gè)事實(shí)卻容易為不少編碼人員

31、所忽視。軟件復(fù)位就是用一系列指令來模擬硬件復(fù)位功能,最后通過轉(zhuǎn)移指令使程序從0000h地址開始執(zhí)行。對(duì)各專用寄存器的復(fù)位操作是容易的,也沒有必要完全模擬,可根據(jù)實(shí)際需要去主程序初始化過程中完成。而對(duì)中斷激活標(biāo)志的清除工作常被遺忘,因?yàn)樗鼪]有明確的位地址可供編程。有的編程人員用020000(ljmp 0000h)作為軟件陷阱,認(rèn)為直接轉(zhuǎn)向0000h地址就完成了軟件復(fù)位,就是這類錯(cuò)誤的典型代表。軟件復(fù)位是使用軟件陷阱和軟件看門狗后必須進(jìn)行的工作,這時(shí)程序出錯(cuò)完全有可能發(fā)生在中斷子程序中,中斷激活標(biāo)志已置位,它將阻止同級(jí)中斷響應(yīng)。由于軟件看門是高級(jí)中斷,它將阻止說要中斷響應(yīng),由此可見清除中斷激活標(biāo)志

32、的重要性。在所有的指令中,只有reti指令能夠清除中斷激活標(biāo)志。出錯(cuò)處理程序err主要完成這一功能,其他的善后工作交由復(fù)位后的系統(tǒng)去完成。程序一般先關(guān)中斷,以便后續(xù)處理能順利進(jìn)行,然后用兩個(gè)reti指令代替兩個(gè)ljmp指令,從而清除了兩級(jí)中斷激活標(biāo)志。有相應(yīng)軟件陷阱捕捉來的程序可能沒有全部激活兩個(gè)標(biāo)志,這也無妨。有復(fù)位時(shí)系統(tǒng)的歷史狀況,可將復(fù)位分為“冷啟動(dòng)”和“熱啟動(dòng)”。 “冷啟動(dòng)”時(shí),系統(tǒng)的狀態(tài)全部無效,進(jìn)行徹底的初始化操作;而“熱啟動(dòng)”時(shí),對(duì)系統(tǒng)的當(dāng)前狀態(tài)進(jìn)行修復(fù)和有選擇的初始化。系統(tǒng)初次上電投入運(yùn)行時(shí),必須是“冷啟動(dòng)”,以后由抗干擾措施引起的復(fù)位操作一般均為“熱啟動(dòng)”初次上電投入運(yùn)行時(shí),

33、必須是“冷啟動(dòng)”,以后由抗干擾措施引起的復(fù)位操作一般均為“熱啟動(dòng)”。為了使系統(tǒng)能正確決定采用何種啟動(dòng)方式,常用上電標(biāo)志來區(qū)分,如圖所示。復(fù)位關(guān)中斷,設(shè)定堆棧上電標(biāo)志冷啟自檢全面初始化熱啟動(dòng)恢復(fù)被破壞的信息部分初始化建立上電標(biāo)志開始運(yùn)轉(zhuǎn)系統(tǒng)復(fù)位策略圖第四章 軟件系統(tǒng)設(shè)計(jì)及仿真4.1軟件系統(tǒng)設(shè)計(jì)軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來了9。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個(gè)總體規(guī)劃。從軟件的功能來看可分為兩大類:一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測(cè)量,計(jì)算,顯示,打印,輸出控制和通信等,另一類是監(jiān)控軟件,它是

34、專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。這兩類軟件的設(shè)計(jì)方法各有特色,執(zhí)行軟件的設(shè)計(jì)偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時(shí),應(yīng)將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義(輸入輸出定義)。在各執(zhí)行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤設(shè)置選擇一種最適合的監(jiān)控程序結(jié)構(gòu)。相對(duì)來講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個(gè)廠長就比較難了。軟件任務(wù)分析的另一個(gè)內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。

35、整個(gè)系統(tǒng)軟件可分為后臺(tái)程序(背景程序)和前臺(tái)程序。后臺(tái)程序指主程序及其調(diào)用的子程序,這類程序?qū)?shí)時(shí)性要求不是太高,延誤幾十ms甚至幾百ms也沒關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺(tái)程序中執(zhí)行;而前臺(tái)程序安排一些實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺(tái),后臺(tái)程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。中斷技術(shù)是單片機(jī)工作中的一項(xiàng)重要技術(shù),采用中斷技術(shù)可使單片機(jī)的工作更加靈活,效率更高。智力搶答器設(shè)計(jì)中用到的就是中斷技術(shù),它是在有人在開始按鍵的時(shí)候開始。中斷的定義:單片機(jī)在執(zhí)行程序的過程中,由

36、于cpu以外的原因,必須盡快終止當(dāng)前的程序執(zhí)行,而去執(zhí)行相應(yīng)的處理程序,待處理結(jié)束后,再回來繼續(xù)執(zhí)行被終止的程序。這種程序在執(zhí)行過程中由于外界的原因而被中間大段的情況稱為中斷。引進(jìn)中斷的特點(diǎn):分時(shí)操作、實(shí)現(xiàn)實(shí)時(shí)處理、故障處理。中斷系統(tǒng)的功能:實(shí)現(xiàn)中斷及返回,實(shí)現(xiàn)優(yōu)先權(quán)排隊(duì),實(shí)現(xiàn)中斷的嵌套。在80c51中斷入口地址分配如下:中斷源 入口地址外部中斷0 0003h定時(shí)器t0中斷 000bh外部中斷1 0013h定時(shí)器t1中斷 001bh串行口中斷 0023h本設(shè)計(jì)應(yīng)用到的中斷入口地址是0003h。4.2軟件設(shè)計(jì)流程圖圖4-1圖4-24.2 電路仿真利用軟件編寫源程序,畫好其總電路圖如下圖4.1所示

37、: 圖4-1 八路搶答器總電路圖4.3 軟件設(shè)計(jì)程序智力競賽搶答裝置程序 org 0000hajmp l0org 0003hajmp zdl0: setb easetb ex0mov dptr,#tab1mov r0,#00hl1: mov a,r0 movc a,a+dptr mov p0,alcall dy1sinc r0cjne r0,#0bh,l1clr p3.0 ljmp $dy1s: mov r7,#50dy1: mov r6,#20dy2: mov r5,#249dy3: nop nop djnz r5,dy3 djnz r6,dy2 djnz r7,dy1 ret zd: cl

38、r p3.0clr eaclr ex0 mov a,p1cpl amov dptr,#tab2movc a,a+dptrmov p2,a ljmp $retitab1: db 10h,00h,78h,02h,12h db 19h,30h,24h,79h,40h org 0100htab2: db 0ffh,79h,24h,0ffh,30h db 0ffh,0ffh,0ffh,19h org 0110h db 12h org 0120h db 02h org 0140h db 78h org 0180h db 00h end第五章 電路調(diào)試5.1總結(jié)調(diào)試的原則和方法(1)通電觀察把經(jīng)過準(zhǔn)確測(cè)量的

39、電源接入電路。觀察有無異?,F(xiàn)象,包括有無元件發(fā)熱,甚至冒煙有異味電源是否有短路現(xiàn)象等;如有此現(xiàn)象,應(yīng)立即斷電源,待排除故障后才能通電。(2)靜態(tài)調(diào)試交流和直流并存是電子電路工作的一個(gè)重要組成部分。一般情況下,直流為交流服務(wù),直流是電路工作的基礎(chǔ)。因此,電子電路的調(diào)試有靜態(tài)和動(dòng)態(tài)調(diào)試之分。靜態(tài)調(diào)試過程:如,通過靜態(tài)測(cè)試模擬電路的靜態(tài)工作點(diǎn),數(shù)字電路和各輸入端和輸出端的高低電平值及邏輯關(guān)系等,可以及時(shí)發(fā)現(xiàn)已損壞的元器件,判斷電路工作情況,并及時(shí)調(diào)整電路參數(shù),使電路工作狀態(tài)符合設(shè)計(jì)要求。(3)動(dòng)態(tài)調(diào)試調(diào)試的方法是在電路的輸入端接入適當(dāng)頻率和幅值的信號(hào),并循著信號(hào)流向來檢測(cè)各有關(guān)點(diǎn)的波形,參數(shù)和性能指

40、標(biāo)。發(fā)現(xiàn)故障應(yīng)采取各種方法來排除。通過調(diào)試,最后檢查功能塊和整機(jī)的各種指標(biāo)是否滿足設(shè)計(jì)要求,如必要再進(jìn)一步對(duì)電路參數(shù)提出合理的修正。5.2.調(diào)試中注意的事項(xiàng)我們?cè)谡{(diào)試時(shí),為了保證效果,必須盡量減小測(cè)量誤差,提高測(cè)量精度。調(diào)試結(jié)果是否正確,很大程度受測(cè)量正確與否和測(cè)量精度的影響。為此,需注意以下幾點(diǎn):(1)正確使用測(cè)量儀器的接地端。(2)測(cè)量電壓所用儀器的輸入端阻抗必須遠(yuǎn)大于被測(cè)處的等效阻抗。因?yàn)椋?若測(cè)量儀器輸入阻抗小,則在測(cè)量時(shí)會(huì)引起分流給測(cè)量結(jié)果帶來很大誤差。(3)要正確選擇測(cè)量點(diǎn),用同一臺(tái)測(cè)量儀進(jìn)行測(cè)量進(jìn),測(cè)量點(diǎn)不同,儀器內(nèi)阻引起的誤差大小將不同。(4)調(diào)試過程中,不但要認(rèn)真觀察和測(cè)量,還要于記錄。記錄的內(nèi)容包括實(shí)驗(yàn)條件,觀察的現(xiàn)象。只有有了大量的可靠實(shí)驗(yàn)記錄并與理論結(jié)果加以比較,才能發(fā)現(xiàn)電路設(shè)計(jì)上的問題,完善設(shè)計(jì)方案。(5)調(diào)試時(shí)出現(xiàn)故障,要認(rèn)真查找故障原

溫馨提示

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

評(píng)論

0/150

提交評(píng)論