畢業(yè)設(shè)計(jì)(論文)-單片機(jī)紅外遙控電路設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  紅外遙控電路設(shè)計(jì)</b></p><p><b>  摘 要</b></p><p>  通過(guò)對(duì)設(shè)計(jì)要求地認(rèn)真分析和研究,拿出了幾種可行方案,最終選定了一個(gè)最佳方案。該方案是采用先進(jìn)的單片機(jī)技術(shù)實(shí)現(xiàn)遙控的主要手段。我們所設(shè)計(jì)的遙控器能控制電器的3個(gè)電源開關(guān)。</p><p>  關(guān)鍵字:遙控

2、電路 紅外發(fā)射 紅外接收 單片機(jī)</p><p>  INFRARED REMOTE CONTROL CIRCUIT DESIGN</p><p><b>  ABSTRACT</b></p><p>  After analyzing and researching on the request of the design, we t

3、ake several blue print and we selected the best one in the end. The project make use of advanced SCM to realize the remote control. Remote controller we designed can dominate 3 electrical source switches .</p><

4、;p>  【KEY WORDS】Remote controlling circuit Infrared emission Infrared receiving SCM</p><p><b>  目 錄</b></p><p><b>  前言1</b></p><p>  第一章 課題概況2</

5、p><p>  1.1 紅外遙控電路設(shè)計(jì)的目的2</p><p>  1.2紅外遙控電路設(shè)計(jì)功能介紹2</p><p>  1.3課題方案設(shè)計(jì)2</p><p>  第二章 系統(tǒng)硬件部分方案設(shè)計(jì)4</p><p>  2.1紅外遙控接發(fā)電路的主控芯片4</p><p>  2.2紅外發(fā)送電

6、路5</p><p>  2.3紅外接收電路5</p><p>  第三章 系統(tǒng)軟件部分方案設(shè)計(jì)7</p><p>  3.1紅外編碼原理7</p><p>  3.2紅外遙控初始化程序和主程序7</p><p>  3.3紅外遙控鍵盤掃描、紅外發(fā)射程序11</p><p>  3.

7、4紅外遙控接收部分外部中斷程序12</p><p>  第四章 系統(tǒng)調(diào)試13</p><p><b>  課題設(shè)計(jì)總結(jié)15</b></p><p><b>  參考文獻(xiàn)16</b></p><p><b>  附 錄17</b></p><p>

8、;<b>  致 謝33</b></p><p><b>  引 言</b></p><p>  當(dāng)今社會(huì)科學(xué)技術(shù)的發(fā)展與日俱增,人們生活水平也是日益提高,為了減少人們的工作量,所以對(duì)各種家用電器、電子器件的非人工控制的要求也是越來(lái)越高,針對(duì)這種情況,設(shè)計(jì)出一種集成度比較高的控制體系是必然的。 </p><p>  單

9、片機(jī)的集成度很高,它具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化、使用方便等突出特點(diǎn),尤其耗電少,又可使供電電源體積小、質(zhì)量輕。所以特別適用與“電腦型產(chǎn)品”,它的應(yīng)用已深入到工業(yè)、農(nóng)業(yè)、國(guó)防、科研、教育以及日常生活用品(家電、玩具)等各種領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。單片機(jī)特別適合于把它做到產(chǎn)品的內(nèi)部,取代部分老式機(jī)械、電子零件或元器件??墒巩a(chǎn)品縮小體積,增強(qiáng)功能,實(shí)現(xiàn)不同程度的智能化。 </p><

10、;p>  紅外線是一種光線,具有普通光的性質(zhì),可以以光速直線傳播,強(qiáng)度可調(diào),可以通過(guò)光學(xué)透鏡聚焦,可以被不透明物體遮擋等等。特別制造的半導(dǎo)體發(fā)光二極管,可以發(fā)出特定波長(zhǎng)(通常是近紅外)的紅外線,通過(guò)控制二極管的電流可以很方便地改變紅外線的強(qiáng)度,達(dá)到調(diào)制的目的,因此,在現(xiàn)代電子工程應(yīng)用中,紅外線常常被用做近距離視線范圍內(nèi)的通訊載波,最典型的應(yīng)用就是家電遙控器。使用紅外線做信號(hào)載波的優(yōu)點(diǎn)很多:成本低、傳播范圍和方向可以控制、不產(chǎn)生電磁

11、輻射干擾,也不受干擾等等。因此被廣泛地應(yīng)用在各種技術(shù)領(lǐng)域中。</p><p><b>  第一章 課題概況</b></p><p>  1.1 紅外遙控電路設(shè)計(jì)的目的</p><p>  本次設(shè)計(jì)的主要任務(wù)是利用單片機(jī)技術(shù),并將數(shù)字電子技術(shù)、模擬電子技術(shù)和紅外學(xué)相關(guān)知識(shí)相結(jié)合,設(shè)計(jì)一款可以實(shí)現(xiàn)燈泡的開關(guān)和調(diào)光(或者電機(jī)啟動(dòng)和調(diào)速)控制的紅外遙控

12、電路。通過(guò)設(shè)計(jì)紅外遙控電路來(lái)鞏固和加強(qiáng)對(duì)三年來(lái)所學(xué)的理論知識(shí)和鍛煉自己的動(dòng)手能力,熟悉和掌握以單片機(jī)為核心的電路設(shè)計(jì)的基本方法和技術(shù),熟悉傳感器的使用,提高電子電路的設(shè)計(jì)和動(dòng)手能力,加深對(duì)單片機(jī)軟硬件知識(shí)的理解,獲得初步的應(yīng)用經(jīng)驗(yàn),為以后從事生產(chǎn)和科研工作打下一定的基礎(chǔ)。</p><p>  1.2紅外遙控電路設(shè)計(jì)功能介紹</p><p>  本設(shè)計(jì)要求紅外遙控電路實(shí)現(xiàn)以下功能:</

