基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(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)介

課程設(shè)計(jì)基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)學(xué)院:計(jì)算機(jī)與通信工程學(xué)院專業(yè):通信工程班級(jí):通信11-3班姓名:學(xué)號(hào):摘要本設(shè)計(jì)采用51單片機(jī)作為遙控發(fā)射接收芯片,HS003B作為紅外一體化接收發(fā)射管,在此根底上設(shè)計(jì)了一個(gè)簡(jiǎn)易的智能紅外遙控系統(tǒng)。系統(tǒng)包括接收和發(fā)射兩大局部,發(fā)射局部有16個(gè)按鍵,接收局部含有8盞彩色LED燈、一片二位數(shù)碼管和蜂鳴器系統(tǒng)。發(fā)射局部通過(guò)鍵盤掃描判斷哪個(gè)鍵被按下,經(jīng)過(guò)單片機(jī)編碼程序進(jìn)行編碼,控制紅外發(fā)射電路發(fā)送信號(hào)。接收局部解碼信號(hào),實(shí)現(xiàn)相應(yīng)的輸出。本設(shè)計(jì)方案結(jié)合紅外遙控設(shè)計(jì)簡(jiǎn)單、作方便、本錢低廉等特點(diǎn)。關(guān)鍵字:紅外遙控信號(hào)調(diào)制編碼解碼目錄摘要II1.緒論11.1課題目的和意義11.2紅外線簡(jiǎn)介11.3紅外遙控系統(tǒng)簡(jiǎn)介12課題方案和設(shè)計(jì)思路22.1總體方案22.2紅外發(fā)射器設(shè)計(jì)3紅外發(fā)射器原理3紅外編碼32.3紅外接收端設(shè)計(jì)43硬件結(jié)構(gòu)設(shè)計(jì)與介紹53.1AT89C51系列單片機(jī)功能特點(diǎn)53.1.1主要特性53.1.2管腳說(shuō)明5根本電路73.2紅外發(fā)射電路83.3紅外接收電路設(shè)計(jì)93.3.1紅外接收模塊9數(shù)碼管93.3.3彩燈系統(tǒng)10蜂鳴器系統(tǒng)11紅外接收端電路圖124軟件設(shè)計(jì)124.1定時(shí)/計(jì)數(shù)器功能簡(jiǎn)介124.2遙控碼的發(fā)射134.3紅外接收145.課程設(shè)計(jì)總結(jié)和心得15參考文獻(xiàn)16附錄17附錄1Proteus仿真圖17附錄2發(fā)射程序17附錄3接收程序201.緒論1.1課題目的和意義隨著科技的開(kāi)展,人們生活的節(jié)奏也越來(lái)越快,隨之人們對(duì)方便,快捷的要求也隨之不斷增高。遙控器的出現(xiàn),在一定程度上滿足了人們這個(gè)要求。遙控器是由高產(chǎn)的創(chuàng)造家RobertAdler在五十年代創(chuàng)造的[1]。而紅外遙控是20世紀(jì)70年代才開(kāi)始開(kāi)展起來(lái)的一種遠(yuǎn)程控制技術(shù),其原理是利用紅外線來(lái)傳遞控制信號(hào),實(shí)現(xiàn)對(duì)控制對(duì)象的遠(yuǎn)距離控制,具體來(lái)講,就是有發(fā)射器發(fā)出紅外線指令信號(hào),有接收器接收下來(lái)并對(duì)信號(hào)進(jìn)行處理,最后實(shí)現(xiàn)對(duì)控制對(duì)象的各種功能的遠(yuǎn)程控制。紅外遙控具有獨(dú)立性、物理特性與可見(jiàn)光相似性、無(wú)穿透障礙物的能力及較強(qiáng)的隱蔽性等特點(diǎn)。隨著紅外遙控技術(shù)的開(kāi)發(fā)和迅速開(kāi)展,很多電器采用該項(xiàng)技術(shù),使人們的生活更加便捷。本小組通過(guò)紅外遙控技術(shù)來(lái)控制多盞彩燈的亮滅情況,實(shí)現(xiàn)各種花型以及數(shù)碼管的數(shù)值顯示。通過(guò)本課題的設(shè)計(jì),更好的理解紅外線的編碼解碼方式及其紅外遙控系統(tǒng)的其他工作原理。1.2紅外線簡(jiǎn)介紅外線又稱紅外光波,在電磁波譜中,光波的波長(zhǎng)范圍為0.01um~1000um。根據(jù)波長(zhǎng)的不同可分為可見(jiàn)光和不可見(jiàn)光,波長(zhǎng)為0.38um~0.76um的光波可為可見(jiàn)光,依次為紅、橙、黃、綠、青、藍(lán)、紫七種顏色。光波為0.01um~0.38um的光波為紫外光(線),波長(zhǎng)為0.76um~1000um的光波為紅外光(線)。紅外光按波長(zhǎng)范圍分為近紅外、中紅外、遠(yuǎn)紅外、極紅外4類。紅外線遙控是利用近紅外光傳送遙控指令的,波長(zhǎng)為0.76um~1.5um。用近紅外作為遙控光源,是因?yàn)槟壳凹t外發(fā)射器件(紅外發(fā)光管)與紅外接收器件(光敏二極管、三極管及光電池)的發(fā)光與受光峰值波長(zhǎng)一般為0.8um~0.94um,在近紅外光波段內(nèi),二者的光譜正好重合,能夠很好地匹配,可以獲得較高的傳輸效率及較高的可靠性。1.3紅外遙控系統(tǒng)簡(jiǎn)介紅外遙控系統(tǒng)主要由遙控發(fā)射器、一體化接收頭、單片機(jī)、接口電路組成,遙控器用來(lái)產(chǎn)生遙控編碼脈沖,驅(qū)動(dòng)紅外發(fā)射管輸出紅外遙控信號(hào),遙控接收頭完成對(duì)遙控信號(hào)的放大、檢波、整形、解調(diào)出遙控編碼脈沖。遙控編碼脈沖是一組串行二進(jìn)制碼,對(duì)于一般的紅外遙控系統(tǒng),此串行碼輸入到微控制器,由其內(nèi)部CPU完成對(duì)遙控指令解碼,并執(zhí)行相應(yīng)的遙控功能。使用遙控器作為控制系統(tǒng)的輸入,需要解決如下幾個(gè)關(guān)鍵問(wèn)題:如何接收紅外遙控信號(hào);如何識(shí)別紅外遙控信號(hào)以及解碼軟件的設(shè)計(jì)、控制程序的設(shè)計(jì)。紅外遙控是單工的紅外通信方式,整個(gè)通信中,需要一個(gè)發(fā)射端和一個(gè)接收端。發(fā)送端采用單片機(jī)將待發(fā)送的二進(jìn)制信號(hào)編碼調(diào)制為一系列的脈沖串信號(hào),通過(guò)紅外發(fā)射管發(fā)射紅外信號(hào)。紅外接收端普遍采用價(jià)格廉價(jià),性能可靠的一體化紅外接收頭接收紅外信號(hào),它同時(shí)對(duì)信號(hào)進(jìn)行放大、檢波、整形,得到TTL。2課題方案和設(shè)計(jì)思路2.1總體方案紅外遙控系統(tǒng)一般由紅外發(fā)射裝置和紅外接收設(shè)備兩大局部組成,圖2為所示為結(jié)構(gòu)框圖。VCCINTOAT89C51GNDVCCINTOAT89C51GND紅外接收器〔一體化接收器〕Vcc紅外接收器〔一體化接收器〕紅外發(fā)射電路〔遙控鍵盤〕紅外發(fā)射電路〔遙控鍵盤〕OUT圖2-1系統(tǒng)結(jié)構(gòu)框圖紅外發(fā)射裝置又由鍵盤電路、紅外編碼芯片、電源和紅外發(fā)射電路組成。紅外接收設(shè)備可由紅外接收電路、紅外解碼芯片、電源和應(yīng)用電路組成。2.2紅外發(fā)射器設(shè)計(jì)2.2.1紅外發(fā)射器原理由于指令數(shù)據(jù)時(shí)間周期較長(zhǎng),信號(hào)頻率很低,直接發(fā)射傳送效率和距離受限,抗干擾性差,因此,必須采用二次調(diào)制方式,將指令數(shù)據(jù)通過(guò)載波信號(hào)進(jìn)行調(diào)制,形成較高頻率的復(fù)合信號(hào),在通過(guò)紅外發(fā)射二極管產(chǎn)生紅外線發(fā)射出去。鍵盤編碼調(diào)制紅外發(fā)射鍵盤編碼調(diào)制紅外發(fā)射38KHz38KHz載波發(fā)生器圖2-2紅外遙控發(fā)射原理框圖2.2.2紅外編碼紅外編碼有很多種方式,本課題采用脈沖寬度調(diào)制方案,這種遙控碼具有以下特征:以脈寬為0.565ms、間隔0.56ms、周期為1.125ms的組合表示二進(jìn)制的“0〞;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的組合表示二進(jìn)制的“1〞。波形如下列圖。位“0〞位“1〞0.56ms0.56ms1.125ms2.25ms圖2-3位“0〞和位“1〞波形圖在此介紹較普遍使用的NEG標(biāo)準(zhǔn)。其數(shù)據(jù)格式包括引導(dǎo)碼、用戶碼、數(shù)據(jù)碼和數(shù)據(jù)反碼,編碼共占32位。數(shù)據(jù)反碼是數(shù)據(jù)碼反相后的編碼,編碼用于對(duì)數(shù)據(jù)的糾錯(cuò)。9ms4.5msC0-C7C0’-C7’D0-D7D0’-D7’起始引導(dǎo)碼用戶碼用戶碼數(shù)據(jù)碼數(shù)據(jù)碼8bit8bit8bit8bit13.5ms18-36ms27ms圖2-4數(shù)據(jù)格式2.3紅外接收端設(shè)計(jì)接收端主要包括紅外接收模塊和解調(diào)單片機(jī)。其中,紅外線接收模塊包括光電轉(zhuǎn)換放大器和解調(diào)電路。當(dāng)紅外線發(fā)射信號(hào)進(jìn)入模塊后,在其輸出端得到原先的數(shù)字控制編碼,再經(jīng)過(guò)單片機(jī)解碼程序進(jìn)行解碼,便知按下那個(gè)鍵,實(shí)現(xiàn)相應(yīng)輸出。P0.0連接蜂鳴器系統(tǒng),每成功接收到信號(hào),蜂鳴器發(fā)出一聲響聲。P1口連接8盞彩燈,接收數(shù)據(jù)不同彩燈的花色不同,P2口、P3.0和P3.1連接一片二位數(shù)管,數(shù)碼管顯示從01到16的數(shù)值,分別對(duì)應(yīng)發(fā)射局部的16個(gè)按鍵。紅外接收端數(shù)碼管顯示AT89C51紅外接收端數(shù)碼管顯示AT89C51蜂鳴器系統(tǒng)蜂鳴器系統(tǒng)8盞LED彩燈+5V電源8盞LED彩燈+5V電源圖2-5接收局部原理框圖3硬件結(jié)構(gòu)設(shè)計(jì)與介紹3.1AT89C51系列單片機(jī)功能特點(diǎn)3.1.1主要特性·與MCS-51兼容·4K字節(jié)可編程閃爍存儲(chǔ)器·壽命:1000寫/擦循環(huán)·數(shù)據(jù)保存時(shí)間:10年·全靜態(tài)工作:0Hz-24Hz·三級(jí)程序存儲(chǔ)器鎖定·128*8位內(nèi)部RAM·32可編程I/O線·兩個(gè)16位定時(shí)器/計(jì)數(shù)器·5個(gè)中斷源·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時(shí)鐘電路3.1.2管腳說(shuō)明—VCC:供電電壓?!狦ND:接地?!狿0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每個(gè)管腳可吸收8TTL門電流。當(dāng)P1口的管腳寫“1〞時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時(shí),P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部電位必須被拉高?!狿1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入“1〞后,電位被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收?!狿2口: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)和控制信號(hào)。—P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1〞后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時(shí),由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,如下所示:P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2(外部中斷0)P3.3(外部中斷1)P3.4T0(記時(shí)器0外部輸入)P3.5T1(記時(shí)器1外部輸入)P3.6(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)?!猂ST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。—:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令時(shí)ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效?!和獠砍绦虼鎯?chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取址期間,每個(gè)機(jī)器周期兩次有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的信號(hào)將不出現(xiàn)?!寒?dāng)保持低電平時(shí),訪問(wèn)外部ROM;注意加密方式1時(shí),將內(nèi)部鎖定為RESET;當(dāng)端保持高電平時(shí),訪問(wèn)內(nèi)部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。—XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入?!猉TAL2:來(lái)自反向振蕩器的輸出3.1.3根本電路在XTAL1和XTAL2之間接一只石英振蕩晶體構(gòu)成了單片機(jī)的時(shí)鐘電。AT89C51復(fù)位引腳RST/VP通過(guò)片內(nèi)一個(gè)施密特觸發(fā)器(抑制噪聲作用)與片內(nèi)復(fù)位電路相連,施密特觸發(fā)器的輸出在每一個(gè)機(jī)器周期由復(fù)位電路采樣一次。當(dāng)振蕩電路工作,并且在RST引腳上加一個(gè)至少保持2個(gè)機(jī)器周期的高電平時(shí),就能使AT89C51完成一次復(fù)位。復(fù)位不影響RAM的內(nèi)容。復(fù)位后,PC指向0000H單元,使單片機(jī)從起始地址0000H單元開(kāi)始重新執(zhí)行程序。所以,當(dāng)單片機(jī)運(yùn)行出錯(cuò)或進(jìn)入死循環(huán)時(shí),可按復(fù)位鍵重新啟動(dòng)。MCS-51單片機(jī)通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種復(fù)位方式。上電復(fù)位利用電容器充電來(lái)實(shí)現(xiàn)。按鈕復(fù)位又分為按鈕電平復(fù)位和按鈕脈沖復(fù)位。前者將復(fù)位端通過(guò)電阻與Vcc相接;后者利用RC微分電路產(chǎn)生正脈沖來(lái)到達(dá)復(fù)位目的。復(fù)位電路參數(shù)的選擇應(yīng)能保證復(fù)位高電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。圖3-1AT89C51根本電路3.2紅外發(fā)射電路本遙控發(fā)射器采用脈沖寬度調(diào)制紅外遙控方式,脈沖寬度調(diào)制紅外遙控就是指令信號(hào)產(chǎn)生電路以不同的脈沖編碼代表不同的控制指令。在確定選擇AT89C51作為本設(shè)計(jì)發(fā)射電路核心芯片和點(diǎn)觸式開(kāi)關(guān)作為控制鍵后,加上一個(gè)簡(jiǎn)單紅外發(fā)射電路和12M晶體震蕩器便可實(shí)現(xiàn)紅外發(fā)射。發(fā)射局部的主要元件為紅外發(fā)光二極管。它實(shí)際上是一只特殊的發(fā)光二極管,由于其內(nèi)部材料不同于普通發(fā)光二極管,因而在其兩端施加一定電壓時(shí),它發(fā)出的便是紅外線而不是可見(jiàn)光。目前大量使用的紅外發(fā)光二極管發(fā)出的紅外線波長(zhǎng)為940nm左右,外形與普通Φ5發(fā)光二極管相同,只是顏色不同[6]。遙控發(fā)射通過(guò)鍵盤,每按下一個(gè)鍵,即產(chǎn)生具有不同的編碼數(shù)字脈沖,這種代碼指令信號(hào)調(diào)制在38KHz的載波上,鼓勵(lì)紅外光二極管產(chǎn)生不同的脈沖,通過(guò)空間的傳送到受控機(jī)的遙控接收器。P1口作為按鍵局部,P3.6口作為發(fā)射局部。獨(dú)立式鍵盤可工作在查詢方式下,通過(guò)I/O口讀入鍵狀態(tài),當(dāng)有鍵被按下時(shí)I/O口變?yōu)榈碗娖?,而未被按下的鍵對(duì)應(yīng)為高電平,這樣通過(guò)讀電平狀態(tài)可判斷是否有鍵按下和哪個(gè)鍵被按下。圖3-2紅外發(fā)射端電路3.3紅外接收電路設(shè)計(jì)3.3.1紅外接收模塊HS003B是一種常見(jiàn)的紅外接收模塊。紅外接收模塊內(nèi)部含有高頻的濾波電路,專門用來(lái)濾除紅外合成信號(hào)的載波信號(hào)〔38KHz〕,并送出接收到的信號(hào)。模塊有3個(gè)引腳;引腳1〔GND〕為接地端;引腳2〔VCC〕為為電源正極;引腳3〔OUT〕為數(shù)字信號(hào)輸出端。123圖3-3HS003B紅外接收模塊3.3.2數(shù)碼管表3-1七段LED字形碼顯示字符共陽(yáng)極字符碼共陰極字符碼03FHC0H106HF9H25BHA4H34FHB0H466H99H56DH92H67DH82H707HF8H87FH80H96FH90H圖3-4二位數(shù)碼管顯示器設(shè)計(jì)中用到型號(hào)為7SEG-MAX2-CA-BLUE的二位共陽(yáng)極數(shù)碼管顯示器。它的左下側(cè)的ABCDEFGDP是LED數(shù)碼管顯示器的I/O口,是段選信號(hào),右下側(cè)的12是它的位選信號(hào),就是從左到右分別是第一位到第二位,段選信號(hào)與位選信號(hào)分別接到單片機(jī)的不同輸出口,例如段選信號(hào)可以接到P2口,位選信號(hào)可以接到P3.0口和P3.1口,共陽(yáng)極的字形顯示代碼為:unsignedchar[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90},P3.0輸出為0,P3.1輸出為1時(shí),選中第二位,段選信號(hào)就執(zhí)行從0到9的顯示,P3.0輸出為1,P3.1輸出為0時(shí),選中第一位,段選信號(hào)就執(zhí)行從0到9的顯示。3.3.3彩燈系統(tǒng)P1口連接8盞彩燈,P1.0和P1.4連接的是LED-RED,P1.1和P1.5連接的是LED-YELLOW,P1.2和P1.6連接的是LED-GREEN,P1.3和P1.7連接的是LED-BLUE。根據(jù)接收到的信號(hào)顯示不同的花型。圖3-5彩燈系統(tǒng)連接圖3.3.4蜂鳴器系統(tǒng)P0.0連接蜂鳴器系統(tǒng),每成功接收到信號(hào),蜂鳴器發(fā)出一聲響聲。圖3-6蜂鳴器系統(tǒng)連接圖3.3.5紅外接收端電路圖圖3-7紅外接收端電路圖4軟件設(shè)計(jì)4.1定時(shí)/計(jì)數(shù)器功能簡(jiǎn)介AT89C51單片機(jī)內(nèi)部設(shè)有兩個(gè)16位可編程的定時(shí)/計(jì)數(shù)器,簡(jiǎn)稱定時(shí)器0和定時(shí)器1,分別用T0和T1表示。其功能同一般定時(shí)計(jì)數(shù)器,主要作用是:第一,作為一段特定時(shí)間長(zhǎng)短的定時(shí);第二,可以計(jì)算由T1或T0引腳輸入的脈沖數(shù),前者在應(yīng)用上可以產(chǎn)生正確的時(shí)間延遲及定時(shí)去執(zhí)行中斷效勞程序,而后者那么是計(jì)數(shù)器或者計(jì)頻器的設(shè)計(jì)。這兩個(gè)定時(shí)器本身有四種工作模式可供使用,如表2所示。表4-1四種工作模式M1MO工作方式功能說(shuō)明00模式013位計(jì)數(shù)器01模式116位計(jì)數(shù)器10模式28位自動(dòng)重裝計(jì)數(shù)器11模式3定時(shí)器0:分成兩個(gè)8位計(jì)數(shù)器定時(shí)器1:停止計(jì)數(shù)4.2遙控碼的發(fā)射當(dāng)某個(gè)操作按鍵按下時(shí),單片機(jī)先讀出鍵值,然后根據(jù)鍵值設(shè)定遙控碼的脈沖個(gè)數(shù),再調(diào)制成38kHz方波由紅外線發(fā)光管發(fā)射出去[13]。通常,紅外遙控是將遙控信號(hào)〔二進(jìn)制脈沖碼〕調(diào)制在38KHz的載波上,經(jīng)緩沖放大后送至紅外發(fā)光二極管,轉(zhuǎn)化為紅外信號(hào)發(fā)射出去的。為了提高抗干擾性能和降低電源消耗,將上述的遙控編碼脈沖對(duì)頻率為38KHz〔周期為26us〕的載波信號(hào)進(jìn)行脈幅調(diào)制〔PAM〕,再經(jīng)緩沖放大后送到紅外發(fā)光管,將遙控信號(hào)發(fā)射出去。紅外信號(hào)發(fā)射過(guò)程:首先發(fā)射9ms高電平和4.5ms低電平的引導(dǎo)碼,再發(fā)送16位地址碼的前8位,16位地址碼的后8位,8位按鍵數(shù)據(jù)和8位按鍵數(shù)據(jù)反碼。在實(shí)踐中,采用紅外線遙控方式時(shí),由于受遙控距離,角度等影響,使用效果不是很好,如采用調(diào)頻或調(diào)幅發(fā)射接收碼,可提高遙控距離,并且沒(méi)有角度影響。發(fā)射控制程序由主程序和鍵掃描程序、編碼發(fā)送程序組成,在主程序中,采用鍵掃描子程序完成各個(gè)按鍵的功能,遙控發(fā)射主程序的流程圖開(kāi)始系統(tǒng)初始化〔發(fā)送標(biāo)志清零按鍵信息置位〕開(kāi)始系統(tǒng)初始化〔發(fā)送標(biāo)志清零按鍵信息置位〕檢測(cè)并獲取按鍵值發(fā)送按鍵發(fā)送9ms起始碼發(fā)送4.5ms結(jié)束碼發(fā)送16位地址的前8位發(fā)送16位地址的后8位發(fā)送8位按鍵數(shù)據(jù)發(fā)送8位按鍵數(shù)據(jù)反碼(a)紅外發(fā)射主程序流程圖〔b〕紅外數(shù)據(jù)發(fā)送子程序流程圖圖4-1紅外發(fā)射端程序流程圖4.3紅外接收紅外遙控解碼程序主要工作為等待紅外線信號(hào)出現(xiàn),并跳過(guò)引導(dǎo)信號(hào),搜集連續(xù)32位的編碼數(shù)據(jù),并存入內(nèi)存的連續(xù)空間。其位信號(hào)判別的原那么是:以判斷各個(gè)位的波寬信號(hào)來(lái)決定上下信號(hào)〔0或1〕。位解碼原理如下:解碼為0:高電平寬度0.56ms+低電平寬度0.56ms。解碼為1:高電平寬度0.56ms+低電平寬度1.68ms。編碼數(shù)據(jù)讀取后,經(jīng)過(guò)單片機(jī)將編碼數(shù)據(jù)與鍵盤代碼進(jìn)行比對(duì),即可解調(diào)出具體的按鍵值,便可知按下哪個(gè)鍵,而做出相應(yīng)的控制處理,完成紅外遙控的動(dòng)作。初始化〔開(kāi)中斷,顯示初始化〕開(kāi)始初始化〔開(kāi)中斷,顯示初始化〕開(kāi)始接收到按鍵信息實(shí)現(xiàn)相應(yīng)控制輸出中斷開(kāi)始接收到引導(dǎo)碼開(kāi)始接收數(shù)據(jù)數(shù)據(jù)碼和數(shù)據(jù)反碼是否相反成功接收,保存數(shù)據(jù)中斷返回YYNNYY紅外接收主程序流程圖〔b〕紅外接收中斷子程序流程圖圖4-2紅外接收端程序流程圖5.課程設(shè)計(jì)總結(jié)和心得這次課程設(shè)計(jì)耗用了2個(gè)星期的心血,從一開(kāi)始確實(shí)定課題,到后來(lái)的資料查找、理論學(xué)習(xí),再有就是調(diào)試和測(cè)試過(guò)程,這一切都使我的理論知識(shí)和動(dòng)手能力進(jìn)一步提高。通過(guò)本次紅外系統(tǒng)的設(shè)計(jì),我大有收獲。從得到題目到查找資料,從proteus仿真的調(diào)試到失敗后再一次全部重新開(kāi)始……在這一個(gè)充滿挑戰(zhàn)伴隨挫折,充滿熱情伴隨打擊的過(guò)程中,我感觸頗深,它已不僅是一個(gè)對(duì)我三學(xué)習(xí)知識(shí)情況和我的應(yīng)用動(dòng)手能力的檢驗(yàn),而且還是對(duì)我的鉆研精神,面對(duì)困難的心態(tài),做事的毅力和耐心的考驗(yàn)。我在這個(gè)過(guò)程中深刻的感受到了做課程設(shè)計(jì)的意義所在。這個(gè)課題的根本技術(shù)就是單片機(jī)控制技術(shù),加局部外圍電路來(lái)實(shí)現(xiàn)一些復(fù)雜的功能??梢愿鶕?jù)要求改變軟件來(lái)實(shí)現(xiàn)功能的更新和擴(kuò)展。本課題的重點(diǎn)、難點(diǎn)是:〔1〕考慮電路實(shí)現(xiàn)原理以及與單片機(jī)的接口;〔2〕紅外發(fā)送與接收技術(shù);通過(guò)完本錢課題,我了解并掌握了紅外遙控技術(shù)的根本理論知識(shí),更深入的掌握單片機(jī)在實(shí)際電路中的開(kāi)發(fā)和應(yīng)用。為以后從事單片機(jī)軟硬件產(chǎn)品的設(shè)計(jì)開(kāi)發(fā)打下了一定的根底,培養(yǎng)了從事產(chǎn)品研發(fā)的信心。參考文獻(xiàn)[1]單片機(jī)原理與應(yīng)用及C51程序設(shè)計(jì),夏維成楊加國(guó)編著,清華大學(xué)出版社。[2]C語(yǔ)言程序設(shè)計(jì)〔第三版〕,譚浩強(qiáng)編著,清華大學(xué)出版社。[3]單片機(jī)系統(tǒng)設(shè)計(jì)與仿真—基于Proteus,肖婧編著,北京航空航天大學(xué)出版社。[4]DIY玩轉(zhuǎn)51單片機(jī),王守中編著,電子工業(yè)出版社。[5]單片機(jī)側(cè)控技術(shù)應(yīng)用實(shí)例解析,許江淳陳顯寧陳焰付麗霞編著,中國(guó)電力出版社。[6]單片機(jī)接口模塊應(yīng)用與開(kāi)發(fā)實(shí)例詳解,薛小玲劉志群賈俊榮編著,北京航空航天大學(xué)出版社。附錄附錄1Proteus仿真圖附錄2發(fā)射程序#include<REG51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint#defineSBM0x80#definem9(65536-9000) #definem4_5(65536-4500) #definem1_6(65536-1630) #definem_65(65536-580) #definem_56(65536-560) #definem40(65536-40000)#definem56(65536-56000)#definem2_25(65536-2250)sbitIR=P3^6; sbitLED=P3^7; ucharKEY(void);voidSanZhuan(void);voidZZ(ucharx);voidZ0(uchartemp);voidTT0(bitBT,uintx);voidYS(uchartime);voidmain(void){TMOD=0x01;IR=1; while(1){SanZhuan();}}ucharKEY(void){ucharH,L;H=0;L=0;P1=0xf0;if(P1!=0xf0){YS(10);if(P1!=0xf0){H=P1&0xf0;P1=0x0f;L=P1&0x0f;} return(H+L);}return0;}voidSanZhuan(void){ucharv;v=KEY();switch(v){case0x77:ZZ(0x01);v=0;break; case0xb7:ZZ(0x02);v=0;break; case0xd7:ZZ(0x03);v=0;break; case0xe7:ZZ(0x04);v=0;break; case0x7b:ZZ(0x05);v=0;break; case0xbb:ZZ(0x06);v=0;break; case0xdb:ZZ(0x07);v=0;break; case0xeb:ZZ(0x08);v=0;break; case0x7d:ZZ(0x09);v=0;break; case0xbd:ZZ(0x10);v=0;break; case0xdd:ZZ(0x11);v=0;break; case0xed:ZZ(0x12);v=0;break; case0x7e:ZZ(0x13);v=0;break; case0xbe:ZZ(0x14);v=0;break; case0xde:ZZ(0x15);v=0;break; case0xee:ZZ(0x16);v=0;break; default:v=0;}}voidZZ(ucharx){TT0(1,m9); TT0(0,m4_5); Z0(SBM); Z0(~SBM);Z0(x);Z0(~x);TT0(1,m_65);TT0(0,m40);while(KEY()){TT0(1,m9);TT0(0,m2_25);TT0(1,m_56);TT0(0,m40);TT0(0,m56);LED=!LED; }LED=1; }voidZ0(uchartemp){ucharv;for(v=0;v<8;v++){TT0(1,m_65); if(temp&0x01)TT0(0,m1_6); elseTT0(0,m_56); temp>>=1;}}voidTT0(bitBT,uintx){TH0=x>>8; TL0=x;TF0=0; TR0=1; if(BT==0)while(!TF0); elsewhile(1) { IR=0; if(TF0)break; if(TF0)break; IR=1; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; if(TF0)break; }TR0=0; TF0=0; IR=1; }voidYS(uchartime){uchari,j; for(i=0;i<time;i++)for(j=0;j<247;j++)_nop_();}附錄3接收程序#include<reg51.h>sbitIRIN=P3^2;sbitSPK=P0^0;sbitRELAY=P2^7;sbitP3_0=P3^0;sbitP3_1=P3^1;unsignedcharIRDATA[7];unsignedchartab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsignedcharX1,X2;voidIRZ();voidXSQ();voidmain(){EA=1;EX0=1;IT0=1;P1=0xff;P2=0xc0;P3_0=0;P3_1=0;SP

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論