版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 蚅羂膄薈螇膇肀薇衿羀葿薆蠆螃蒞薅螁肈芁薅襖袁膇薄薃肇肅薃蚆袀莁螞螈肅芇蟻袀袈膃蝕薀肅聿蝕螂袆?shì)芟娨\膂莄蚈羇羄芀蚇蚆膀膆芃蝿羃肂莃袁膈莁莂薁羈芇莁蚃膇膃莀裊罿腿荿羈袂蕆莈蚇肈莃莇螀袀艿莇袂肆膅蒆薂衿肁蒅蚄肄莀蒄螆袇莆蒃羈肅節(jié)蒂蚈羅膈蒁螀膁肄蒁袃羄莂蒀薂腿羋蕿蚅羂膄薈螇膇肀薇衿羀葿薆蠆螃蒞薅螁肈芁薅襖袁膇薄薃肇肅薃蚆袀莁螞螈肅芇蟻袀袈膃蝕薀肅聿蝕螂袆?shì)芟娨\膂莄蚈羇羄芀蚇蚆膀膆芃蝿羃肂莃袁膈莁莂薁羈芇莁蚃膇膃莀裊罿腿荿羈
2、袂蕆莈蚇肈莃莇螀袀艿莇袂肆膅蒆薂衿肁蒅蚄肄莀蒄螆袇莆蒃羈肅節(jié)蒂蚈羅膈蒁螀膁肄蒁袃羄莂蒀薂腿羋蕿蚅羂膄薈螇膇肀薇衿羀葿薆蠆螃蒞薅螁肈芁薅襖袁膇薄薃肇肅薃蚆袀莁螞螈肅芇蟻袀袈膃蝕薀肅聿蝕螂袆?shì)芟娨\膂莄蚈羇羄芀蚇蚆膀膆芃蝿羃肂莃袁膈莁莂薁羈芇莁蚃膇膃莀裊罿腿荿羈袂蕆莈蚇肈莃莇螀袀艿莇袂肆膅蒆薂衿肁蒅蚄肄莀蒄螆袇莆蒃羈肅節(jié)蒂蚈羅膈蒁螀膁肄蒁袃羄莂蒀薂腿羋蕿蚅羂膄薈螇膇肀薇衿羀葿薆蠆螃蒞薅螁肈芁薅襖袁膇薄薃肇肅薃蚆袀莁螞螈肅芇蟻袀袈膃蝕薀肅聿蝕螂
3、袆?shì)芟娨\膂莄蚈羇羄芀蚇蚆膀膆芃蝿羃肂莃袁膈莁莂薁羈芇莁蚃膇膃莀裊罿腿荿羈袂蕆莈蚇肈莃莇螀袀艿莇袂肆膅蒆薂衿肁蒅蚄肄莀蒄螆袇莆蒃羈肅節(jié)蒂蚈羅膈蒁</p><p> 2011屆畢業(yè)設(shè)計(jì)任務(wù)書</p><p><b> 摘 要</b></p><p><b> 【內(nèi)容摘要】</b></p><p>
4、; 本論文主要介紹用AT89C51單片機(jī)設(shè)計(jì)的數(shù)碼顯示八路搶答器的功能、電路組成、設(shè)計(jì)思路及制作。該搶答器除具有基本的搶答功能外,還具有定時(shí)、計(jì)時(shí)和報(bào)警功能。用C語言作為編程語言進(jìn)行程序編寫,將軟件系統(tǒng)和AT89C51單片機(jī)有機(jī)結(jié)合起來,使系統(tǒng)能夠正確的進(jìn)行倒記時(shí),同時(shí)使數(shù)碼管能夠正確的顯示選手編號(hào)和倒記時(shí)時(shí)間,有效的實(shí)現(xiàn)搶答功能。</p><p> 本論文中我們采用了數(shù)字顯示器直接指示,自動(dòng)鎖存顯示結(jié)果,并
5、自動(dòng)復(fù)位的設(shè)計(jì),它能根據(jù)不同的搶答輸入信號(hào),經(jīng)過單片機(jī)的控制處理并產(chǎn)生不同的與輸入信號(hào)相對(duì)應(yīng)的輸出信號(hào),最后通過LED數(shù)碼管顯示相應(yīng)的路數(shù),即使兩組的搶答時(shí)間相差幾微秒,也可以分辨出是哪組優(yōu)先按下的按鍵,它充分利用了單片機(jī)系統(tǒng)的優(yōu)點(diǎn),具有結(jié)構(gòu)簡單、功能強(qiáng)大、可靠性好、實(shí)用性強(qiáng)的特點(diǎn)。</p><p> 基于以上這些工作,所以把本論文總體上分成了五大章:第一章主要介紹單片機(jī)搶答器的背景與本人完成的工作;第二章主要
6、介紹單片機(jī);第三章主要介紹搶答器的硬件電路設(shè)計(jì);第四章主要介紹搶答器軟件系統(tǒng)的設(shè)計(jì);第五章主要介紹搶答器的制作與調(diào)試仿真;最后一部分為總結(jié)與體會(huì)、參考文獻(xiàn)以及附錄。</p><p><b> 【關(guān)鍵詞】</b></p><p> 八路搶答器 C語言 單片機(jī) AT89C51</p><p><b> 目 錄</b&g
7、t;</p><p> 第一章 概述------------------------------------------------------------------------- 1 -</p><p> 1.1 單片機(jī)搶答器的背景----------------------------------------------------------- 1 -</p>&
8、lt;p> 1.2 單片機(jī)搶答器的應(yīng)用----------------------------------------------------------- 1 -</p><p> 1.3 本人完成的工作--------------------------------------------------------------- 1 -</p><p> 第二章 單片機(jī)簡介-
9、------------------------------------------------------------------ 3 -</p><p> 2.1 單片機(jī)介紹------------------------------------------------------------------- 3 -</p><p> 2.2 單片機(jī)的選擇--------------
10、--------------------------------------------------- 3 -</p><p> 2.3 AT89C51單片機(jī)的引腳與功能特性------------------------------------------------ 4 -</p><p> 第三章 系統(tǒng)硬件設(shè)計(jì)-----------------------------------
11、------------------------------ 7 -</p><p> 3.1 電路器件的選擇--------------------------------------------------------------- 7 -</p><p> 3.2 總電路圖------------------------------------------------------
12、--------------- 7 -</p><p> 3.3 外部振蕩電路設(shè)計(jì)------------------------------------------------------------- 8 -</p><p> 3.4 復(fù)位電路設(shè)計(jì)----------------------------------------------------------------- 9
13、-</p><p> 3.5 顯示電路設(shè)計(jì)----------------------------------------------------------------- 9 -</p><p> 3.6 按鍵輸入電路設(shè)計(jì)------------------------------------------------------------ 10 -</p><p
14、> 3.7 報(bào)警電路設(shè)計(jì)---------------------------------------------------------------- 11 -</p><p> 第四章 系統(tǒng)軟件設(shè)計(jì)---------------------------------------------------------------- 12 -</p><p> 4.1 軟件系統(tǒng)結(jié)構(gòu)
15、圖-------------------------------------------------------------- 12 -</p><p> 4.2 搶答器工作流程圖------------------------------------------------------------ 12 -</p><p> 4.3 按鍵處理---------------------
16、----------------------------------------------- 13 -</p><p> 第五章 搶答器制作與系統(tǒng)調(diào)試仿真----------------------------------------------------- 18 -</p><p> 5.1 搶答器的制作--------------------------------------
17、-------------------------- 18 -</p><p> 5.1.1 焊接-------------------------------------------------------------------- 18 -</p><p> 5.1.2 元器件清單---------------------------------------------------
18、----------- 19 -</p><p> 5.2 系統(tǒng)調(diào)試-------------------------------------------------------------------- 19 -</p><p> 5.3 軟件仿真--------------------------------------------------------------------
19、20 -</p><p> 5.3.1 Keil軟件編譯------------------------------------------------------------ 20 -</p><p> 5.3.2 Proteus軟件仿真--------------------------------------------------------- 21 -</p>
20、<p> 總結(jié)與體會(huì)------------------------------------------------------------------------- 24 -</p><p> 致謝------------------------------------------------------------------------------- 25 -</p><p
21、> 參考文獻(xiàn)--------------------------------------------------------------------------- 26 -</p><p><b> 第一章 概述</b></p><p> 1.1 單片機(jī)搶答器的背景</p><p> 隨著我國經(jīng)濟(jì)和文化事業(yè)的發(fā)展,在很多公開競(jìng)爭場(chǎng)
22、合要求有公正的競(jìng)爭裁決,諸如證券、股票交易及各種智力競(jìng)賽等,因此出現(xiàn)了搶答器。搶答器一般是由很多電路組成的,線路復(fù)雜,可靠性不高,功能也比較簡單,特別是當(dāng)搶答路數(shù)很多時(shí),實(shí)現(xiàn)起來就更為困難。因此我們?cè)O(shè)計(jì)了以單片機(jī)為核心的新型智能的搶答器,在保留原始搶答器的基本功能的同時(shí)又增加了數(shù)碼管顯示,電路實(shí)現(xiàn)了其它功能。搶答器又稱為第一信號(hào)鑒別器,其主要應(yīng)用于各種知識(shí)競(jìng)賽、文藝活動(dòng)等場(chǎng)合。</p><p> 本系統(tǒng)采用AT
23、89C51單片機(jī)作為整個(gè)控制核心??刂葡到y(tǒng)的四個(gè)模塊為:顯示模塊、按鍵控制模塊、計(jì)時(shí)模塊、搶答開關(guān)模塊。該系統(tǒng)通過開關(guān)電路八個(gè)按鍵輸入搶答信號(hào),利用一個(gè)數(shù)碼管來完成顯示功能,用按鍵來讓選手進(jìn)行搶答,在數(shù)碼管上顯示哪一組先答題的,從而實(shí)現(xiàn)整個(gè)搶答過程。本文主要介紹了單片機(jī)搶答器設(shè)計(jì)及工作原理,以及它的實(shí)際用途。通過這次設(shè)計(jì),掌握51單片機(jī)的原理,了解簡單多功能搶答器組成原理,初步掌握多功能搶答器的調(diào)整及測(cè)試方法,提高動(dòng)手能力和排除故障的能
24、力。同時(shí)通過本論文設(shè)計(jì)與裝配、調(diào)試,提高自己的動(dòng)手能力,鞏固已學(xué)的理論知識(shí),建立單片機(jī)理論和實(shí)踐的結(jié)合;了解多功能搶答器各單元電路之間的關(guān)系及相互影響,從而能正確設(shè)計(jì)、計(jì)算定時(shí)計(jì)數(shù)的各個(gè)單元電路。初步掌握多功能搶答器的調(diào)整及測(cè)試方法,提高動(dòng)手能力和排除故障的能力。</p><p> 1.2 單片機(jī)搶答器的應(yīng)用</p><p> 隨著技術(shù)的進(jìn)步,單片機(jī)與串口通信的結(jié)合更多地應(yīng)用到各個(gè)電子
25、系統(tǒng)中已成一種趨勢(shì)。本論文就是基于單片機(jī)的八路搶答器,通過串口通信動(dòng)態(tài)傳輸數(shù)據(jù),使搶答系統(tǒng)有了更多更完善的功能。單片機(jī)系統(tǒng)的硬件結(jié)構(gòu)給予了搶答系統(tǒng)“身軀”,而單片機(jī)的應(yīng)用程序賦予了其新的“生命”,使其在傳統(tǒng)的搶答器面前具有電路簡單、成本低、運(yùn)行可靠等特色。對(duì)于搶答器我們大家都知道那是用于選手做搶答題時(shí)用的,選手進(jìn)行搶答,搶到題的選手來回答問題。搶答器不僅考驗(yàn)選手的反應(yīng)速度同時(shí)也要求選手具備足夠的知識(shí)面和一定的勇氣。選手們都站在同一個(gè)起跑
26、線上,體現(xiàn)了公平公正的原則。</p><p> 1.3 本人完成的工作</p><p> 本人在畢業(yè)設(shè)計(jì)過程中協(xié)同本小組成員共同完成了作品的設(shè)計(jì)、軟件系統(tǒng)的編程、產(chǎn)品的制作與焊接、成品的調(diào)試與運(yùn)行等工作。本人主要完成的工作如下:</p><p> 一、查找資料,資料來源于圖書館的書籍和網(wǎng)絡(luò)上并將這些資料整理總結(jié)。</p><p> 1
27、、學(xué)習(xí)單片機(jī),并用到AT89C51單片機(jī)為本設(shè)計(jì)課題的芯片。</p><p> 2、了解本次設(shè)計(jì)的八路搶答器及各電路的結(jié)構(gòu)和功能。</p><p> 二、了解了八路搶答器的資料后,并在指導(dǎo)老師王老師的幫助下畫出了搶答器的Proteus仿真電路圖,并用C語言編寫程序代碼,通過Keil軟件編譯實(shí)現(xiàn)仿真。</p><p> 三、元器件的選擇,然后購買元器件和焊接工具
28、,與本小組成員共同制作出八路搶答器實(shí)物。</p><p> 四、在將實(shí)物電路做出來后,進(jìn)行了對(duì)前面幾周資料的整理和工作的總結(jié),接下來書寫論文;我在論文中較詳細(xì)的分析了八路搶答器的硬件電路,其中包括外部震蕩電路、復(fù)位電路、顯示電路、按鍵輸入電路和報(bào)警電路;在軟件設(shè)計(jì)方面繪制了搶答器的工作流程圖及中斷處理流程圖,直觀的反映搶答器的工作流程;在調(diào)試方面用到Keil編譯軟件和Proteus仿真軟件進(jìn)行軟件調(diào)試。<
29、/p><p><b> 第二章 單片機(jī)簡介</b></p><p><b> 2.1 單片機(jī)介紹</b></p><p> 單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件:CPU、內(nèi)存、內(nèi)部和外部總線系統(tǒng),目前大部分還會(huì)具有外存。同時(shí)集成諸
30、如通訊接口、定時(shí)器、時(shí)鐘等外圍設(shè)備。而現(xiàn)在最強(qiáng)大的單片機(jī)系統(tǒng)甚至可以將聲音、圖像、網(wǎng)絡(luò)、復(fù)雜的輸入輸出系統(tǒng)集成在一塊芯片上。</p><p> 單片機(jī)也被稱為微控制器(Microcontroler),是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)提及要求嚴(yán)格的控制設(shè)備當(dāng)中。INTE
31、L的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。</p><p> 早期的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹唵慰煽慷阅懿诲e(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后
32、隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大的提高。隨著INTEL i960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位,并且進(jìn)入主流市場(chǎng)。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超過300MHz,性能直追90年代中期的專用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,最高端的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和
33、使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的Windows和Linux操作系統(tǒng)。</p><p> 2.2 單片機(jī)的選擇</p><p> 單片機(jī)由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器、存儲(chǔ)器和I/O接口電路等。因此單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制
34、系統(tǒng)。下面我介紹幾種市面上比較常見的單片機(jī)。</p><p><b> 一、STC單片機(jī):</b></p><p> STC公司的單片機(jī)主要是基于8051內(nèi)核,是新一代增強(qiáng)型單片機(jī):指令代碼完全兼容傳統(tǒng)8051、速度快8~12倍、帶ADC4路PWM、雙串口、有全球唯一ID號(hào)、加密性好和抗干擾強(qiáng)。</p><p><b> 二、P
35、IC單片機(jī):</b></p><p> 是MICROCHIP公司的產(chǎn)品,其突出的特點(diǎn)是體積小、功耗低、精簡指令集、抗干擾性好、可靠性高、有較強(qiáng)的模擬接口和代碼保密性好。</p><p> 三、ATMEL單片機(jī)(51單片機(jī)):</p><p> ATMEl公司的8位單片機(jī)有AT89、AT90兩個(gè)系列,AT89系列是8位Flash單片機(jī)、與8051系列
36、單片機(jī)相兼容、靜態(tài)時(shí)鐘模式;AT90系列單片機(jī)是增強(qiáng)RISC結(jié)構(gòu)、全靜態(tài)工作方式、內(nèi)載在線可編程Flash的單片機(jī),也叫AVR單片機(jī)。</p><p> 四、松翰單片機(jī)(SONIX): </p><p> 是臺(tái)灣松翰公司的單片機(jī),大多為8位機(jī),有一部分與PIC 8位單片機(jī)兼容、價(jià)格便宜、系統(tǒng)時(shí)鐘分頻可選項(xiàng)較多、有PMW ADC 內(nèi)振 內(nèi)部雜訊濾波。缺點(diǎn)RAM空間過小、抗干擾較差。<
37、;/p><p> 在本次設(shè)計(jì)中我們用到的是ATMEl公司的AT89C51單片機(jī),它具有與MCS-51兼容、可編程閃爍存儲(chǔ)器和串行通道、數(shù)據(jù)保留時(shí)間可達(dá)10年及低功耗的閑置和掉電模式等特點(diǎn)。</p><p> 2.3 AT89C51單片機(jī)的引腳與功能特性</p><p> AT89C51單片機(jī)采用40個(gè)引腳的雙列直插封裝方式,其中包括2個(gè)電源引腳、2個(gè)時(shí)鐘引腳、4個(gè)
38、控制引腳和32個(gè)I/O接口,引腳如圖2-1所示:</p><p> 圖2-1 AT89C51單片機(jī)引腳圖</p><p> 單片機(jī)是一種集成了CPU、RAM、ROM、定時(shí)/計(jì)數(shù)器和多功能I/O口等基本功能部件的微型計(jì)算機(jī)。它必須配備部分外圍元件才能使用,其系統(tǒng)核心是單片機(jī)芯片。芯片引腳按功能分為3類,即數(shù)據(jù)總線、地址總線和控制總線。下面我簡單的介紹AT89C51單片機(jī)40個(gè)引腳的基本
39、功能特性,如表2-1所示:</p><p> 表2-1 AT89C51單片機(jī)引腳名稱與功能特性表</p><p> ATMEL公司的AT89C51是一種高效微控制器,是高性能單片機(jī)。因?yàn)槭芤_數(shù)目的限制,所以有不少引腳具有第二功能,下表介紹P3口引腳的第二功能,如表2-2所示:</p><p> 表2-2 P3口各位的第二功能</p><
40、;p> 當(dāng)P3口作第二功能使用時(shí),每一位功能定義如表2-2所示。P3口的第二功能實(shí)際上就是系統(tǒng)具有控制功能的控制線。此時(shí)相應(yīng)的口線鎖存器必須為“1”狀態(tài),與非門的輸出由第二功能輸出線的狀態(tài)確定,從而P3口線的狀態(tài)取決于第二功能輸出線的電平。在P3口的引腳信號(hào)輸入通道中有兩個(gè)三態(tài)緩沖器,第二功能的輸入信號(hào)取自第一個(gè)緩沖器的輸出端,第二個(gè)緩沖器仍是第一功能的讀引腳信號(hào)緩沖器。P3口可驅(qū)動(dòng)4個(gè)LSTTL門電路。</p>
41、<p> 第三章 系統(tǒng)硬件設(shè)計(jì)</p><p> 3.1 電路器件的選擇</p><p> AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATME
42、L高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,是一種高效微控制器。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。根據(jù)初步對(duì)本設(shè)計(jì)要求的分析,設(shè)計(jì)這樣一個(gè)簡單的應(yīng)用系統(tǒng),以AT89C51單片機(jī)為控制核心,采用模塊化的設(shè)計(jì)方案,可以實(shí)現(xiàn)8位數(shù)字搶答器的各項(xiàng)基本功能,例如定時(shí)搶答、顯示搶答選手號(hào)碼,主持人控制等等。</p&g
43、t;<p> 就搶答器而言,通常可采用液晶顯示或數(shù)碼管顯示。由于一般的段式液晶屏,需要專門的驅(qū)動(dòng)電路,而且液晶顯示作為一種被動(dòng)顯示,可視性相對(duì)較差;對(duì)于具有驅(qū)動(dòng)電路和微處理器接口的液晶顯示模塊(字符或點(diǎn)陣),一般多采用并行接口,對(duì)微處理器的接口要求較高,占用資源多。因此,本設(shè)計(jì)采用數(shù)碼管顯示方式。數(shù)碼管作為一種主動(dòng)顯示器件,具有亮度高、價(jià)格便宜等優(yōu)點(diǎn),而且市場(chǎng)上也有專門的時(shí)鐘顯示組合數(shù)碼管。本次的設(shè)計(jì)我采用的是共陰四位一
44、體數(shù)碼管。此外還有按鈕、揚(yáng)聲器、電容、電阻、導(dǎo)線等等。</p><p><b> 3.2 總電路圖</b></p><p> 我們采用模塊化的硬件電路設(shè)計(jì),其中包括有:主控制器模塊、采用AT89S51單片機(jī)控制、搶答器顯示模塊、選用數(shù)碼管顯示。本設(shè)計(jì)的電源方案的選擇是采用5V電源供電,本設(shè)計(jì)的搶答器鍵盤模塊也是通過選用獨(dú)立式鍵來實(shí)現(xiàn)的。它由主體電路和擴(kuò)展電路兩部分
45、組成。主體電路完成基本的搶答功能,即開始搶答后,當(dāng)選手按動(dòng)搶答鍵時(shí),能顯示選手的編號(hào),同時(shí)能封鎖輸入電路,禁止其他選手搶答。擴(kuò)展電路完成檢測(cè)數(shù)碼管工作情況,其工作原理為:接通電源后,主持人按下開始鍵,宣布搶答器開始工作。選手在規(guī)定時(shí)間內(nèi)搶答時(shí),搶答器完成:優(yōu)先判斷、編號(hào)鎖存、編號(hào)顯示。當(dāng)一輪搶答之后,主持人按下復(fù)位鍵,選手們等待主持人按下開始鍵進(jìn)行下一輪的搶答。總電路圖如圖3-1所示:</p><p> 圖3-
46、1 總體電路圖</p><p> 3.3 外部振蕩電路設(shè)計(jì)</p><p> 單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作。在單片機(jī)內(nèi)部有一個(gè)時(shí)鐘振蕩電路,只需要外接一個(gè)振蕩源就能產(chǎn)生一定的時(shí)鐘信號(hào)送到單片機(jī)內(nèi)部的各個(gè)單元,決定單片機(jī)的工作速度。外部振蕩電路如圖3-2所示:</p><p> 圖3-2 外部振蕩電路圖</p><p> 我們選用石
47、英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在XTAL2引腳產(chǎn)生幅度為3V左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要由石英晶振的頻率確定。電路中兩個(gè)電容 C1,C2的作用有兩個(gè):一是幫助振蕩器起振;二是對(duì)振蕩器的頻率進(jìn)行微調(diào)。C1,C2的典型值為30PF。</p><p> 單片機(jī)在工作時(shí),由內(nèi)部振蕩器產(chǎn)生或由外直接輸入的送至內(nèi)部控制邏輯單元的時(shí)鐘信號(hào)的周期稱為時(shí)鐘周期。其大小是時(shí)鐘信號(hào)頻率的倒數(shù),常用f
48、osc表示。圖中時(shí)鐘頻率為12MHz,即fosc=12MHz,則時(shí)鐘周期為1/12µs。</p><p> 3.4 復(fù)位電路設(shè)計(jì)</p><p> 計(jì)算機(jī)在啟動(dòng)運(yùn)行時(shí)都需要復(fù)位,使中央處理器CPU和系統(tǒng)中的其它部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。AT89C51單片機(jī)的復(fù)位輸入引腳RST為單片機(jī)提供了初始化的手段,可以使程序從指定處開始執(zhí)行。在AT89C51的時(shí)
49、鐘電路工作后,只要RST引腳上出現(xiàn)超過兩個(gè)機(jī)器周期以上的高電平時(shí),即可產(chǎn)生復(fù)位的操作。只要RST保持高電平,則AT89C51循環(huán)復(fù)位。只有當(dāng)RST由高電平變低電平以后,單片機(jī)才從0000H地址開始執(zhí)行程序。本論文采用的是硬件復(fù)位,其電路圖如圖3-3所示:</p><p><b> 圖3-3 復(fù)位電路</b></p><p> 在圖3-3中由電解電容C3、電阻R1構(gòu)
50、成復(fù)位電路,rst端接在單片機(jī)第9腳。由于單片機(jī)是高電平復(fù)位,按鍵Rest接在單片機(jī)P3.7口,低電平觸發(fā)有效,所以當(dāng)按鍵Rest按下時(shí)候,單片機(jī)的9腳RST管腳處于高電平,此時(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í)行。</p><p> 3.5 顯示電路設(shè)計(jì)<
51、/p><p> 顯示模塊主要是顯示搶答的時(shí)間,組別號(hào)碼等。在使用傳統(tǒng)的數(shù)碼管顯示具有:低能耗、低損耗、低壓、壽命長、耐老化、防曬、防潮、防火、防高(低)溫、對(duì)外界環(huán)境要求低、易于維護(hù),同時(shí)其精度高、稱量快、精確可靠和操作簡單的特性。數(shù)碼顯示是采用BCD編碼顯示數(shù)字,程序編譯容易,資源占用較少。</p><p> 顯示功能與硬件關(guān)系極大。當(dāng)硬件固定后,如何在不引起操作者誤解的前提下提供盡可能
52、的豐富信息,全靠軟件來解決。在這里我們使用的是4位七段共陰極數(shù)碼管顯示,通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動(dòng)態(tài)顯示。其中靜態(tài)顯示的特點(diǎn)是:顯示穩(wěn)定不閃爍、程序編寫簡單、但占用端口資源多;動(dòng)態(tài)顯示的特點(diǎn)是:顯示穩(wěn)定性沒靜態(tài)好、程序編寫復(fù)雜、但是相對(duì)靜態(tài)顯示而言占用端口資源少。在本設(shè)計(jì)中根據(jù)實(shí)際情況采用的是動(dòng)態(tài)顯示方法。顯示電路如圖3-4所示:</p><p> 圖3-4 顯示電路圖&
53、lt;/p><p> 本設(shè)計(jì)采用上圖中的4位七段共陰數(shù)碼管,并且高電平有效,其中A~H段分別接到單片機(jī)的P0口,由單片機(jī)輸出的P0口數(shù)據(jù)來決定段碼值,位選碼COM1, COM2,COM3,COM4分別接到單片機(jī)的P2.0,P2.1,P2.2 ,P2.3,由單片機(jī)來決定當(dāng)前該顯示的是哪一位。在圖中還有一個(gè)鎖存器,連接在P0口上,起到鎖存選手號(hào)碼的作用。通過查表法,將其在數(shù)碼管上顯示出來,其中P0口為字型碼輸入端,P2
54、口低4位為字選段輸入段。在這里我們通過查表將字型碼送給7段數(shù)碼管顯示的數(shù)字。</p><p> 3.6 按鍵輸入電路設(shè)計(jì)</p><p> 鍵盤是單片機(jī)不可缺少的輸入設(shè)備,是實(shí)現(xiàn)人機(jī)對(duì)話的紐帶。翻閱相關(guān)書籍我們能夠了解到很多按鍵電路的設(shè)計(jì),在此次設(shè)計(jì)中我用到了獨(dú)立式鍵盤,因?yàn)楠?dú)立式鍵盤的結(jié)構(gòu)簡單,在程序設(shè)計(jì)上也不太復(fù)雜,只要在程序中消除在按鍵過程中產(chǎn)生的“毛刺”現(xiàn)象就可以了。這里采用最
55、常用的方法即延時(shí)法,其的原理為:因?yàn)椤懊獭泵}沖一般持續(xù)時(shí)間短,約為幾ms,而按鍵的時(shí)間一般遠(yuǎn)遠(yuǎn)大于這個(gè)時(shí)間,所以當(dāng)單片機(jī)檢測(cè)到有按鍵動(dòng)靜后再延時(shí)一段時(shí)間(這里取10ms)后再判斷此電平是否保持原狀態(tài);如果是則為有效按鍵,否則無效。本設(shè)計(jì)中有8個(gè)搶答按鍵輸入、一個(gè)開始按鍵、一個(gè)結(jié)束按鍵和一個(gè)復(fù)位按鍵,如圖3-5所示:</p><p> 圖3-5 搶答器按鍵電路</p><p> 在圖3
56、-5中8個(gè)搶答按鍵分別接入單片機(jī)的P1.0~P1.7端口,單片機(jī)通過讀取P1.0~P1.7的值來判斷當(dāng)前輸入的是8個(gè)搶答按鍵中的哪一個(gè)。停止、開始及復(fù)位按鍵分別接到單片機(jī)的15、16、17腳;這里用到了單片機(jī)15、16、17腳復(fù)合功能中的IO端口功能。單片機(jī)通過讀取15、16、17腳的P3.5、P3.6、P3.7的IO端口值來判斷當(dāng)前是否處于搶答開始狀態(tài)、搶答停止?fàn)顟B(tài)或復(fù)位狀態(tài)。</p><p> 3.7 報(bào)警
57、電路設(shè)計(jì)</p><p> 在搶答比賽中難免不會(huì)遇到這種情況:主持人在宣布開始搶答并按下開始鍵,各參賽選手可以開始搶答,系統(tǒng)開始倒計(jì)時(shí),選手們對(duì)該題目的答案不太確定而猶豫不決是否搶答,但搶答時(shí)間有限,在時(shí)限快到時(shí)主持人會(huì)提醒參賽者搶答。所以本設(shè)計(jì)我采用了較人性化的報(bào)警電路:在倒計(jì)時(shí)到5S時(shí),如果仍無人搶答,則系統(tǒng)每1S報(bào)警一次,用以提示參賽選手。揚(yáng)聲器通過一個(gè)10K的電阻接在單片機(jī)的14腳,此處用到了單片機(jī)14
58、腳的IO端口功能,單片機(jī)通過內(nèi)部定時(shí)器的操作實(shí)現(xiàn)交替變換的波形輸出驅(qū)動(dòng)揚(yáng)聲器發(fā)聲,如圖3-6所示:</p><p><b> 圖3-6報(bào)警電路</b></p><p> 第四章 系統(tǒng)軟件設(shè)計(jì)</p><p> 4.1 軟件系統(tǒng)結(jié)構(gòu)圖</p><p> 軟件設(shè)計(jì)時(shí)保證電路正常運(yùn)行的關(guān)鍵。前面我介紹到本設(shè)計(jì)用到的是模
59、塊化的設(shè)計(jì),所以對(duì)于相應(yīng)的模塊要給予相應(yīng)的程序,來保證系統(tǒng)的正常運(yùn)行。為了更好設(shè)計(jì)軟件系統(tǒng),我們要畫出搶答器系統(tǒng)的流程圖,這樣能夠很直觀,很簡便的來分析如何進(jìn)行設(shè)計(jì)。在本設(shè)計(jì)中有以下幾個(gè)模塊:按鍵控制模塊、搶答模塊、倒計(jì)時(shí)模塊、報(bào)警模塊和顯示模塊,如圖4-1所示:</p><p> 圖4-1軟件系統(tǒng)結(jié)構(gòu)框圖</p><p> 4.2 搶答器工作流程圖</p><p&
60、gt; 搶答器的工作原理是利用單片機(jī)的定時(shí)器T0、T1中斷完成,其余狀態(tài)循環(huán)調(diào)用顯示子程序,用4位七段共陰極數(shù)碼管來顯示;用P0口作為數(shù)碼管的八個(gè)段選,用P2口中的P2.0、P2.1、P2.2作為4個(gè)數(shù)碼管其中3個(gè)位選;P1口接8個(gè)按鍵,提供選手搶答;P3.5-P3.7接口接三個(gè)按鍵,提供開始、結(jié)束、復(fù)位調(diào)整。其工作流程是:主持人按下開始鍵,數(shù)碼管顯示20秒倒計(jì)時(shí),選手開始搶答,系統(tǒng)將搶答選手號(hào)碼顯示在數(shù)碼管上;如無人搶答,則在倒計(jì)時(shí)
61、到5秒鐘時(shí)數(shù)碼管閃爍報(bào)警,直到倒計(jì)時(shí)結(jié)束,主持人復(fù)位并開始下一題的搶答。我們用一個(gè)流程圖來更直觀的來表述搶答器的工作流程,如圖4-2所示:</p><p> 圖4-2 搶答器工作流程</p><p><b> 4.3 按鍵處理</b></p><p> 按鍵是搶答器硬件部分的重要成分。在本設(shè)計(jì)中我用到8個(gè)按鍵接在AT89C51單片機(jī)的P1
62、口實(shí)現(xiàn)人與機(jī)器的交流。這8個(gè)按鍵可供八位選手搶答,按鍵編號(hào)K1~K8依次對(duì)應(yīng)1~8號(hào)選手。程序代碼是驅(qū)動(dòng)按鍵正常運(yùn)行的關(guān)鍵,P1口有8根I/O線分別連接K1~K8這8個(gè)按鍵,由于按鍵數(shù)量比較少,且各按鍵之間工作互不干擾,因此可以根據(jù)實(shí)際需要對(duì)按鍵靈活的編碼。所以我用了最簡單的編碼方式:根據(jù)I/O輸入口所直接反映的相應(yīng)按鍵,按下的狀態(tài)進(jìn)行編碼。8個(gè)按鍵的工作流程圖如圖4-3所示:</p><p> 圖4-3 按
63、鍵流程圖</p><p> 上圖是八路搶答器中的8個(gè)按鍵工作的流程圖,根據(jù)流程圖我們可以更直觀的來編寫8個(gè)按鍵的程序代碼。在硬件電路的基礎(chǔ)上我們?cè)O(shè)計(jì)了軟件程序代碼,用來驅(qū)動(dòng)按鍵的正常運(yùn)行;其程序代碼如下:</p><p> uchar key_scan8()</p><p><b> {</b></p><p>
64、 if(key1 == 0)</p><p><b> {</b></p><p><b> delay(8);</b></p><p> if((key1 == 0)&&(!key1_flag))</p><p><b> {</b></p>
65、;<p> key1_flag = 1;</p><p> number = 1;</p><p> number_display = number;</p><p><b> }</b></p><p><b> }</b></p><p><
66、;b> else</b></p><p><b> {</b></p><p> key1_flag = 0;</p><p> number = 0;</p><p><b> }</b></p><p> if(key2 == 0)<
67、;/p><p><b> {</b></p><p><b> delay(8);</b></p><p> if((key2 == 0)&&(!key2_flag))</p><p><b> {</b></p><p> key
68、2_flag = 1;</p><p> number = 2;</p><p> number_display = number;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</
69、b></p><p><b> {</b></p><p> key2_flag = 0;</p><p> number = 0;</p><p><b> }</b></p><p> if(key3 == 0)</p><p>
70、;<b> {</b></p><p><b> delay(8);</b></p><p> if((key3 == 0)&&(!key3_flag))</p><p><b> {</b></p><p> key3_flag = 1;</p
71、><p> number = 3;</p><p> number_display = number;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p>
72、<p><b> {</b></p><p> key3_flag = 0;</p><p> number = 0;</p><p><b> }</b></p><p> if(key4 == 0)</p><p><b> {<
73、/b></p><p><b> delay(8);</b></p><p> if((key4 == 0)&&(!key4_flag))</p><p><b> {</b></p><p> key4_flag = 1;</p><p>
74、number = 4;</p><p> number_display = number;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b>
75、; {</b></p><p> key4_flag = 0;</p><p> number = 0;</p><p><b> }</b></p><p> if(key5 == 0)</p><p><b> {</b></p>
76、<p><b> delay(8);</b></p><p> if((key5 == 0)&&(!key5_flag))</p><p><b> {</b></p><p> key5_flag = 1;</p><p> number = 5;</
77、p><p> number_display = number;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b><
78、;/p><p> key5_flag = 0;</p><p> number = 0;</p><p><b> }</b></p><p> if(key6 == 0)</p><p><b> {</b></p><p><b&g
79、t; delay(8);</b></p><p> if((key6 == 0)&&(!key6_flag))</p><p><b> {</b></p><p> key6_flag = 1;</p><p> number = 6;</p><p>
80、 number_display = number;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p>
81、; key6_flag = 0;</p><p> number = 0;</p><p><b> }</b></p><p> if(key7 == 0)</p><p><b> {</b></p><p><b> delay(8);<
82、/b></p><p> if((key7 == 0)&&(!key7_flag))</p><p><b> {</b></p><p> key7_flag = 1;</p><p> number = 7;</p><p> number_display =
83、 number;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> key7_flag = 0;
84、</p><p> number = 0;</p><p><b> }</b></p><p> if(key8 == 0)</p><p><b> {</b></p><p><b> delay(8);</b></p>
85、<p> if((key8 == 0)&&(!key8_flag))</p><p><b> {</b></p><p> key8_flag = 1;</p><p> number = 8;</p><p> number_display = number;</p>
86、;<p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> key8_flag = 0;</p><p
87、> number = 0;</p><p><b> }</b></p><p> if(number_display != 0)</p><p><b> {</b></p><p><b> return 1;</b></p><p
88、><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p><b> return 0;</b></p><p><b> }</b></p>
89、<p><b> }</b></p><p> 第五章 搶答器制作與系統(tǒng)調(diào)試仿真</p><p> 5.1 搶答器的制作</p><p> 我們根據(jù)搶答器電路原理圖和所給的器件、萬能PCB電路板,自行制作八路搶答器。要求八路搶答器可以同時(shí)提供八位選手搶答,最先按下按鍵的有效,數(shù)碼管管通過鎖存器顯示相應(yīng)按鍵選手編號(hào),倒計(jì)時(shí)最
90、后5秒顯示管會(huì)不斷閃爍且蜂鳴器起報(bào)警;設(shè)有主持人控制按鍵,用以清除先前狀態(tài),使電路恢復(fù)初始等待搶答狀態(tài)。</p><p> 首先,我們應(yīng)該根據(jù)搶答器電路圖以及電路圖的工作原理,繪制出焊接電路圖。</p><p> 其次,根據(jù)焊接電路圖、實(shí)際元器件器件及所給的PCB電路板,完成器件在PCB電路板上的布局,集成電路用相應(yīng)的IC插座代替;完成器件在萬能板上的安裝焊接,所有器件都應(yīng)安裝在PCB
91、板的正面,集成電路插座的缺口方向最好取向一致,排列要整齊、美觀。</p><p> 最后,根據(jù)電路原理圖,在PCB電路板上布線,PCB板的正面放置元器件,走線為橫線;PCB 反面為焊點(diǎn)所在的面,這面的走線以縱線為主。在PCB 板的反面的兩邊布置電源線和地線,地線和電源線要粗一些。布線時(shí)要先確定集成芯片的位置,再確定其他元器件的位置,最好先畫一份草圖,然后再實(shí)際連線和焊接。</p><p>
92、; 搶答器制作完成后還要對(duì)搶答器進(jìn)行測(cè)試。在通電調(diào)試之前,必須認(rèn)真檢查電路連線是否正確,對(duì)照電路圖按照一定順序逐級(jí)檢測(cè),特別要注意電源是否接錯(cuò)、電源與地是否有短接、二極管是否接反;輕輕撥一撥元器件,觀察焊點(diǎn)是否牢固。驗(yàn)證按鍵的操作是否正確,電路是否能實(shí)現(xiàn)所設(shè)計(jì)的功能,相應(yīng)的數(shù)碼管和蜂鳴器的變化是否符合設(shè)計(jì)邏輯,如果不正確,應(yīng)根據(jù)現(xiàn)象分析,找到并排除故障,再進(jìn)行驗(yàn)證測(cè)試,直到電路能完成全部功能。一定要調(diào)試好電源值為5V,才能給電路通電。
93、電源接通后首先保證安全,觀察電路中是否有冒煙、起火等現(xiàn)象。如果有,應(yīng)立即斷電,故障排除后繼續(xù)通電,并注意觀察各器件引腳電壓是否正常</p><p><b> 5.1.1 焊接</b></p><p> 一般來說,造成硬件問題的首要問題就是焊接了,也就是說焊接的好與壞直接響產(chǎn)品的正常運(yùn)行。造成焊接質(zhì)量不高的常見原因是:</p><p> 一
94、、焊錫用量過多,形成焊點(diǎn)的錫堆積;焊錫過少,不足以包裹焊點(diǎn)。</p><p> 二、冷焊。焊接時(shí)烙鐵溫度過低或加熱時(shí)間不足,焊錫未完全熔化、浸潤、焊錫表面不光亮(不光滑) 、有細(xì)小裂紋(如同豆腐渣一樣)。</p><p> 三、夾松香焊接,焊錫與元器件或印刷板之間夾雜著一層松香,造成電連接不良。若夾雜加熱不足的松香,則焊點(diǎn)下有一層黃褐色松香膜;若加熱溫度太高,則焊點(diǎn)下有一層碳化松香的黑
95、色膜。對(duì)于有加熱不足的松香膜的情況,可以用烙鐵進(jìn)行補(bǔ)焊。對(duì)于已形成黑膜的,則要“吃”凈焊錫,清潔被焊元器件或印刷板表面,重新進(jìn)行焊接才行。</p><p> 四、焊錫連橋。指焊錫量過多,造成元器件的焊點(diǎn)之間短路。這在對(duì)超小元器件及細(xì)小印刷電路板進(jìn)行焊接時(shí)要尤為注意。</p><p> 五、焊劑過量,焊點(diǎn)明圍松香殘?jiān)芏唷.?dāng)少量松香殘留時(shí),可以用電烙鐵再輕輕加熱一下,讓松香揮發(fā)掉;也可以
96、用蘸有無水酒精的棉球,擦去多余的松香或焊劑。</p><p> 六、焊點(diǎn)表面的焊錫形成尖銳的突尖。這多是由于加熱溫度不足或焊劑過少,以及烙鐵離開焊點(diǎn)時(shí)角度不當(dāng)造成的。</p><p> 5.1.2 元器件清單</p><p> 本設(shè)計(jì)用到的元器件有電阻、電容、開關(guān)、三極管等等。下面我將這些元器件用表格的形式列出來,以方便搶答器的元器件的選擇和搶答器的制作。元器
97、件清單如表5-1所示:</p><p> 表5-1 元器件清單</p><p><b> 5.2 系統(tǒng)調(diào)試</b></p><p> 系統(tǒng)調(diào)試包括硬件調(diào)試和軟件調(diào)試,而且兩者是密不可分的。我們?cè)O(shè)計(jì)好的硬件電路和軟件程序,只有經(jīng)過聯(lián)合調(diào)試,才能驗(yàn)證其正確性;軟硬件的配備情況以及是否達(dá)到設(shè)計(jì)任務(wù)的要求,也只有經(jīng)過調(diào)試,才能發(fā)現(xiàn)問題并加以解決、
98、完善,最終開發(fā)成實(shí)用產(chǎn)品?! ∮布{(diào)試分單元電路調(diào)試和聯(lián)機(jī)調(diào)試。單元電路調(diào)試在硬件電路設(shè)計(jì)時(shí)已經(jīng)進(jìn)行,這里的調(diào)試只是將其制成PCB電路板后試驗(yàn)電路是否正確,并排除一些加工工藝性錯(cuò)誤(如錯(cuò)線、開路、短路等)。這種調(diào)試可單獨(dú)模擬進(jìn)行,也可通過開發(fā)裝置由軟件配合進(jìn)行。硬件聯(lián)機(jī)調(diào)試則必須在系統(tǒng)軟件的配合下進(jìn)行?! ≤浖{(diào)試一般包括分塊調(diào)試和聯(lián)機(jī)調(diào)試兩個(gè)階段。程序的分塊調(diào)試一般在單片機(jī)開發(fā)裝置上進(jìn)行,可根據(jù)所調(diào)試程序功能塊的入口參量初值編制一
99、個(gè)特殊的程序段,并連同被調(diào)程序功能塊一起在開發(fā)裝置上運(yùn)行;也可配合對(duì)應(yīng)硬件電路單獨(dú)運(yùn)行某程序功能塊,然后檢查是否正確。如果執(zhí)行結(jié)果與預(yù)想的不一致,可以通過單步運(yùn)行或設(shè)置斷點(diǎn)的方法,查出原因并加以改正,直到運(yùn)行結(jié)果正確為止。這時(shí)該程序功能塊已調(diào)試完畢,可去掉附加程序段,其它程序功能塊可按此法進(jìn)行調(diào)試。程序聯(lián)機(jī)調(diào)試就是將已調(diào)試好的各程序功能塊按總體結(jié)構(gòu)聯(lián)成</p><p><b> 5.3 軟件仿真<
100、;/b></p><p> 為了更好地完成軟件仿真這一重要環(huán)節(jié),我們采用Keil軟件與Proteus軟件整合構(gòu)建單片機(jī)虛擬實(shí)驗(yàn)平臺(tái)。首先在PC上利用Proteus軟件自己搭建硬件電路,并利用系統(tǒng)提供的功能完成電路分析、系統(tǒng)調(diào)試和輸出顯示的硬件設(shè)計(jì)部分;同時(shí)在Keil軟件中編制程序,進(jìn)行相應(yīng)的編譯和仿真,完成系統(tǒng)的軟件設(shè)計(jì)部分。當(dāng)系統(tǒng)的設(shè)計(jì)工作完成后,我們可以在PC上看到最終的運(yùn)行效果。</p>
101、<p> 5.3.1 Keil軟件編譯</p><p> Keil C51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開發(fā)提供了C語言環(huán)境,同時(shí)保留了匯編代碼高效、快速的特點(diǎn)。C51編譯器的功能不斷增強(qiáng), 使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開發(fā)環(huán)境中,這個(gè)集成開發(fā)環(huán)境包含:編譯器、匯編器、實(shí)時(shí)操作系統(tǒng)、項(xiàng)目管理器和調(diào)試器。uVision2 IDE可為
102、它們提供單一而靈活的開發(fā)環(huán)境。C51 V7版本是目前最高效、靈活的8051開發(fā)平臺(tái)。它可以支持所有8051的衍生產(chǎn)品,也可以支持所有兼容的仿真器,同時(shí)支持其它第三方開發(fā)工具。因此,C51 V7版本無疑是8051開發(fā)用戶的最佳選擇。Keil uVsion2編譯圖如圖5-1所示:</p><p> 圖5-1 Keil uVsion2編譯</p><p> 5.3.2 Proteus軟件仿
103、真</p><p> Proteus軟件是來自英國Labcenter Electronics公司的EDA工具軟件,Proteus軟件除了其具有和其它EDA工具一樣的原理布圖、PCB自動(dòng)或人工布線及電路仿真的功能外, 其革命性的功能是:它的電路仿真是互動(dòng)的,針對(duì)微處理器的應(yīng)用,還可以直接在基于原理圖的虛擬原型上編程,并實(shí)現(xiàn)軟件源碼級(jí)的實(shí)時(shí)調(diào)試;如有顯示及輸出, 還能看到運(yùn)行后輸入輸出的效果,配合系統(tǒng)配置的虛擬儀器
104、如示波器,邏輯分析儀等。Proteus為您建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境。</p><p> PROTUES的ISIS是一款Labcenter出品的電路分析實(shí)物仿真系統(tǒng),可仿真各種電路和IC,并支持單片機(jī);元件庫齊全,使用方便,是不可多得的專業(yè)的單片機(jī)軟件仿真系統(tǒng)。該軟件具有以下幾點(diǎn)特點(diǎn):</p><p> 一、全部滿足我們提出的單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn),并在同類產(chǎn)品中具有明顯的優(yōu)勢(shì)。&
105、lt;/p><p> 二、具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS-232動(dòng)態(tài)仿真、C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。</p><p> 三、目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外
106、圍芯片。</p><p> 四、支持大量的存儲(chǔ)器和外圍芯片。總之該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大,可仿真51、AVR、PIC。</p><p> 使用Proteus軟件進(jìn)行仿真:當(dāng)主持人按下開始鍵,數(shù)碼管顯示0F20并進(jìn)行倒計(jì)時(shí)。此時(shí)選手們可以開始搶答,當(dāng)選手們紛紛按下?lián)尨鸢存I系統(tǒng)會(huì)記錄最先按下鍵的號(hào)碼,即使選手之間按下的間隔時(shí)間很短系統(tǒng)也能夠分辨出最
107、先按下的選手號(hào)碼;在計(jì)時(shí)開始被5號(hào)選手最先按下?lián)尨疰I,數(shù)碼管顯示選手號(hào)碼并鎖定倒計(jì)時(shí),此時(shí)5號(hào)選手可以開始回答問題。仿真結(jié)果如圖5-2所示:</p><p> 圖5-2 5號(hào)選手搶答</p><p> 主持人依次按下復(fù)位、開始鍵,顯示管倒計(jì)時(shí)開始。在選手們考慮是否搶答問題時(shí),數(shù)碼顯示器計(jì)時(shí)到最后5秒鐘仍然無選手搶答。這時(shí)候顯示器會(huì)開始不斷閃爍同時(shí)喇叭發(fā)出“嘟”的響聲如圖5-4所示:&
108、lt;/p><p> 圖5-3 5秒倒計(jì)時(shí)報(bào)警</p><p> 通過仿真結(jié)果證實(shí),本方案可行。本設(shè)計(jì)方案通過51系列單片機(jī)的P0口作為段選輸出,用P2口作為位選輸出,動(dòng)態(tài)掃描數(shù)碼顯示管,顯示時(shí)間。并通過接在P3.5-P3.7口的按鍵開關(guān)控制停止、開始、復(fù)位提示等功能。P1口接選手按鍵,控制搶答。本設(shè)計(jì)實(shí)現(xiàn)簡單,成本較低,具有很高的實(shí)用性。</p><p><
109、;b> 總結(jié)與體會(huì)</b></p><p> 畢業(yè)設(shè)計(jì)不僅是對(duì)前面所學(xué)知識(shí)的一種檢驗(yàn),而且也是對(duì)自己能力的一種提高。下面我對(duì)整個(gè)畢業(yè)設(shè)計(jì)的過程做一下簡單的總結(jié)。</p><p> 一、指導(dǎo)老師布置下來任務(wù),首先要思考設(shè)計(jì)的方向,這一步很重要。好比走路,這開始的第一步是具有決定意義的,第一步邁向何方,需要慎重考慮。否則,就可能走許多彎路、費(fèi)許多周折,甚至南轅北轍,難以
110、到達(dá)目的地。因此設(shè)計(jì)任務(wù)一定要認(rèn)真思考。</p><p> 二、想好了方向后就是找資料了。查資料是做畢業(yè)設(shè)計(jì)的前期準(zhǔn)備工作,好的開端就相當(dāng)于成功了一半,到圖書館、書店去雖說是比較原始的方式,但也有可取之處的;在網(wǎng)上查找資料也很方便??傊?,不管通過哪種方式查的資料都是有利用價(jià)值的,要一一記錄下來以備后用。</p><p> 三、通過上面的過程,已經(jīng)積累了不少資料,對(duì)設(shè)計(jì)任務(wù)也大概有了一些
111、了解,這一步就是在這樣一個(gè)基礎(chǔ)上,綜合已有的資料來更透徹的分析題目。</p><p> 四、有了研究方向,就應(yīng)該動(dòng)手實(shí)現(xiàn)了。其實(shí)以前的三步都是為這一步作的鋪墊。</p><p> 通過這次設(shè)計(jì),我對(duì)數(shù)字電路設(shè)計(jì)中的邏輯關(guān)系等有了一定的認(rèn)識(shí),對(duì)以前學(xué)的數(shù)字電路又有了一定的新認(rèn)識(shí),溫習(xí)了以前學(xué)的知識(shí),從溫習(xí)舊知識(shí)而學(xué)到了新的知識(shí)。但在設(shè)計(jì)的過程中,遇到了很多的問題,比如運(yùn)用到軟件中時(shí),出現(xiàn)
112、各種不同的錯(cuò)誤,我參考別人的程序,在老師的指導(dǎo)下,根據(jù)書本上所講的有關(guān)知識(shí)點(diǎn)加以改進(jìn)。在這次畢業(yè)設(shè)計(jì)中也使我們的同學(xué)關(guān)系更進(jìn)一步了,同學(xué)之間互相幫助,有什么不懂的大家在一起商量,聽聽不同的看法對(duì)我們更好的理解知識(shí)。</p><p><b> 致 謝</b></p><p> 在此我要對(duì)我們的指導(dǎo)老師王昱煜老師表示真摯的感謝,在做畢業(yè)設(shè)計(jì)的這段時(shí)間以來,在每周星期一
113、晚上七點(diǎn)到九點(diǎn)王老師對(duì)我們悉心的輔導(dǎo)和幫助。王老師幾次審閱我們的論文,提出許多寶貴的意見,為我們?cè)谧霎厴I(yè)設(shè)計(jì)指明了路,讓我們少走了很多彎路,沒有他的指導(dǎo),我們就不能較好的完成課題設(shè)計(jì)的任務(wù)。您認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。古語有云:“授人以魚不如授人以漁”。置身其間,耳濡目染,潛移默化,使我不僅接受了全新的思想觀念,樹立了宏偉的學(xué)術(shù)目標(biāo),領(lǐng)會(huì)了基本的思考方式,也使我感到自己在這方面思維太過狹隘,以及信
114、息的日新月異。同時(shí)我也感謝我的同組同學(xué)在這次畢業(yè)設(shè)計(jì)中的支持、幫助和理解。在這過程中,我們幾個(gè)有過一些矛盾和分歧,但是到最后大家還是會(huì)以大局為重,把問題、意見說出來,通過交流,一起去解決、融合。</p><p> 在整個(gè)畢業(yè)設(shè)計(jì)過程中我懂得了許多東西,也培養(yǎng)了我獨(dú)立工作的能力,樹立了對(duì)自己工作能力的信心,相信會(huì)對(duì)今后的學(xué)習(xí)工作生活有非常重要的影響。而且大大提高了動(dòng)手的能力,使我充分體會(huì)到了在創(chuàng)造過程中的探索的艱
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通信號(hào)燈畢業(yè)設(shè)計(jì)
- plc交通信號(hào)燈畢業(yè)設(shè)計(jì)
- pac交通信號(hào)燈畢業(yè)設(shè)計(jì)
- 交通信號(hào)燈課程設(shè)計(jì)---交通信號(hào)燈系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--智能交通信號(hào)燈設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--交通信號(hào)燈的控制
- 交通信號(hào)燈設(shè)計(jì)
- 交通信號(hào)燈
- 智能交通信號(hào)燈畢業(yè)設(shè)計(jì)外文翻譯
- 交通信號(hào)燈課程設(shè)計(jì)--交通信號(hào)燈控制電路的設(shè)計(jì)
- 對(duì)交通信號(hào)燈的控制畢業(yè)設(shè)計(jì)
- 基于plc的交通信號(hào)燈畢業(yè)設(shè)計(jì)
- 交通紅綠燈系統(tǒng)畢業(yè)設(shè)計(jì)
- 交通信號(hào)燈畢業(yè)論文(設(shè)計(jì))
- 交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----plc控制的交通信號(hào)燈設(shè)計(jì)
- 路口信號(hào)燈合同書紅綠燈安裝施工合同
- 畢業(yè)設(shè)計(jì)---基于plc的交通信號(hào)燈控制
- plc交通信號(hào)燈控制設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論