13、p><p>  (1)利用紅外接收和發(fā)射探頭發(fā)送和接收紅外線;</p><p>  (2)該遙控系統(tǒng)可以實(shí)現(xiàn)燈泡的開關(guān)(或者電機(jī)啟動(dòng))控制;</p><p> ?。?)能夠按鍵啟動(dòng)/停止,使用單片機(jī)進(jìn)行設(shè)計(jì)或者純數(shù)字模擬電路設(shè)計(jì);</p><p><b>  1.3課題方案設(shè)計(jì)</b></p><p>

14、;  目前紅外遙控器已經(jīng)在各類電器上得到了廣泛應(yīng)用。市場(chǎng)上一般設(shè)備系統(tǒng)均采用專用的遙控編碼及解碼集成電路,具有制作簡(jiǎn)單等特點(diǎn),但由于這些芯片價(jià)格較貴,功能鍵數(shù)及功能受到特定的限制,且相互之間采用的遙控編碼格式互不兼容.所以各機(jī)型的遙控器通常只能針對(duì)各自的遙控對(duì)象而無(wú)法通用,只適用于某一專用電器產(chǎn)品的應(yīng)用,應(yīng)用范圍受到限制。采用單片機(jī)進(jìn)行遙控系統(tǒng)的應(yīng)用設(shè)計(jì),具有硬件接口簡(jiǎn)單方便。編程靈活多樣,操作碼個(gè)數(shù)可隨意設(shè)定等優(yōu)點(diǎn)。此方案可用控制鍵實(shí)

15、現(xiàn)對(duì)電器的控制,方便實(shí)用。且本設(shè)計(jì)用到的元器件較少,電路相對(duì)簡(jiǎn)單實(shí)用。</p><p>  紅外遙控電發(fā)射器主要由單片機(jī)、操作鍵盤和紅外發(fā)射電路三部分組成。紅外發(fā)射部分結(jié)構(gòu)圖如圖1.1所示:</p><p>  圖1.1紅外遙控電路發(fā)射設(shè)計(jì)原理框圖</p><p>  當(dāng)按下遙控按鈕時(shí),單片機(jī)產(chǎn)生相應(yīng)的控制脈沖,由紅外發(fā)光二極管發(fā)射出去??刂葡到y(tǒng)采用3V電源電壓,并

16、具有低功耗空閑和掉電方式控制。</p><p>  紅外遙控電發(fā)射器主要由單片機(jī)、指示電路和紅外接收電路三部分組成。紅外接收部分結(jié)構(gòu)如圖1.2所示:</p><p>  圖1.2紅外遙控電路接收設(shè)計(jì)原理框圖</p><p>  當(dāng)紅外接收器接收到控制脈沖后,經(jīng)單片機(jī)處理由顯示設(shè)備顯示出當(dāng)前受控電器的序號(hào),并判斷是否對(duì)電燈進(jìn)行調(diào)光,如需調(diào)光則經(jīng)調(diào)光電路處理后實(shí)現(xiàn)調(diào)光功

17、能。系統(tǒng)采用5V單電源電壓供電,能滿足低功耗空閑狀態(tài),并具有掉電記憶控制功能。</p><p>  第二章 系統(tǒng)硬件部分方案設(shè)計(jì)</p><p>  2.1紅外遙控接發(fā)電路的主控芯片</p><p>  AT89C52是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM

18、),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。</p><p>  編輯本段主要功能特性  </p><p>  兼容MCS51指令系統(tǒng)   </p><p>  2、8k可反復(fù)擦寫(大于1000次)Flash ROM;   &l

19、t;/p><p>  3、2個(gè)雙向I/O口;   </p><p>  4、256x8bit內(nèi)部RAM;   </p><p>  5、3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷;   </p><p>  時(shí)鐘頻率0-24MHz;   </p><p>  7、2個(gè)串行中斷,可編程UART串行通道;   </p>&

20、lt;p>  8、2個(gè)外部中斷源,共8個(gè)中斷源;   </p><p>  9、2個(gè)讀寫中斷口線,3級(jí)加密位;   </p><p>  低功耗空閑和掉電模式,軟件設(shè)置睡眠和喚醒功能;   </p><p>  有PDIP、PQFP、TQFP及PLCC等幾種封裝形式,以適應(yīng)不同產(chǎn)品的需求。</p><p>  AT89C52為8 位通

21、用微處理器,采用工業(yè)標(biāo) PDIP封裝的AT89C52引腳圖準(zhǔn)的C51內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc52 相同,其主要用于會(huì)聚調(diào)整時(shí)的功能控制。功能包括對(duì)會(huì)聚主IC 內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化,會(huì)聚調(diào)整控制,會(huì)聚測(cè)試圖控制,紅外遙控信號(hào)IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1(19 腳)和XTAL2(18 腳)為振蕩器輸入輸出端口,外接12MHz 晶振。RST/Vpd(9 腳)為復(fù)

22、位輸入端口,外接電阻電容組成的復(fù)位電路。VCC(40 腳)和VSS(20 腳)為供電端口,分別接+5V電源的正負(fù)端。P0~P3 為可編程通用I/O 腳,其功能用途由軟件定義,在本設(shè)計(jì)中,P0 端口(32~39 腳)被定義為N1 功能控制端口,分別與N1的相應(yīng)功能管腳相連接,13 腳定義為IR輸入端,10 腳和11腳定義為I2C總線控制端口,分別連接N1的SDAS(18腳)和SCLS(19腳)端口,12 腳、27 腳及28 腳定義為握手信

23、號(hào)功能端口,連接主板CPU 的相應(yīng)功能端,用于當(dāng)前制式的檢測(cè)及會(huì)聚調(diào)整狀態(tài)進(jìn)入的控制功能。</p><p><b>  2.2紅外發(fā)送電路</b></p><p>  單片機(jī)遙控發(fā)射器原理圖如圖2.1所示,單片機(jī)遙控發(fā)射器主要由AT89C52單片機(jī)、操作鍵盤和紅外發(fā)射電路等組成。單片機(jī)部分主要完成遙控發(fā)射器發(fā)射過(guò)程的控制、鍵盤掃描的管理和顯示。其中P1.3用于輸出控制

24、紅外發(fā)射電路的工作的信號(hào),P2..1到P2.5連接鍵盤,用于接受鍵盤的信號(hào)。電路采用5V電池供電,當(dāng)有按鍵被按下,遙控器信息碼由AT89C52單片機(jī)的定時(shí)器1中斷產(chǎn)生38KHZ的紅外線信號(hào),由P1.3口輸出—,經(jīng)過(guò)三極管9013放大,由紅外發(fā)射管發(fā)送。待發(fā)送完畢。電路采用LED發(fā)光二極管來(lái)實(shí)現(xiàn)按鍵的操作指示。</p><p>  圖2.1 紅外發(fā)射原理圖</p><p>  遙控器采用按鍵

25、中斷掃描方式。當(dāng)按下按鍵K1時(shí),所有燈滅;當(dāng)按下按鍵K2時(shí),紅燈亮,其他燈滅;當(dāng)按下按鍵K3時(shí),黃燈亮,其他等滅;當(dāng)按下按鍵K4時(shí),綠燈亮,其他燈滅;按鍵K5是備用按鍵。</p><p><b>  2.3紅外接收電路</b></p><p>  單片機(jī)遙控接受器原理圖如圖2.2所示,單片機(jī)遙控發(fā)射器主要由AT89C52單片機(jī)、紅外線接收電路、和電燈亮滅電路等組成。當(dāng)

26、紅外接受接收到遙控器發(fā)射的信號(hào)后,將信號(hào)傳給AT89C52單片機(jī),AT89C52單片機(jī)根據(jù)收到的信息碼的不同,進(jìn)行相應(yīng)的狀態(tài)指示。</p><p>  圖2.2 紅外接收原理圖</p><p>  第三章 系統(tǒng)軟件部分方案設(shè)計(jì)</p><p><b>  3.1紅外編碼原理</b></p><p>  遙控發(fā)射器專用芯片

27、很多,根據(jù)編碼格式可以分成兩大類,這里我們以運(yùn)用比較廣泛,解碼比較容易的一類來(lái)加以說(shuō)明,現(xiàn)以日本NEC的uPD6121G組成發(fā)射電路為例說(shuō)明編碼原理。當(dāng)發(fā)射器按鍵按下后,即有遙控碼發(fā)出,所按的鍵不同遙控編碼也不同。這種遙控碼具有以下特征:采用脈寬調(diào)制的串行碼,以脈寬為0.565ms、間隔0.56ms、周期為1.125ms的組合表示二進(jìn)制的“0”;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的組合表示二進(jìn)制的“1”,其

28、波形如下圖所示。</p><p>  上述“0”和“1”組成的32位二進(jìn)制碼經(jīng)38kHz的載頻進(jìn)行二次調(diào)制以提高發(fā)射效率,達(dá)到降低電源功耗的目的。然后再通過(guò)紅外發(fā)射二極管產(chǎn)生紅外線向空間發(fā)射。編碼數(shù)據(jù),載波,發(fā)射,接收解碼如下圖所示:</p><p>  UPD6121G產(chǎn)生的遙控編碼是連續(xù)的32位二進(jìn)制碼組,其中前16位為用戶識(shí)別碼,能區(qū)別不同的電器設(shè)備,防止不同機(jī)種遙控碼互相干擾。該

29、芯片的用戶識(shí)別碼固定為十六進(jìn)制01H;后16位為8位操作碼(功能碼)及其反碼。UPD6121G最多額128種不同組合的編碼。遙控器在按鍵按下后,周期性地發(fā)出同一種32位二進(jìn)制碼,周期約為108ms。一組碼本身的持續(xù)時(shí)間隨它包含的二進(jìn)制“0”和“1”的個(gè)數(shù)不同而不同,大約在45~63ms之間,發(fā)射波形圖如下圖所示。</p><p>  當(dāng)一個(gè)鍵按下超過(guò)36ms,振蕩器使芯片激活,將發(fā)射一組108ms的編碼脈沖

30、,這108ms發(fā)射代碼由一個(gè)起始碼(9ms),一個(gè)結(jié)果碼(4.5ms),低8位地址碼(9ms~18ms),高8位地址碼(9ms~18ms),8位數(shù)據(jù)碼(9ms~18ms)和這8位數(shù)據(jù)的反碼(9ms~18ms)組成。如果鍵按下超過(guò)108ms仍未松開,接下來(lái)發(fā)射的代碼(連發(fā)代碼)將僅由起始碼(9ms)和結(jié)束碼(2.5ms)組成。</p><p>  3.2紅外遙控初始化程序和主程序</p><p&

31、gt;  紅外遙控接收部分與發(fā)射部分初始化程序如圖2.8、圖2.10所示,紅外遙控接收部分與發(fā)射部分主程序如圖2.9、圖2.11所示。</p><p><b>  N</b></p><p><b>  Y</b></p><p>  圖2.8 發(fā)射初始化程序流程圖 圖2.9發(fā)射主程序流程

32、圖 </p><p>  紅外遙控發(fā)射部分初始化程序,初始化程序主要是使單片機(jī)復(fù)位,即為將IO口置于高電平狀態(tài),關(guān)閉遙控輸出口P1.3口,選擇定時(shí)器/計(jì)數(shù)器0方式二,自動(dòng)重裝初值。</p><p>  紅外遙控發(fā)射部分主程序,先調(diào)用初始化程序,再完成調(diào)用鍵盤程序。系統(tǒng)完成鍵盤查詢程序后,解碼,執(zhí)行相應(yīng)的狀態(tài)指示即顯示LED燈的亮滅。</p><p>  圖2.10

33、接收初始化流程圖 圖2.11 接收主程序流程圖</p><p>  紅外遙控接收部分初始化程序,初始化程序主要使單片機(jī)復(fù)位,即為將IOP2口為高電平狀態(tài),開外部中斷0,設(shè)置默認(rèn)彩燈亮滅標(biāo)志位。</p><p>  紅外遙控接收部分主程序,先調(diào)用初始化程序,初始化程序完畢,進(jìn)入主程序循環(huán)狀態(tài)。程序在循環(huán)中主要任務(wù)是接收紅外數(shù)據(jù),處理后解碼送去顯示。<

34、;/p><p>  3.3紅外遙控鍵盤掃描、紅外發(fā)射程序</p><p>  紅外遙控鍵盤掃描程序流程圖如圖2.12所示,紅外發(fā)射程序如圖2.13所示。</p><p>  鍵盤掃鍵過(guò)程:首先判斷控制鍵是否按下,若有控制鍵按下則進(jìn)行逐行掃描,按照P口值查找鍵號(hào)。最后按照鍵號(hào)轉(zhuǎn)至相應(yīng)的發(fā)射程序。</p><p>  紅外信號(hào)發(fā)射過(guò)程:首先是發(fā)射9M

35、S的引導(dǎo)碼(4.5ms高電平和4.5ms低電平),接著發(fā)送8位用戶碼和八位用戶反碼,發(fā)完后發(fā)送8位數(shù)據(jù)碼和8位數(shù)據(jù)反碼。</p><p>  在實(shí)踐中,采用紅外線遙控方式時(shí),由于受遙控距離,角度等影響,使用效果不是很好,如采用調(diào)頻或調(diào)幅發(fā)射接收碼,可提高遙控距離,并且沒有角度影響。</p><p>  圖2.12 鍵盤掃描程序流程圖 圖2.13發(fā)射程序流程圖</

36、p><p>  3.4紅外遙控接收部分外部中斷程序</p><p>  中斷過(guò)程:首先判斷兩個(gè)下降沿之間的時(shí)間是否大于9ms,若不到9ms,則中斷返回;若低電平大于9ms,則接收并對(duì)下降沿計(jì)數(shù),如果接收到了33個(gè)下降沿,說(shuō)明一幀數(shù)據(jù)接收完了。計(jì)數(shù)清零,并送去才處理。</p><p><b>  N</b></p><p>&

37、lt;b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p>  圖2.14 外部中斷0中斷服務(wù)程序流程圖</p><p><b>  第四章 系統(tǒng)調(diào)試</b></p><p>

38、;  控制電路板的安裝與調(diào)試在整個(gè)系統(tǒng)研制中占有重要位置,它是把理論付諸實(shí)踐的過(guò)程,也是把紙面設(shè)計(jì)轉(zhuǎn)變位實(shí)際產(chǎn)品的必經(jīng)階段。對(duì)試驗(yàn)階段的電路板的安裝一般有兩種方式即焊接方式和面包板插接方式。使用面包板焊接更加方便,容易更換線路和器件,而且可以多次使用。但在多次使用的面包板中彈簧片會(huì)變松,彈性變差,容易造成接觸不良,這是需要注意的。</p><p>  實(shí)驗(yàn)和調(diào)試常用的儀器有:萬(wàn)用表、穩(wěn)壓電源、示波器、信號(hào)發(fā)生器等

39、。</p><p>  調(diào)試的主要步驟。1.調(diào)試前不加電源的檢查對(duì)照電路圖和實(shí)際線路檢查連線是否正確,包括錯(cuò)接、少接、多接等;用萬(wàn)用表電阻檔檢查焊接和接插是否良好;元器件引腳之間有無(wú)短路,連接處有無(wú)接觸不良,二極管、三極管、集成電路和電解電容的極性是否正確;電源供電包括極性、信號(hào)源連線是否正確;電源端對(duì)地是否存在短路(用萬(wàn)用表測(cè)量電阻)。若電路經(jīng)過(guò)上述檢查,確認(rèn)無(wú)誤后,可轉(zhuǎn)入靜態(tài)檢測(cè)與調(diào)試。2.靜態(tài)檢測(cè)與

40、調(diào)試斷開信號(hào)源,把經(jīng)過(guò)準(zhǔn)確測(cè)量的電源接入電路,用萬(wàn)用表電壓檔監(jiān)測(cè)電源電壓,觀察有無(wú)異?,F(xiàn)象:如冒煙、異常氣味、手摸元器件發(fā)燙,電源短路等,如發(fā)現(xiàn)異常情況,立即切斷電源,排除故障;如無(wú)異常情況,分別測(cè)量各關(guān)鍵點(diǎn)直流電壓,如靜態(tài)工作點(diǎn)、數(shù)字電路各輸入端和輸出端的高、低電平值及邏輯關(guān)系、放大電路輸入、輸出端直流電壓等是否在正常工作狀態(tài)下,如不符,則調(diào)整電路元器件參數(shù)、更換元器件等,使電路最終工作在合適的工作狀態(tài);對(duì)于放大電路還要用示波器

41、觀察是否有自激發(fā)生。3.動(dòng)態(tài)檢測(cè)與調(diào)試動(dòng)態(tài)調(diào)試是在靜態(tài)調(diào)試的基礎(chǔ)上進(jìn)行的,調(diào)試的方法地在電路的輸入端加上所需的信號(hào)源,并循著信號(hào)的注射逐級(jí)檢測(cè)各有關(guān)點(diǎn)的波形、參數(shù)和</p><p>  我們所設(shè)計(jì)的遙控器電路是采用碼分制遙控方式,我們用示波器對(duì)發(fā)射電路輸出端及接收電路輸入端的信號(hào)波型的進(jìn)行了檢查,發(fā)現(xiàn)當(dāng)按下不同的開關(guān)按鈕時(shí)所顯示的波型是不同的。這說(shuō)明了此電路是工作在正常狀態(tài)的。4.調(diào)試注意事項(xiàng)(1)正確使

42、用測(cè)量?jī)x器的接地端,儀器的接地端與電路的接地端要可靠連接;(2)在信號(hào)較弱的輸入端,盡可能使用屏蔽線連線,屏蔽線的外屏蔽層要接到公共地線上,在頻率較高時(shí)要設(shè)法隔離連接線分布電容的影響,例如用示波器測(cè)量時(shí)應(yīng)該使用示波器探頭連接,以減少分布電容的影響。(3)測(cè)量電壓所用儀器的輸入阻抗必須遠(yuǎn)大于被測(cè)處的等效阻抗。(4)測(cè)量?jī)x器的帶寬必須大于被測(cè)量電路的帶寬。(5)正確選擇測(cè)量點(diǎn)和測(cè)量(6)認(rèn)真觀察記錄實(shí)驗(yàn)過(guò)程,包括條件、現(xiàn)象、數(shù)據(jù)、

43、波形、相位等。(7)出現(xiàn)故障時(shí)要認(rèn)真查找原因</p><p><b>  課題設(shè)計(jì)總結(jié)</b></p><p>  畢業(yè)設(shè)計(jì)是學(xué)生即將完成學(xué)業(yè)的最后一個(gè)重要環(huán)節(jié),它既是對(duì)學(xué)校所學(xué)知識(shí)的全面總結(jié)和綜合應(yīng)用,又為今后走向社會(huì)的實(shí)際操作應(yīng)用鑄就了一個(gè)良好的開端。所以在此有必要對(duì)這次的畢業(yè)設(shè)計(jì)作一個(gè)系統(tǒng)的總結(jié)。</p><p>  這次畢業(yè)設(shè)計(jì),我選

44、擇了實(shí)做的題目,這不僅是對(duì)我的一種鍛煉,也是對(duì)我大學(xué)三年所學(xué)知識(shí)的綜合檢查。從開始設(shè)計(jì)到設(shè)計(jì)的完成,我感覺收獲很多,不僅在理論上有了很大的升華,并且還在實(shí)踐中鍛煉了自己。使自己成長(zhǎng)了許多。</p><p>  本文首先對(duì)整個(gè)系統(tǒng)的工作原理和實(shí)現(xiàn)方法進(jìn)行了簡(jiǎn)單的介紹,給出了系統(tǒng)工作的整體框圖。在此基礎(chǔ)上,介紹了系統(tǒng)設(shè)計(jì)用到的各個(gè)模塊的功能特性,并進(jìn)性了方案比較,選擇出了最優(yōu)越的方案。在理論上對(duì)整個(gè)系統(tǒng)有一定了解的情

45、況下,進(jìn)行了系統(tǒng)模塊的電路的設(shè)計(jì),充分利用各方面的資料,發(fā)揮我所學(xué)的特長(zhǎng)。</p><p>  整個(gè)系統(tǒng)的開發(fā)過(guò)程是曲折的,首先在硬件設(shè)計(jì)上,由于以前所學(xué)課程有一定的基礎(chǔ),我多方查閱資料,不斷的向老師、同學(xué)學(xué)習(xí)請(qǐng)教,以確保設(shè)計(jì)的電路系統(tǒng)完整,并能實(shí)現(xiàn)最完美的系統(tǒng)功能。經(jīng)過(guò)幾個(gè)月學(xué)習(xí),我設(shè)計(jì)出了各個(gè)部分的電路圖,并實(shí)現(xiàn)了電路圖的組合。經(jīng)過(guò)測(cè)試與修改,最終完善了硬件電路的設(shè)計(jì),并能夠比較理想的完成本次畢業(yè)設(shè)計(jì)功能——

46、紅外遙控電路。</p><p>  對(duì)于軟件設(shè)計(jì),因?yàn)橐郧暗木幊探?jīng)驗(yàn)不夠,因此,在這方面花費(fèi)了很多的精力和時(shí)間。盡管過(guò)程很艱難,但是在真正意義上學(xué)到了知識(shí),為以后的工作和學(xué)習(xí)積累了寶貴的經(jīng)驗(yàn)。</p><p>  在研制過(guò)程中注重先進(jìn)、適用的原則,注重科技與應(yīng)用結(jié)合,來(lái)用產(chǎn)、學(xué)、研結(jié)合,側(cè)重于科研技術(shù)轉(zhuǎn)化為生產(chǎn)力。本系統(tǒng)經(jīng)過(guò)了設(shè)計(jì)階段、開發(fā)實(shí)現(xiàn)階段以及最后的應(yīng)用測(cè)試階段。經(jīng)過(guò)2個(gè)月的努力,

47、核心問(wèn)題已經(jīng)全部解決,所有功能均已基本實(shí)現(xiàn),只是在通用性上還有待提高。這次畢業(yè)設(shè)計(jì)的經(jīng)歷使我對(duì)51單片機(jī)的一些特征、性能,以及應(yīng)用及原理有了深刻的了解,真正做到了學(xué)有所得、學(xué)有所用,可以說(shuō)獲益匪淺。</p><p>  但是,總的說(shuō)來(lái),由于我在理論和實(shí)踐方面存在一定的不足,所以在設(shè)計(jì)思路和實(shí)現(xiàn)功能上難免有不足之處,請(qǐng)各位老師多多批評(píng)指正。</p><p><b>  參考文獻(xiàn)&l

48、t;/b></p><p>  [1] 李軍. 檢測(cè)技術(shù)及其儀表. 中國(guó)輕工業(yè)出版社</p><p>  [2] 賀紅娟 等. 匯編語(yǔ)言程序設(shè)計(jì)教程. 清華大學(xué)出版社</p><p>  [3] 孫亮 楊鵬. 自動(dòng)控制技術(shù). 北京工業(yè)大學(xué)出版社</p><p>  [4] 劉守義 鐘蘇. 數(shù)字電子技術(shù). 西安電子科技大學(xué)出版社<

49、;/p><p>  [5] 周雪. 模擬電子技術(shù). 西安電子科技大學(xué)出版社</p><p>  [6] 楊宏麗 王靜霞. 單片機(jī)基礎(chǔ)教程. 人民郵電出版社</p><p>  [7] 林伸茂 8051單片機(jī)徹底研究經(jīng)驗(yàn)篇.人民郵電出版社</p><p>  [8] 劉文濤 MCS-51單片機(jī)培訓(xùn)教程.電子工業(yè)出版社</p>&

50、lt;p><b>  附 錄</b></p><p><b>  發(fā)射模塊程序:</b></p><p>  //*************單片機(jī)紅外發(fā)射********</p><p>  #include<reg52.h></p><p>  sbit ir=P1^3;<

51、/p><p>  sbit k1=P2^5;</p><p>  sbit k2=P2^4;</p><p>  sbit k3=P2^3;</p><p>  sbit k4=P2^2;</p><p>  sbit k5=P2^1;</p><p>  unsigned int count, s

52、et_count; </p><p>  bit irflag,keyflag; </p><p>  unsigned char irsys[]={0x00,0xff};</p><p>  unsigned char irdata,ircode; </p><p>  void delay(unsigned int a)</

53、p><p><b>  { </b></p><p>  unsigned char i;</p><p>  while(--a!=0)</p><p>  for(i=300;i>0;i--);</p><p><b>  } </b></p><p

54、>  void keyscan()</p><p><b>  {</b></p><p>  /*if(k1==0)</p><p><b>  {</b></p><p>  delay(10);</p><p><b>  if(k1==0)</b

55、></p><p><b>  {</b></p><p>  keyflag=1;</p><p>  while(!k1);</p><p>  irdata=0x01;</p><p><b>  }</b></p><p><b&g

56、t;  }*/</b></p><p><b>  if(k2==0)</b></p><p><b>  {</b></p><p>  delay(10);</p><p><b>  if(k2==0)</b></p><p><

57、b>  {</b></p><p>  keyflag=1;</p><p>  while(!k2);</p><p>  irdata=0x02;</p><p><b>  }</b></p><p><b>  }</b></p>&l

58、t;p><b>  if(k3==0)</b></p><p><b>  {</b></p><p>  delay(10);</p><p><b>  if(k3==0)</b></p><p><b>  {</b></p>&

59、lt;p>  keyflag=1;</p><p>  while(!k3);</p><p>  irdata=0x03;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(k4==0)<

60、/b></p><p><b>  {</b></p><p>  delay(10);</p><p><b>  if(k4==0)</b></p><p><b>  {</b></p><p>  keyflag=1;</p>

61、<p>  while(!k4);</p><p>  irdata=0x04;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(k5==0)</b></p><p><

62、b>  {</b></p><p>  delay(10);</p><p><b>  if(k5==0)</b></p><p><b>  {</b></p><p>  keyflag=1;</p><p>  while(!k5);</p&g

63、t;<p>  irdata=0x05;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void ir_sendbyte() //紅外發(fā)送一個(gè)字節(jié)數(shù)據(jù)</p&

64、gt;<p><b>  { </b></p><p>  unsigned char i; </p><p>  for(i=0;i<8;i++) //發(fā)送8位數(shù)據(jù)</p><p><b>  { </b></p><p>  set_count=43; //發(fā)送編碼中的

65、0.56ms高電平 </p><p>  irflag=1; </p><p>  count=0; </p><p>  TR0=1; </p><p>  while(count<set_count); </p><p><b>  TR0=0; </b><

66、;/p><p>  if(ircode&0x01) set_count=130; //判斷紅外編碼最低位,若為1則1.69ms的低電平</p><p>  else set_count=43; //為0則0.565ms的低電平 </p><p>  irflag=0; </p><p><b>  count=0;<

67、/b></p><p><b>  TR0=1; </b></p><p>  while(count<set_count); </p><p><b>  TR0=0; </b></p><p>  ircode=ircode>>1; </p><p&

68、gt;<b>  } </b></p><p><b>  } </b></p><p>  void ir_send() </p><p><b>  { </b></p><p>  set_count=346; //發(fā)送編碼中的引導(dǎo)碼(4.5ms高電平+4.5ms低電平)

69、 </p><p>  irflag=1; </p><p>  count=0; </p><p><b>  TR0=1; </b></p><p>  while(count<set_count); </p><p><b>  TR0=0; </b>&

70、lt;/p><p>  set_count=346; //發(fā)送編碼中的4.5ms低電平</p><p>  irflag=0; </p><p><b>  count=0; </b></p><p><b>  TR0=1; </b></p><p>  while(count

71、<set_count); </p><p><b>  TR0=0; </b></p><p>  ircode=irsys[0]; </p><p>  ir_sendbyte(); </p><p>  ircode=irsys[1]; </p><p>  ir_sendbyte()

72、; </p><p>  ircode=irdata; //發(fā)送8位數(shù)據(jù)碼 </p><p>  ir_sendbyte(); </p><p>  ircode=~irdata; //發(fā)送8位數(shù)據(jù)反碼 </p><p>  ir_sendbyte();</p><p>  set_count=43; //發(fā)送編碼

73、中的0.56ms高電平 </p><p>  irflag=1; </p><p><b>  count=0; </b></p><p><b>  TR0=1; </b></p><p>  while(count<set_count); </p><p><

74、b>  TR0=0; </b></p><p>  irflag=0; </p><p>  /*delay(23); //延時(shí)23ms(編碼中的23ms低電平) </p><p>  set_count=346; //發(fā)送編碼中的引導(dǎo)碼(4.5ms高電平+4.5ms低電平) </p><p>  irflag=1;

75、</p><p><b>  count=0; </b></p><p><b>  TR0=1; </b></p><p>  while(count<set_count); </p><p><b>  TR0=0; </b></p><p>

76、  set_count=346; </p><p>  irflag=0; </p><p><b>  count=0; </b></p><p><b>  TR0=1; </b></p><p>  while(count<set_count); </p><p>

77、;<b>  TR0=0;*/</b></p><p>  set_count=43; </p><p>  irflag=1; </p><p><b>  count=0; </b></p><p><b>  TR0=1; </b></p><p&

78、gt;  while(count<set_count); </p><p><b>  TR0=0; </b></p><p><b>  irflag=0;</b></p><p>  delay(23); </p><p><b>  }</b></p>

79、<p>  void timer0_init() </p><p><b>  { </b></p><p><b>  EA=1; </b></p><p>  TMOD=0x02; //定時(shí)0 8位自動(dòng)重裝模式 </p><p><b>  ET0=1; &l

80、t;/b></p><p>  TH0=0xe6; //定時(shí)13us,38K紅外矩形波,晶振24M </p><p>  TL0=0xe6; </p><p><b>  } </b></p><p>  void main() </p><p><b>  { <

81、/b></p><p>  timer0_init();</p><p>  count=0; </p><p><b>  ir=0;</b></p><p>  irflag=0; </p><p><b>  while(1) </b></p

82、><p><b>  { </b></p><p>  keyscan(); </p><p>  if(keyflag) </p><p><b>  { </b></p><p>  delay(10); </p><p>  ir_send(

83、); </p><p>  delay(500); </p><p>  keyflag=0; </p><p>  delay(100);</p><p><b>  } </b></p><p><b>  } </b></p><p>

84、;<b>  } </b></p><p>  void timer0() interrupt 1 </p><p><b>  { </b></p><p><b>  count++; </b></p><p>  if(irflag==1)</p><

85、;p>  ir=~ir; //有發(fā)射標(biāo)志,則發(fā)射38khz的矩形波</p><p><b>  else</b></p><p>  ir=0; </p><p><b>  }</b></p><p><b>  接收模塊程序</b></p>&l

86、t;p>  //************紅外接收********************</p><p>  #include<reg52.h></p><p>  #define uchar unsigned char </p><p>  #define uint unsigned int </p><p>  sbit

87、 led1=P2^1;</p><p>  sbit led2=P2^2;</p><p>  sbit led3=P2^3;</p><p>  uchar irtime;</p><p>  uchar startflag;</p><p>  uchar irdata[33];</p><p&

88、gt;  uchar bitnum;</p><p>  uchar irreceok;</p><p>  uchar ircode[4];</p><p>  uchar irprosok,flag;</p><p>  void delay(uint z)</p><p><b>  {</b&g

89、t;</p><p><b>  uint i,j;</b></p><p>  for(i=z;i>0;i--)</p><p>  for(j=120;j>0;j--);</p><p><b>  }</b></p><p>  void timer0ini

90、t()</p><p><b>  {</b></p><p>  TMOD=0x02;</p><p><b>  TH0=0x00;</b></p><p><b>  TL0=0x00;</b></p><p><b>  ET0=1;&

91、lt;/b></p><p><b>  EA=1;</b></p><p><b>  TR0=1;</b></p><p><b>  }</b></p><p>  void int0init()</p><p><b>  {&l

92、t;/b></p><p><b>  IT0=1;</b></p><p><b>  EX0=1;</b></p><p><b>  EA=1;</b></p><p><b>  } </b></p><p>  vo

93、id irpros() </p><p><b>  {</b></p><p>  uchar k,i,j;</p><p>  uchar value;</p><p><b>  k=1;</b></p><p>  for(j=0;j<4;j++)</

94、p><p><b>  {</b></p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p>  value=value>>1; </p><p>  if(irdata[k]>6) </p&g

95、t;<p><b>  {</b></p><p>  value=value | 0x80; </p><p><b>  }</b></p><p><b>  k++;</b></p><p><b>  if(k==33)</b>&l

96、t;/p><p><b>  {</b></p><p><b>  k=1;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  ircode[j]=value;</p&g

97、t;<p><b>  }</b></p><p>  irprosok=1;</p><p><b>  }</b></p><p>  void display()</p><p>  { </p><p>  switch(irco

98、de[2])</p><p><b>  {</b></p><p>  case 0x05:</p><p><b>  led1=1;</b></p><p><b>  led2=1;</b></p><p><b>  led3=1;&

99、lt;/b></p><p><b>  break;</b></p><p>  case 0x02:</p><p><b>  led1=0;</b></p><p><b>  led2=1;</b></p><p><b>  

100、led3=1;</b></p><p><b>  break;</b></p><p>  case 0x03:</p><p><b>  led2=0;</b></p><p><b>  led1=1;</b></p><p><

101、;b>  led3=1;</b></p><p><b>  break;</b></p><p>  case 0x04:</p><p><b>  led3=0;</b></p><p><b>  led1=1;</b></p><

102、p><b>  led2=1;</b></p><p><b>  break;</b></p><p>  //case 0x01: 備用</p><p><b>  }</b></p><p><b>  } </b></p>&

103、lt;p>  void main()</p><p><b>  {</b></p><p>  timer0init();</p><p>  int0init();</p><p><b>  while(1)</b></p><p><b>  {<

104、;/b></p><p>  if(irreceok)</p><p><b>  {</b></p><p><b>  irpros();</b></p><p>  irreceok=0; </p><p>  if(irprosok)</p>&l

105、t;p><b>  {</b></p><p>  if(ircode[2]=~ircode[3])</p><p><b>  {</b></p><p>  display();</p><p><b>  }</b></p><p><

106、b>  delay(5);</b></p><p>  irprosok=0;</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(bitnum>33)</p><p><b>  {&l

107、t;/b></p><p><b>  bitnum=0;</b></p><p>  irreceok=1;</p><p>  startflag=0;</p><p><b>  flag=0;</b></p><p><b>  } </b&

108、gt;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void timer0 () interrupt 1</p><p><b>  {</b></p><p><b>  irtime+

109、+;</b></p><p><b>  }</b></p><p>  void int0 () interrupt 0</p><p><b>  {</b></p><p>  if(startflag)</p><p><b>  {</b

110、></p><p>  if(irtime>31) //檢測(cè)引導(dǎo)碼</p><p><b>  {</b></p><p><b>  bitnum=0;</b></p><p><b>  flag=1;</b></p><p><b

111、>  }</b></p><p><b>  if(flag)</b></p><p><b>  {</b></p><p>  irdata[bitnum]=irtime;</p><p><b>  irtime=0;</b></p>&l

112、t;p><b>  bitnum++;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p&g

113、t;<p>  startflag=1;</p><p><b>  irtime=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  致 謝</b></p>

114、<p>  畢業(yè)設(shè)計(jì)是我大學(xué)學(xué)習(xí)生活的最后一項(xiàng)學(xué)習(xí)任務(wù),是對(duì)我大學(xué)三年學(xué)習(xí)的綜合考核。而也為了使我的綜合素質(zhì)技能可以有一個(gè)很大的提高,這次畢業(yè)設(shè)計(jì),我選擇了郭泉江老師所帶的這個(gè)比較具有實(shí)用性的有意思的課題——紅外遙控電路設(shè)計(jì)。在為期兩個(gè)多月的畢業(yè)設(shè)計(jì)過(guò)程中,我不僅較為系統(tǒng)的復(fù)習(xí)了以前學(xué)的知識(shí),而且又學(xué)習(xí)了許多新知識(shí),使我的知識(shí)結(jié)構(gòu)更加系統(tǒng)化,也更加完善。同時(shí),也提高了我獨(dú)立分析問(wèn)題、解決問(wèn)題的能力。</p>&

115、lt;p>  本次畢業(yè)設(shè)計(jì)能夠順利地完成,首先要感謝我的指導(dǎo)老師凌云老師。凌老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,深厚的學(xué)術(shù)造詣以及忘我的工作精神給我留下了深刻的印象。凌老師的嚴(yán)格要求和孜孜不倦的教導(dǎo)是我完成這次畢業(yè)設(shè)計(jì)的重要保證,他給予了我很大的幫助和支持,在課題研究期間,凌老師提供了很多指導(dǎo)性的意見,對(duì)存在的問(wèn)題給予細(xì)心的分析并提出許多寶貴的意見,使我受益匪淺。在此謹(jǐn)向?qū)煴硎局孕牡母兄x!同時(shí)我要感謝給予我?guī)椭椭С值耐M同學(xué)們,感謝信息工程系

116、的老師為我們做畢業(yè)設(shè)計(jì)提供的各方面的幫助!</p><p>  同時(shí),我要感謝我的母校——江西理工大學(xué),特別是在我即將踏上工作崗位時(shí),給了我這樣一個(gè)鍛煉、學(xué)習(xí)的機(jī)會(huì),使我加深了對(duì)以前知識(shí)的理解,拓寬了知識(shí)面,也提高了我對(duì)所學(xué)知識(shí)的綜合的應(yīng)用能力。</p><p>  在整個(gè)設(shè)計(jì)制作過(guò)程當(dāng)中,我感覺收獲非常大,我獲得的不僅是理論上的收獲,還有實(shí)踐中的豐收,同時(shí)還有的就是同學(xué)們之間的合作精神。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論