基于fpga的紅外遙控器設(shè)計(jì)【畢業(yè)論文】_第1頁(yè)
已閱讀1頁(yè),還剩38頁(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>  本科畢業(yè)設(shè)計(jì)</b></p><p><b>  (20 屆)</b></p><p>  基于FPGA的紅外遙控器設(shè)計(jì)</p><p>  所在學(xué)院 </p><p>  專業(yè)班級(jí) 電子信息工程

2、 </p><p>  學(xué)生姓名 學(xué)號(hào) </p><p>  指導(dǎo)教師 職稱 </p><p>  完成日期 年 月 </p><p><b>  摘 要</b><

3、/p><p>  紅外遙控器成本低廉、功耗低、連接方便、簡(jiǎn)單易用,在很多小型移動(dòng)設(shè)備中得到了廣泛的應(yīng)用。目前,紅外遙控器已經(jīng)成為家用電器的標(biāo)準(zhǔn)部件。電視機(jī)、錄像機(jī)、DVD、音頻功放、空調(diào)等設(shè)備的幾乎所有功能都可以通過(guò)紅外遙控器來(lái)控制。</p><p>  本文介紹了紅外遙控的設(shè)計(jì)以及完整的軟件解碼方案、源程序、應(yīng)用方法。并且探討了了一種較為典型的紅外遙控系統(tǒng)的設(shè)計(jì)思路,介紹了由PT2248作為

4、發(fā)送器,用VHDL編寫(xiě)程序,運(yùn)用FPGA實(shí)現(xiàn),下載到EDA實(shí)驗(yàn)板上實(shí)現(xiàn)解碼的設(shè)計(jì)方法。為各類遙控器的開(kāi)發(fā)應(yīng)用提供了一個(gè)非常有用的參考。系統(tǒng)原理簡(jiǎn)單,可靠性好,能夠及時(shí)發(fā)現(xiàn)誤碼,防止誤操作的產(chǎn)生。可應(yīng)用于一般控制場(chǎng)合。該實(shí)現(xiàn)方法,外部電路連接簡(jiǎn)單,操作方便。已在實(shí)際中得到應(yīng)用。</p><p>  關(guān)鍵詞:紅外遙控囂;FPGA;VHDL;PT2248</p><p><b>  A

5、bstract</b></p><p>  Infrared remote control and low cost, low power consumption, easy connection, easy to use, in many small mobile devices have been widely used. At present, the infrared remote contr

6、ol has become a standard part of household appliances. TV, VCR, DVD, audio amplifier, air conditioning and other equipment for virtually all functions can be controlled by infrared remote control.</p><p>  T

7、his tent introduces the design of the in frared remote control system and intact software decode scheme,source code and application method.At 1ast it offers a practicaal reference for a11 kinds of infrared remete control

8、ler.The implementation method, the external circuit connection is simple, easy to operate. Introduced by the PT2248 as a transmitter, VHDL programming, the use of FPGA, EDA downloaded to the experimental board design to

9、achieve decoding. For all types of development and applicat</p><p>  Key Words: remote control;VHDL;FGPA;PT2248;</p><p><b>  目 錄</b></p><p><b>  1 引言1</b>&

10、lt;/p><p>  1.1 遙控器的發(fā)展歷程1</p><p>  1.2 遙控器的種類及應(yīng)用2</p><p>  1.3 論文的研究?jī)?nèi)容及安排4</p><p>  2 紅外遙控的方法6</p><p>  2.1 發(fā)射系統(tǒng)6</p><p>  2.2 接收系統(tǒng)7</p

11、><p>  2.3 紅外原理7</p><p>  3 基于FPGA的紅外遙控器的實(shí)現(xiàn)9</p><p>  3.1 設(shè)計(jì)要求9</p><p>  3.2 設(shè)計(jì)分析與設(shè)計(jì)思路9</p><p>  3.3 遙控器原理10</p><p>  3.4 各模塊的設(shè)計(jì)與實(shí)現(xiàn)15</p

12、><p>  4 波形仿真與分析19</p><p>  4.1 解碼器20</p><p>  4.2 譯碼器20</p><p>  4.3 鍵盤(pán)掃描模塊21</p><p>  4.4 動(dòng)態(tài)掃描顯示模塊21</p><p>  4.5 用戶顯示模塊22</p><

13、;p>  4.6 整體設(shè)計(jì)、仿真22</p><p><b>  結(jié)論24</b></p><p><b>  致 謝24</b></p><p><b>  參考文獻(xiàn)25</b></p><p><b>  1 引言</b></p&

14、gt;<p>  IT技術(shù)的快速發(fā)展使得越來(lái)越多的新生家電走向市場(chǎng)。國(guó)內(nèi)經(jīng)濟(jì)的迅速提高更使得居民有能力購(gòu)買(mǎi)各式各樣的家電。因此常常要因?yàn)椴倏夭煌募译姸鼡Q不同的遙控器,這讓用戶倍感不便。能夠用一個(gè)遙控器控制不同家電的多功能遙控器,就應(yīng)允而生。本文運(yùn)用FPGA設(shè)計(jì)了一種紅外遙控器。操作簡(jiǎn)單方便,并且功能強(qiáng)大。</p><p>  1.1 遙控器的發(fā)展歷程</p><p>  

15、遙控器是一種用來(lái)遠(yuǎn)控機(jī)械的裝置?,F(xiàn)代的遙控器,主要是由集成電路電板和用來(lái)產(chǎn)生不同訊息的按鈕所組成。</p><p>  到底是誰(shuí)發(fā)明了第一個(gè)遙控器已無(wú)可考證了。但最早的遙控器之一,是一個(gè)</p><p>  叫尼古拉·特斯拉(Nikola Tesla)(1856—1943)的發(fā)明家(他曾經(jīng)為愛(ài)迪生工作,同樣被譽(yù)為天才發(fā)明家)在1898年時(shí)開(kāi)發(fā)出來(lái)的(美國(guó)專利613809號(hào)),叫做

16、“Method of and Apparatus for Controlling Mechanism of Moving Vehicleor Vehicles”。到了6 0年代初,一些發(fā)達(dá)國(guó)家開(kāi)始研究民用產(chǎn)品的遙控技術(shù),但由于受當(dāng)時(shí)技術(shù)條件的限制,遙控技術(shù)發(fā)展很緩慢。7 0年代末,隨著大規(guī)模集成電路和計(jì)算機(jī)技術(shù)的發(fā)展,遙控技術(shù)才得到快速發(fā)展。在遙控方式上大體經(jīng)歷了從有線到無(wú)線的超聲波、從振動(dòng)子到紅外線、再到使用總線的微機(jī)紅外遙控這樣幾個(gè)

17、階段。無(wú)論采用何種方式,準(zhǔn)確無(wú)誤地傳輸信號(hào),最終達(dá)到滿意的控制效果是非常重要的。最初的無(wú)線遙控裝置采用的是電磁波傳輸信號(hào),由于電磁波容易產(chǎn)生干擾,也易受干擾,因此逐漸采用超聲波和紅外線媒介來(lái)傳輸信號(hào)。與紅外線相比,超聲傳感器頻帶窄,所能攜帶的信息量少,易受干擾而引起誤動(dòng)作。較為理想的是光控方式,采用紅外線的遙控方式逐漸取代了超聲波遙控方式,出現(xiàn)了紅外線多功能遙控器,并且成為當(dāng)今時(shí)代的</p><p>  由于紅外

18、線在頻譜上位于可見(jiàn)光之外,所以抗干擾性強(qiáng),具有光波的直線傳</p><p>  播特性,不易產(chǎn)生相互間的干擾,是很好的信息傳輸媒體。信息可以直接對(duì)紅外光進(jìn)行調(diào)制傳輸,例如,信息直接調(diào)制紅外光的強(qiáng)弱進(jìn)行傳輸,也可以用紅外線產(chǎn)生一定頻率的載波,再用信息對(duì)載波進(jìn)調(diào)制,接收端再去掉載波,取到信息。</p><p>  從信息的可靠傳輸來(lái)說(shuō),后一種方法更好,這就是目前大多數(shù)紅外遙控器所采用的方法。&

19、lt;/p><p>  紅外遙控技術(shù)在這十年來(lái)得到了迅猛發(fā)展,在家電和其他電子領(lǐng)域都得到了</p><p>  廣泛應(yīng)用。隨著生活水平的提高,人們對(duì)產(chǎn)品的追求是使用更方便、更具智能化,</p><p>  紅外遙控技術(shù)正是一個(gè)重點(diǎn)的發(fā)展方向。</p><p>  各類遙控器功能大致相同。大多都有數(shù)字鍵、啟動(dòng)停止鍵、前進(jìn)鍵、快進(jìn)鍵和后退鍵?,F(xiàn)實(shí)生活

20、中,由于用戶的需求差異,特殊功能鍵的使用頻率很低,甚至部分用戶自始至終就從未使用過(guò)這類按鍵。因此,這些按鍵完全可以簡(jiǎn)化和歸類使用。對(duì)于那些不宜簡(jiǎn)化和歸類的少量特殊功能鍵,可以通過(guò)開(kāi)辟自定義按鍵區(qū)的方法予以解決。</p><p>  目前國(guó)外(主要是歐美市場(chǎng))的遙控器幾乎都是多功能遙控器,它們能夠控制全球的絕大部分的視頻設(shè)備甚至包括空調(diào)器。這些遙控器一般由MCU進(jìn)行控制,其價(jià)格一般比較貴,至少上百美金。值得一提的是

21、,目前全球的遙控器的80%是由中國(guó)大陸代工貼牌生產(chǎn)的,但是關(guān)鍵芯片是別人的。國(guó)外的遙控器主要通過(guò)超市等渠道進(jìn)行銷售,消費(fèi)者可以根據(jù)自己的需求進(jìn)行選擇,其發(fā)展趨勢(shì)是根據(jù)家庭的需要遙控器擁有更多的功能和更人性化的設(shè)計(jì)[8]。</p><p>  而在國(guó)內(nèi)市場(chǎng),遙控器絕大部分是單一型的遙控器,也就是一個(gè)遙控器控制一個(gè)視頻設(shè)備,這與我國(guó)經(jīng)濟(jì)狀況和消費(fèi)習(xí)慣有關(guān)。多功能(萬(wàn)能)遙控器只是單一型的遙控器的補(bǔ)充,在一般的主流渠道

22、是沒(méi)有多功能遙控器銷售的,許多消費(fèi)者也就不知道如何購(gòu)買(mǎi)多功能遙控器,因此多功能遙控器的銷量是相對(duì)很少的。</p><p>  1.2 遙控器的種類及應(yīng)用 </p><p><b> ?。?)紅外遙控器</b></p><p>  紅外遙控器(IR Remote Control)是利用波長(zhǎng)為0.76~1.5μm之間的近紅外線來(lái)傳送控制信號(hào)的遙控設(shè)

23、備。常用的紅外遙控系統(tǒng)一般分發(fā)射和接收兩個(gè)部分。紅外遙控?zé)o法穿透墻壁,故不同房間的家用電器可使用通用的遙控器而不會(huì)產(chǎn)生相互干擾,因此,現(xiàn)在紅外遙控在家用電器、室內(nèi)近距離(小于10米)遙控中得到了廣泛的應(yīng)用。</p><p><b>  圖1-1紅外遙控器</b></p><p><b>  (2)無(wú)線遙控器</b></p><

24、p>  無(wú)線電遙控器(RF Remote Control)是利用無(wú)線電信號(hào)對(duì)遠(yuǎn)方的各種機(jī)構(gòu)進(jìn)行控制的遙控設(shè)備。這些信號(hào)被遠(yuǎn)方的接收設(shè)備接收后,可以指令或驅(qū)動(dòng)其它各種相應(yīng)的機(jī)械或者電子設(shè)備,去完成各種操作,如閉合電路、移動(dòng)手柄、開(kāi)動(dòng)電機(jī),之后再由這些機(jī)械進(jìn)行需要的操作。作為一種與紅外遙控器相補(bǔ)充的遙控器種類,在車庫(kù)門(mén)、電動(dòng)門(mén)、道閘遙控控制,防盜報(bào)警器,工業(yè)控制以及無(wú)線智能家居領(lǐng)域得到了廣泛的應(yīng)用。</p><p&

25、gt;  圖1-2 無(wú)線遙控器</p><p><b> ?。?)超聲波遙控器</b></p><p>  超聲波遙控是利用超聲波來(lái)傳送指令的遙控,可以應(yīng)用于需要遙控、遙測(cè)的場(chǎng)合。采用AX5326 與AX5327 構(gòu)成的遙控系統(tǒng)具有體積小、功耗低、功能強(qiáng)大、抗干擾能力強(qiáng)、成本低等優(yōu)點(diǎn)。</p><p><b>  (4)智能遙控器&l

26、t;/b></p><p>  為了減少家庭中紅外線遙控器的數(shù)目, 已經(jīng)有很多廠家設(shè)計(jì)和生產(chǎn)了一種稱為萬(wàn)能遙控器的紅外線遙控裝置. 萬(wàn)能遙控器具有接收、存儲(chǔ)和發(fā)送紅外線編碼的功能, 通過(guò)對(duì)不同普通遙控器發(fā)出的紅外線編碼進(jìn)行學(xué)習(xí)和存儲(chǔ), 萬(wàn)能遙控器可以對(duì)多個(gè)家用電器進(jìn)行遙控, 從而可以減少家庭中遙控器的數(shù)目。</p><p>  紅外遙控是目前家用電器中用得較多的遙控方式,在車載影音導(dǎo)

27、航系統(tǒng)也被廣泛的應(yīng)用。紅外遙控的特點(diǎn)是不影響周邊環(huán)境、不干擾其他電器設(shè)備。由于其無(wú)法穿透墻壁,故不同房間的家用電器可使用通用的遙控器而不會(huì)產(chǎn)生相互干擾;電路調(diào)試簡(jiǎn)單,只要按給定電路連接無(wú)誤,一般不需任何調(diào)試即可投入工作;編解碼容易,可進(jìn)行多路遙控。由于各生產(chǎn)廠家生產(chǎn)了大量紅外遙控專用集成電路,需要時(shí)按圖索驥即可。因此,現(xiàn)在紅外遙控在家用電器、近距離(小于10米)遙控中得到了廣泛的應(yīng)用[2]。</p><p>  

28、自2005年起,臺(tái)灣與中國(guó)大陸遙控設(shè)備產(chǎn)量約占全球總產(chǎn)量的80%,且受</p><p>  海外市場(chǎng)對(duì)家用自動(dòng)化與娛樂(lè)應(yīng)用產(chǎn)品需求的快速增長(zhǎng)的刺激,其出口總值仍在</p><p>  上升。近年來(lái),隨著遙控制造產(chǎn)業(yè)的不斷成熟,遙控器市場(chǎng)競(jìng)爭(zhēng)十分激烈,遙控</p><p>  器的價(jià)格也出現(xiàn)下滑趨勢(shì),但高端產(chǎn)品的價(jià)格上升勢(shì)頭較好,因此,在未來(lái)一兩</p>

29、<p>  年內(nèi),國(guó)內(nèi)供應(yīng)商主要生產(chǎn)中低端紅外產(chǎn)品,而技術(shù)較強(qiáng)的臺(tái)灣同行則將把重點(diǎn)</p><p>  集中在高端紅外線或轉(zhuǎn)向射頻遙控器。由于國(guó)內(nèi)及香港供應(yīng)商可提供多種規(guī)格的</p><p>  紅外線遙控器,而臺(tái)灣制造商則轉(zhuǎn)向采用更新的技術(shù),因此,中國(guó)制造商可為海</p><p>  外買(mǎi)家提供各種規(guī)格的遙控器。</p><p>

30、;  除了國(guó)外市場(chǎng),國(guó)內(nèi)自身的需求量也十分巨大。就拿福建省來(lái)說(shuō),福建是國(guó)</p><p>  內(nèi)的電子大省之一,廈華、廈新、萬(wàn)利達(dá)和燦坤等電子廠商對(duì)紅外遙控設(shè)備需求</p><p>  量十分巨大,而省內(nèi)主要的紅外遙控設(shè)備廠商是廈門(mén)華聯(lián),其每年對(duì)紅外遙控芯</p><p>  片的需求量在兩千萬(wàn)以上,如果能研制出一款同等類型的芯片,不但能帶來(lái)可觀</p>

31、<p>  的利潤(rùn),更能完善紅外遙控設(shè)備的相關(guān)產(chǎn)業(yè)鏈,促進(jìn)整個(gè)行業(yè)的發(fā)展。</p><p>  1.3 論文的研究?jī)?nèi)容及安排</p><p>  本文主要對(duì)于基于FPGA的紅外遙控進(jìn)行深入解析。全面分析紅外遙控的各個(gè)模塊及各個(gè)模塊的程序設(shè)計(jì)。對(duì)每個(gè)子模塊進(jìn)行仿真測(cè)試,并且最后通過(guò)整體仿真對(duì)整個(gè)設(shè)計(jì)深入了解。</p><p><b>  1研究

32、內(nèi)容</b></p><p>  發(fā)射編碼部分使用指定的元器件在萬(wàn)用板上完成紅外遙控器的制作。</p><p>  接收解碼部分用VHDL編寫(xiě)程序,下載到EDA實(shí)驗(yàn)板上實(shí)現(xiàn)解碼,實(shí)現(xiàn)下列功能。</p><p><b> ?。?)基本功能:</b></p><p>  1)將一體化紅外接收解碼解調(diào)器的輸出信號(hào)解

33、碼(12個(gè)單擊鍵、6個(gè)連續(xù)鍵,單擊鍵編號(hào)為7~8,連續(xù)鍵編碼為1~6),在EDA實(shí)驗(yàn)板上用七段數(shù)碼管來(lái)顯示。</p><p>  2)當(dāng)按下遙控器1~6號(hào)連續(xù)鍵時(shí),在EDA實(shí)驗(yàn)板上點(diǎn)亮一個(gè)發(fā)光二極管作為連續(xù)鍵按下的指示,遙控器上連續(xù)鍵按下時(shí)指示燈全亮,直到松開(kāi)按鍵時(shí)才熄滅,用于區(qū)別單擊鍵。</p><p>  3)在EDA實(shí)驗(yàn)板上設(shè)置8個(gè)按鍵,其功能等同于遙控器上的1~8號(hào)按鍵。</

34、p><p><b>  (2)擴(kuò)展功能 </b></p><p>  通過(guò)遙控器跳線改變用戶碼,EDA實(shí)驗(yàn)板上用3個(gè)發(fā)光二極管正確顯示發(fā)送端的用戶碼。</p><p><b>  2論文安排</b></p><p>  1、本論文首先對(duì)遙控器的原理及功能應(yīng)用等基本理論和現(xiàn)有的工作基礎(chǔ)進(jìn)行全面系統(tǒng)的介紹;

35、然后再充分了解遙控器的基本理論知識(shí)后,重點(diǎn)對(duì)紅外遙控進(jìn)行深入的研究;</p><p>  2、對(duì)遙控進(jìn)行綜述,了解遙控優(yōu)缺點(diǎn),并進(jìn)行比較,著重闡述紅外遙控的方法。</p><p>  3、詳細(xì)分析基于FPGA紅外遙控的設(shè)計(jì)及思路。首先對(duì)遙控器的原理進(jìn)行講解分析,并對(duì)各個(gè)子模塊:解碼、譯碼、鍵盤(pán)掃描、動(dòng)態(tài)掃描、用戶碼顯示模塊進(jìn)行逐個(gè)分析設(shè)計(jì)并且仿真,然后對(duì)各個(gè)子模塊進(jìn)行連接,做出整體設(shè)計(jì)仿真

36、。</p><p>  2 紅外遙控的方法</p><p>  紅外遙控系統(tǒng)主要分發(fā)射和接收2部分,如圖2-1所示:</p><p>  圖2-1 紅外遙控系統(tǒng)</p><p><b>  2.1 發(fā)射系統(tǒng)</b></p><p>  目前有很多種芯片可以實(shí)現(xiàn)紅外發(fā)射,可以根據(jù)選擇發(fā)出不同種類的

37、編碼。</p><p>  由于發(fā)射系統(tǒng)一般用電池供電,這就要求芯片的功耗要很低,芯片大多都設(shè)計(jì)成可以處于休眠狀態(tài),當(dāng)有按鍵按下時(shí)才工作,這樣可以降低功耗.芯片所用的晶振應(yīng)該有足夠的耐物理撞擊能力,不能選用普通的石英晶體,一般是選用陶瓷共鳴器,陶瓷共鳴器準(zhǔn)確性沒(méi)有石英晶體高,但通常一點(diǎn)誤差可以忽略不計(jì)。</p><p>  紅外線通過(guò)紅外發(fā)光二極管發(fā)射出去,紅外發(fā)光二極管是特殊的發(fā)光二極&

38、lt;/p><p>  管,其內(nèi)部材料和普通發(fā)光二極管不同,因而在其兩端施加一定電壓時(shí),它發(fā)出</p><p>  的是紅外線而不是可見(jiàn)光。目前大量使用的紅外發(fā)光二極管發(fā)出的紅外線波長(zhǎng)為</p><p>  940nm左右,外形與普通妒5發(fā)光二極管相同[3]。</p><p>  a 簡(jiǎn)單驅(qū)動(dòng)電路 b 射極輸出驅(qū)動(dòng)電路&l

39、t;/p><p>  圖2-2 紅外發(fā)光二極管驅(qū)動(dòng)電路</p><p>  如圖2—2是紅外發(fā)光二極管的驅(qū)動(dòng)電路,a圖是最簡(jiǎn)單的驅(qū)動(dòng)電路,選用元</p><p>  件時(shí)要注意三極管的開(kāi)關(guān)速度要快,還要考慮到紅外發(fā)光二極管的正向電流和反</p><p>  向漏電流,一般流過(guò)紅外發(fā)光二極管的最大正向電流為lOOmA,電流越大,其發(fā)</p&g

40、t;<p>  射的波形強(qiáng)度越大。a圖電路有一點(diǎn)缺陷,當(dāng)電池電壓下降時(shí),流過(guò)紅外發(fā)光二極管的電流會(huì)降低,發(fā)射波形強(qiáng)度降低,遙控距離就會(huì)變小。b圖所示的射極輸出驅(qū)動(dòng)電路可以解決這個(gè)問(wèn)題,兩個(gè)二極管把三級(jí)管基極電壓鉗位在1-2V左右,因此三級(jí)管發(fā)射極電壓固定在0.6V左右,發(fā)射極電流IE基本不變,根據(jù)IE,≈IC,所以流過(guò)LED的電流也基本不變,這樣即使電池電壓有所下降,仍然可以保證一定的遙控距離[9]。</p>

41、<p><b>  2.2 接收系統(tǒng)</b></p><p>  圖2-3 紅外信號(hào)接收系統(tǒng)結(jié)構(gòu)圖</p><p>  紅外信號(hào)接收系統(tǒng)的基本電路結(jié)構(gòu)如圖2-3所示,該電路包括紅外光電二極管,前置放大電路,限幅放大電路,帶通濾波器,積分電路,比較器等。圖左側(cè)的紅外光電二極管將接收到的紅外光信號(hào)轉(zhuǎn)化為電信號(hào),然后把信號(hào)送到放大電路進(jìn)行放大,限幅放大電路在放大

42、信號(hào)的同時(shí)又把脈沖幅度控制在一定的水平,而不論紅外發(fā)射器和接收器的距離遠(yuǎn)近。交流信號(hào)進(jìn)入帶通濾波器,帶通濾波器濾除中心頻率外頻率的噪聲,出來(lái)的信號(hào)通過(guò)解調(diào)電路和積分電路進(jìn)入比較器,比較器輸出高低電平,還原出發(fā)射端的二進(jìn)制信號(hào)波形[4]。</p><p>  圖2-4 一體化紅外接收頭</p><p>  紅外接收頭的種類很多,引腳定義也不相同,一般都有三個(gè)引腳,包括供電</p>

43、<p>  腳,接地和信號(hào)輸出腳,也有些紅外接收頭添加了可以調(diào)節(jié)解調(diào)頻率的端口。應(yīng)</p><p>  用時(shí)必須保證發(fā)射端調(diào)制載波的頻率與接收端相應(yīng)的解調(diào)頻率之間互相匹配[16]。</p><p><b>  2.3 紅外原理</b></p><p>  1 識(shí)別、編碼、調(diào)制</p><p>  除了發(fā)送器

44、,接收器以外,紅外遙控系統(tǒng)還需要一系列外圍電路。有些接收器內(nèi)已經(jīng)集成了專用的解碼芯片,而無(wú)需自行設(shè)計(jì)解碼器。若設(shè)計(jì)者不用專用解碼器而想自主解碼,則還要設(shè)計(jì)一個(gè)用于白行解碼的控制器。其中發(fā)送器是用來(lái)發(fā)送控制信號(hào)的,如果把按鍵的動(dòng)作稱為信源的話,那么發(fā)送器是一個(gè)信源信號(hào)的轉(zhuǎn)換裝置,把轉(zhuǎn)換后的信號(hào)通過(guò)紅外信道傳輸出去。而信源信號(hào)的轉(zhuǎn)換方式有頻分制和碼分制兩種[]。頻分制就是以不同頻率的信號(hào)代表不同的按鍵信號(hào)。遙控信號(hào)的頻率范圍在幾百HZ到幾十

45、KHZ之間[12]。這種識(shí)別/編碼方式可以使得發(fā)送出去的遙控信號(hào)抗干擾能力較強(qiáng),但是由于不同的按鍵信號(hào)要占用不同的頻帶,所以在遙控按鍵指令集復(fù)雜的場(chǎng)合,他需要較多的遙控通道,即要占用更多的頻率資源。因而這種方式只適合指令集簡(jiǎn)單的場(chǎng)合。而碼分制則適用于按鍵指令集復(fù)雜的場(chǎng)合,他是以不同的脈沖或者脈沖組合代表不同的按鍵指令。與頻分制相比,碼分制電路簡(jiǎn)單,使用靈活,在實(shí)際應(yīng)用中多采用這種方式。下面將要用到的PT2248就是這種方式。碼分制的編碼

46、方式主要有:頻率調(diào)制(FM),脈寬調(diào)制(PWM),脈位調(diào)制(PPM),實(shí)際上各種紅外系統(tǒng)的主要區(qū)別在于信號(hào)的編</p><p>  2 信號(hào)的解調(diào)與解碼</p><p>  紅外接收器用來(lái)接收來(lái)自紅外發(fā)送器的紅外光波信號(hào),將接收到的信號(hào)放大、檢波、整形,直到解調(diào)出發(fā)送端的基帶脈沖序列,如果紅外接收器是專用設(shè)備,則他的功能還應(yīng)包括對(duì)基帶信號(hào)的解碼。此時(shí)他內(nèi)部的解碼器往往集成了專用的解碼芯片。

47、但是對(duì)于獨(dú)立研發(fā)生產(chǎn),可以按照編碼方式自行解碼。接收器的結(jié)構(gòu)功能很大程度上取決于發(fā)送器的結(jié)構(gòu)及對(duì)信源信號(hào)的處理方式[6]。</p><p>  3 基于FPGA的紅外遙控器的實(shí)現(xiàn)</p><p><b>  3.1 設(shè)計(jì)要求</b></p><p>  紅外遙控系統(tǒng)由發(fā)射編碼和接收解碼兩個(gè)部分組成,本設(shè)計(jì)制作了發(fā)射編碼電路板(遙控器)一級(jí)編寫(xiě)程

48、序在EDA實(shí)驗(yàn)板上實(shí)現(xiàn)接收解碼。</p><p>  3.2 設(shè)計(jì)分析與設(shè)計(jì)思路</p><p>  本次課程設(shè)計(jì)的紅外遙控器由紅外遙控專用芯片PT2248作為編碼及發(fā)送部分,PT2248最大可用作18路紅外遙控系統(tǒng)的編碼,其內(nèi)部己集成了38kHz的紅外載波振蕩及相應(yīng)的數(shù)字脈碼調(diào)制電路,只需外接3×6的矩陣式按鍵、紅外發(fā)光二極管及其驅(qū)動(dòng)電路等少量元器件便可完成編碼發(fā)送的功能。&l

49、t;/p><p>  由PT2248和少量外圍元件組成的紅外遙控發(fā)射電路如下圖3-1所示</p><p>  圖 3-1 遙控器發(fā)送電路</p><p>  芯片的發(fā)送指令由12位碼組成,其中C1~C3是用戶碼,可用來(lái)確定不同的模式。用戶碼設(shè)定是以列線內(nèi)接入二極管為界線,當(dāng)T1~T3與CODE之間分別接入二極管時(shí),用戶碼(C1~C3)為“1”;當(dāng)T1~T3引腳不接二極

50、管時(shí),用戶碼為“0”。如果該芯片與BL9150相結(jié)合,則C3引腳必須接入二極管;如果該芯片與BL9149相結(jié)合,則C2必須接二極管,H、S1和S2是代表連續(xù)發(fā)送或單次發(fā)送的碼,且分別與T1、T2和T3列的鍵對(duì)應(yīng)。D4~D6是發(fā)送的數(shù)據(jù)碼(也是鍵輸入碼)</p><p>  上圖中3V電源電壓一方面為芯片提供推薦工作電壓并加到引腳16,另一方面作為信號(hào)輸出指示復(fù)合管的工作電壓。為了使振蕩頻率為455kHz,特采用外

51、接晶振,并外接兩個(gè)電容120pF旁路到地。圖7中三列T1、T2、T3和CODE分別接一個(gè)二極管,目的是為了使用戶碼(C1、C2、C3)為“1”[7]。</p><p><b>  3.3 遙控器原理</b></p><p><b>  1發(fā)射板部分</b></p><p>  發(fā)射板主要由紅外線編碼芯片PT2248 構(gòu)成紅

52、外編碼這個(gè)模塊。</p><p>  PT2248的管腳圖如下圖3-2所示:</p><p>  圖3-2 PT2248管腳圖</p><p>  其各個(gè)管腳的功能如下表3-1[14]:</p><p>  表 3-1 PT2248管腳功能表</p><p>  PT2248組成的18路遙控發(fā)送器其編碼規(guī)則:</

53、p><p> ?。?)設(shè)a為一個(gè)時(shí)間單位,時(shí)間長(zhǎng)度是38kHz的16個(gè)時(shí)鐘周期,即</p><p>  a=1÷38kHz×16=0.421ms</p><p>  編碼是以串行形式發(fā)送的,在接收端(38kHz一體化紅外接收解調(diào)器)接收到如下形式的1位的編碼時(shí)分別表示“0”和“1”:</p><p>  1個(gè)a的低電平,3個(gè)a

54、的高電平表示‘0’:</p><p>  3個(gè)a的低電平,1個(gè)a的高電平表示‘1’,編碼以串行形式發(fā)送,接收端的一體化紅外接收解調(diào)器輸出波形如圖3-3所示:</p><p>  圖3-3 一體化紅外接收解調(diào)器輸出波形</p><p>  遙控器的每個(gè)按鍵編碼由12位按以上編碼規(guī)則所代表的“0”、“1”組成,時(shí)間長(zhǎng)度為48a,當(dāng)按下遙控器的7~18號(hào)單擊按鍵,則以1

55、2位為一組(48a)發(fā)送兩次編碼,如圖3-4所示:</p><p>  圖3-4 單擊按鍵發(fā)送的編碼</p><p>  圖中60a為自按下按鍵到發(fā)送編碼的等待時(shí)間,80a是前后兩次發(fā)送12位48a編碼的高電平時(shí)間間隔。7~18號(hào)單擊按鍵無(wú)論發(fā)送端按鍵時(shí)間持續(xù)多長(zhǎng)只發(fā)送一次這樣形式的兩組相同的12位編碼。其中第二個(gè)48a起校驗(yàn)作用。</p><p>  (3)當(dāng)按

56、下1到6號(hào)連續(xù)按鍵時(shí),編碼按如下格式連續(xù)發(fā)送。當(dāng)按著連續(xù)鍵不放,會(huì)每隔208a發(fā)送一次有效編碼[10]。</p><p>  圖3-5 連續(xù)按鍵發(fā)送的編碼</p><p>  具體每個(gè)12位的串行編碼規(guī)則如下:</p><p>  圖 3-6 按鍵12位編碼規(guī)則</p><p>  C1、C2、C3位用戶識(shí)別碼,可通過(guò)在遙控器發(fā)射電路中是否

57、接入IN4148二極管決定其為‘0’或‘1’,接入二極管為‘0’,對(duì)應(yīng)著TP2248的第10管腳到第12管腳,若只有第10管腳不接入二極管,11和12接入,用戶碼位“011”,</p><p><b>  表 3-2 用戶碼</b></p><p>  H、S1、是區(qū)別單擊鍵和連續(xù)鍵的標(biāo)志位,相當(dāng)于列坐標(biāo),D1~D6為按鍵輸入碼,相當(dāng)于行坐標(biāo),低9位的按鍵編碼規(guī)則如下

58、表3-3[13]。</p><p>  表 3-3 低9位按鍵編碼</p><p><b>  2 接收解碼原理</b></p><p>  紅外接收解調(diào)器輸出的波形如圖3-3所示。編程的主要工作是將這一系列波形進(jìn)行解碼得到12位編碼。根據(jù)前面對(duì)遙控器發(fā)射信號(hào)的分析,編碼‘0’和‘1’的區(qū)別在于占空比不痛,編程的方法也從這里入手。對(duì)于每位編碼,

59、設(shè)置一個(gè)計(jì)數(shù)器,在接收到低電平時(shí)開(kāi)始計(jì)數(shù),遇到高電平停止計(jì)數(shù),通過(guò)對(duì)計(jì)數(shù)值大小的比較判斷編碼是‘0’還是‘1’。</p><p>  具體原理:由于一位編碼由4a組成,選擇頻率為16KHZ的系統(tǒng)時(shí)鐘(2.048mHz晶振進(jìn)行1028分頻,即27分頻),a的頻率為2.375khz(啊的時(shí)間長(zhǎng)度為0.421ms),由此可算得,'0'的編碼由6.7個(gè)低電平和20.2個(gè)高電平組成,‘1’則由20.2個(gè)低電

60、平和6.7個(gè)高電平組成。這樣通過(guò)計(jì)數(shù)器對(duì)低電平計(jì)數(shù),取一個(gè)判斷值為15,當(dāng)?shù)碗娖浇Y(jié)束時(shí)計(jì)數(shù)值大于15則編碼為‘1’,小于15則編碼為‘0‘。當(dāng)接收到12位時(shí),輸出一串完整的編碼。此處的關(guān)鍵在于頻率的選擇,如頻率選的太低,區(qū)分’0‘和’1‘時(shí)容易出現(xiàn)頻率偏移過(guò)多導(dǎo)致誤碼等錯(cuò)誤[11]。</p><p><b>  3 鍵盤(pán)掃描電路</b></p><p>  EDA實(shí)驗(yàn)

61、板上有個(gè)4*4 的按鍵矩陣,當(dāng)按鍵被按下時(shí),其輸出引腳為低電平,而其余時(shí)間內(nèi)均為高電平。當(dāng)按下每一行的四個(gè)鍵時(shí),七段碼顯示管應(yīng)顯示1—4,必須將四個(gè)按鍵并行輸入的按鍵編碼轉(zhuǎn)換成1—4的BCD碼才能輸出顯示。按鍵輸入與遙控輸入應(yīng)共用兩個(gè)七段碼顯示管輸出,這樣就需要在程序中將輸入的遙控信號(hào)與按鍵信號(hào)先進(jìn)行選擇再輸出。</p><p>  這部分電路如下圖3-7所示:</p><p>  圖3-

62、7 4x4矩陣鍵盤(pán)的原理圖</p><p>  4 數(shù)碼管的動(dòng)態(tài)掃描顯示</p><p>  這部分電路將譯碼后得到的十二位普通高低電平‘0、’‘1’編碼譯成相應(yīng)的壓縮BCD碼1~18,應(yīng)十位僅有0、1兩種可能,將譯得的BCD碼直接接芯片4511的輸入引腳,4511的譯碼輸出并接到4位LED數(shù)碼顯示管,再在程序中寫(xiě)入十位和個(gè)位選擇的進(jìn)程,即可得到相應(yīng)1~18數(shù)字顯示輸出。</p>

63、;<p>  顯示部分電路由芯片HCC4511BF構(gòu)成,譯碼后的高低電平從CPLD的44,45,46,48,49管腳傳輸?shù)紿CC4511BF,進(jìn)行譯碼,這部份電路如圖3-8:</p><p>  圖3-8 數(shù)碼管的動(dòng)態(tài)掃描的原理圖</p><p>  3.4 各模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b>  1 解碼器</b>&l

64、t;/p><p>  解碼器用pro1、pro2和pro3三個(gè)進(jìn)程實(shí)現(xiàn)。</p><p>  進(jìn)程pro1:通過(guò)對(duì)高電平持續(xù)計(jì)數(shù)檢查紅外線接收是否出錯(cuò),有錯(cuò)則重新接收。接收12位編碼時(shí),高電平持續(xù)時(shí)間最多為3a,所以當(dāng)檢查到高電平持續(xù)了4a長(zhǎng)的時(shí)間,就可以認(rèn)為接收的紅外信號(hào)有錯(cuò),對(duì)12位寄存器清零。</p><p>  進(jìn)程pro2:對(duì)接收到的紅外信號(hào)進(jìn)行解碼,并將一個(gè)

65、48a存在12位寄存器中,用一個(gè)單進(jìn)程狀態(tài)機(jī)來(lái)實(shí)現(xiàn),ASM圖如下所示。每按下一個(gè)單擊鍵,會(huì)解出兩個(gè)相同的12位編碼,兩次解碼輸出的間隔約為128a(80a+48a),其中第二次收到的12位編碼起校驗(yàn)作用,只有當(dāng)兩次收到的12位編碼相同時(shí),蜂鳴器才會(huì)發(fā)聲,表示接收到有效按鍵,否則這次按鍵不發(fā)生任何作用。當(dāng)按下連續(xù)鍵時(shí),解碼原理與單擊鍵相同[15]。</p><p>  進(jìn)程pro3:延長(zhǎng)蜂鳴器響的時(shí)間,將bell的

66、響鈴時(shí)間延長(zhǎng)為50a,即50x6.74=337個(gè)clk。經(jīng)過(guò)這樣處理后,當(dāng)按下連續(xù)鍵時(shí),會(huì)每隔334a(208a+48a+80a+48a-50a),約為0.14s聽(tīng)到滴滴的響鈴聲。</p><p><b>  BEGIN</b></p><p>  IF(rising_edge(clk))THEN</p><p>  CASE state1 I

67、S</p><p><b>  WHEN t0=></b></p><p>  reg_clr<='0';cnt3:=0;</p><p>  IF x='1'THEN state1:=t1; END IF;</p><p><b>  WHEN t1=><

68、;/b></p><p>  cnt3:=cnt3+1;</p><p>  IF x='1'THEN</p><p>  IF cnt3=27 THEN </p><p>  reg_clr<='1';state1:=t0;</p><p>  ELSE state1:

69、=t1;</p><p><b>  END IF;</b></p><p>  ELSE state1:=t0;</p><p><b>  END IF;</b></p><p><b>  END CASE;</b></p><p>  圖3-9

70、解碼器端口圖</p><p><b>  2 譯碼器模塊</b></p><p>  12位編碼的最高3位為用戶碼,可直接賦給用于顯示用戶的LED2,但由于發(fā)光二極管的驅(qū)動(dòng)電路是低電平有效,故要對(duì)最高3位進(jìn)行取反在賦給LED2.另外,將低9位轉(zhuǎn)換為兩個(gè)4位BCD碼。當(dāng)按下連續(xù)鍵時(shí),用解碼器的輸出bell來(lái)控制發(fā)光二極管LED1亮的時(shí)間。</p><

71、p>  WHEN "100100000"=></p><p>  reg2<="00000001";</p><p>  IF control='1'THEN reg1<='0';</p><p>  ELSE reg1<='1';</p>

72、;<p><b>  END IF;</b></p><p>  WHEN "100010000"=></p><p>  reg2<="00000010";</p><p>  IF control='1'THEN reg1<='0';&l

73、t;/p><p>  ELSE reg1<='1';</p><p><b>  END IF;</b></p><p>  圖3-10 譯碼器端口圖</p><p><b>  3 鍵盤(pán)掃描模塊</b></p><p>  不斷掃描鍵盤(pán),當(dāng)有鍵被按下時(shí),對(duì)

74、掃描輸出keyout進(jìn)行編碼輸出兩個(gè)4位BCD碼,同時(shí)蜂鳴器響。其中,鍵盤(pán)上的按鍵1~6對(duì)應(yīng)遙控器的連續(xù)鍵1~6,當(dāng)鍵盤(pán)按鍵1~6被按下時(shí),蜂鳴器開(kāi)始響,直到按鍵被松開(kāi)為止;鍵盤(pán)上的按鍵7~8對(duì)應(yīng)著遙控器的單擊鍵7~8,無(wú)論按下多久,蜂鳴器只會(huì)響很短的滴一聲,在程序中我們?cè)O(shè)為30個(gè)clk。</p><p><b>  BEGIN</b></p><p>  Pro1:

75、PROCESS(clk)</p><p><b>  BEGIN</b></p><p>  IF rising_edge(clk)THEN</p><p>  IF keyin="1111"THEN</p><p>  Pre_state<=next_state;</p><

76、;p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS pro1;</p><p>  Pro2:PROCESS(pre_state,keyin)</p><p><b>  BEGIN</b&g

77、t;</p><p>  CASE pre_state IS</p><p><b>  WHEN s0=></b></p><p>  reg3<="1110";</p><p>  next_state<=s1;</p><p><b>  WH

78、EN s1=></b></p><p>  reg3<="1101";</p><p>  next_state<=s0;</p><p><b>  END CASE;</b></p><p>  END PROCESS pro2;</p><p&g

79、t;  圖3-11鍵盤(pán)掃描模塊圖</p><p><b>  4 動(dòng)態(tài)掃描顯示</b></p><p>  EDA板除了用3個(gè)發(fā)光二極管指示用戶碼外,還將用戶碼用一個(gè)7端數(shù)碼管進(jìn)行顯示。用戶碼、按鍵的個(gè)位以及按鍵的十位采用動(dòng)態(tài)掃描方式進(jìn)行顯示。</p><p>  按鍵有遙控器和鍵盤(pán)兩種,這里模仿電視機(jī)將鍵盤(pán)的優(yōu)先級(jí)設(shè)為最高。以Keyboard

80、模塊的bell輸出信號(hào)作為鍵盤(pán)按鍵的指示信號(hào)sel,當(dāng)sel為高電平說(shuō)明鍵盤(pán)有按鍵被按下。</p><p>  IF cnt=0 THEN </p><p>  BCD<=BCD2(3 DOWNTO 0);</p><p>  LSD<="100";</p><p>  cnt:=cnt+1;</p>

81、;<p>  ELSIF cnt=1 THEN </p><p>  BCD<=BCD2(7 DOWNTO 4);</p><p>  LSD<="010";</p><p><b>  cnt:=0;</b></p><p><b>  END IF;</b

82、></p><p>  圖3-12 動(dòng)態(tài)掃描顯示端口圖</p><p><b>  5 用戶碼顯示模塊</b></p><p>  在模塊劃分中,用戶碼顯示模塊是合并在顯示模塊中的。設(shè)置本機(jī)用戶碼為“111”,所以當(dāng)按下EDA的鍵盤(pán)按鍵時(shí),顯示用戶碼位7.當(dāng)接收到遙控器的信號(hào)時(shí),用戶碼由發(fā)射板電路決定。在本設(shè)計(jì)中,以鍵盤(pán)輸入優(yōu)先,故用Ke

83、yboard模塊輸出bell信號(hào)作為控制信號(hào)use_sel,當(dāng)use_sel為高電平時(shí)說(shuō)明鍵盤(pán)有鍵按下,寄存本機(jī)用戶碼,否則當(dāng)接收到紅外遙控信號(hào)時(shí),寄存紅外遙控器的用戶碼。</p><p><b>  BEGIN</b></p><p>  PROCESS(clk,use_sel)</p><p><b>  BEGIN</b&

84、gt;</p><p>  IF use_sel='1'THEN</p><p>  reg_user<="111";</p><p>  ELSIF rising_edge(clk)THEN</p><p>  reg_user<=use_in;</p><p><

85、;b>  END IF;</b></p><p>  END PROCESS;</p><p>  Use_BCD<='0'&reg_user;</p><p>  END behav;</p><p>  圖3-13用戶碼顯示模塊圖</p><p><b> 

86、 4 波形仿真與分析</b></p><p><b>  4.1 解碼器 </b></p><p>  1) 按下遙控器的單擊鍵7,當(dāng)發(fā)送的校驗(yàn)碼與前面發(fā)送的編碼不一致時(shí),輸出z為“000000000000”,bell始終為低電平,仿真如下圖所示。這里的仿真是測(cè)試解碼是否成功,所以輸入信號(hào)并沒(méi)有嚴(yán)格按照兩個(gè)48a之間相隔80a進(jìn)行設(shè)置。(clk模擬16kH

87、z的系統(tǒng)時(shí)鐘,后面的仿真都一樣),如圖4-1。</p><p>  圖4-1 發(fā)生校驗(yàn)錯(cuò)誤的情況</p><p>  2) 當(dāng)按下遙控器的單擊鍵7時(shí),若2次接收到的48a相同,則編碼輸出z為“111010100000”,單擊鍵解碼仿真如下圖4-2。</p><p>  圖4-2 單擊鍵解碼仿真</p><p>  3) 當(dāng)按下遙控器的連續(xù)鍵1

88、時(shí),編碼輸出z為“111100100000”(設(shè)計(jì)的發(fā)射電路用戶碼為“111”)。連續(xù)仿真鍵解碼仿真如下圖4-3。</p><p>  圖4-3 連續(xù)鍵解碼仿真</p><p><b>  4.2 譯碼器</b></p><p>  1)當(dāng)接收到遙控器的連續(xù)鍵1,設(shè)遙控器用戶碼為“111”,即z為“111100100000”時(shí),譯碼器的輸出B

89、CD1為“00000001”。3個(gè)顯示用戶碼的二極管全亮(LED2=“000”,低電平驅(qū)動(dòng)),且當(dāng)control=’1‘時(shí),連續(xù)鍵指示燈亮(LED1='0')。仿真結(jié)果如圖4-4。</p><p>  圖4-4 譯碼器仿真1</p><p>  當(dāng)接收到的遙控器單擊鍵7,設(shè)遙控器用戶碼為“111”,即z為“111010100000”時(shí),譯碼器的輸出BCD1為“0000011

90、1”,3個(gè)顯示用戶碼的二極管全亮(LED2=“000”),連續(xù)鍵指示燈滅(LED1=’1‘)。仿真結(jié)果如圖4-5。</p><p>  圖 4-5 譯碼器仿真2</p><p>  4.3 鍵盤(pán)掃描模塊</p><p>  當(dāng)沒(méi)有按鍵被按下時(shí),keyin為“1111”,輸出的keyout為鍵盤(pán)掃描信號(hào)。仿真結(jié)果如圖,BCD2譯碼正確。同時(shí),當(dāng)按下5、6號(hào)按鍵時(shí),LE

91、D1點(diǎn)亮知道松開(kāi)按鍵為止,蜂鳴器bell也一樣;當(dāng)按下7、8號(hào)按鍵時(shí),LED1指示燈熄滅,蜂鳴器只響很短一段時(shí)間(30個(gè)clk),符合設(shè)計(jì)要求,如圖4-6。</p><p>  圖4-6鍵盤(pán)掃描仿真波形</p><p>  4.4 動(dòng)態(tài)掃描顯示模塊</p><p>  當(dāng)按下鍵盤(pán)按鍵3時(shí),數(shù)碼管顯示用戶碼為7,設(shè)本機(jī)用戶碼為“111”,其他兩個(gè)數(shù)碼管顯示0和3,仿真

92、結(jié)果如圖4-7。</p><p>  圖 4-7動(dòng)態(tài)掃描顯示仿真1</p><p>  當(dāng)接收到紅外遙控發(fā)射信號(hào)“111100100000”,即BCD1=“00000001”,則數(shù)碼管顯示用戶碼為7,其他兩個(gè)數(shù)碼管顯示0和1,仿真結(jié)果如圖4-8。</p><p>  圖 4-8 動(dòng)態(tài)掃描顯示仿真2</p><p>  4.5 用戶顯示模塊&l

93、t;/p><p>  設(shè)紅外遙控器的用戶碼為“011”,鍵盤(pán)用戶嗎為“111”。 當(dāng)use_sel為‘1’時(shí),鍵盤(pán)優(yōu)先,所以u(píng)se_BCD輸出為”0111“,否則use_BCD輸出為”0011“。仿真結(jié)果如圖4-9。</p><p>  圖4-9 用戶碼顯示仿真</p><p>  4.6 整體設(shè)計(jì)、仿真</p><p>  對(duì)各個(gè)子模塊進(jìn)行連接

94、,其連接如下圖4-10。</p><p>  圖4-10 各子模塊的連接</p><p>  當(dāng)按下遙控器的單擊鍵7時(shí)(發(fā)射板上用戶碼設(shè)為101),指示燈LED1不亮,LED2顯示的用戶碼為5(LED2的驅(qū)動(dòng)低電平有效)。仿真結(jié)果如圖4-11。</p><p>  圖4-11 整體仿真1</p><p>  2)當(dāng)按下遙控器的連續(xù)鍵1時(shí)(發(fā)

95、射板上用戶碼設(shè)為101),蜂鳴器滴滴的響直到按鍵被松開(kāi),且指示燈LED1也一閃一閃的發(fā)亮直到按鍵被松開(kāi)為止,LED2顯示用戶碼為5(LED2的驅(qū)動(dòng)低電平有效)。仿真結(jié)果如圖4-12。</p><p>  圖 4-12 整體仿真2</p><p><b>  4 結(jié)論</b></p><p>  紅外遙控系統(tǒng)應(yīng)用很廣泛,了解一些紅外遙控的知識(shí)是

96、有必要的。本論文研究了基于FPGA的紅外遙控器,進(jìn)行Quartus II 仿真校驗(yàn)并通過(guò)CPLD下載到EDA實(shí)驗(yàn)板上實(shí)現(xiàn)接收解碼。論文大體對(duì)遙控器的的整體設(shè)計(jì)原理及各個(gè)子模塊進(jìn)行分析設(shè)計(jì)并對(duì)個(gè)子模塊進(jìn)行了仿真。仿真過(guò)程中有時(shí)候仿真結(jié)果老師錯(cuò)誤、出不來(lái),經(jīng)過(guò)導(dǎo)師指導(dǎo)發(fā)現(xiàn)了是由于沒(méi)有控制好輸入信號(hào)的編碼間隔,在重新多次操作下終于得出了正確仿真。該紅外遙控系統(tǒng)已經(jīng)得到實(shí)踐驗(yàn)證,而且該系統(tǒng)的解碼是由CPLD來(lái)完成的。由于VHDL與EDA工具軟件

97、平臺(tái)的強(qiáng)大功能,許多工作都能在計(jì)算機(jī)上以軟件仿真的形式完成,這樣不僅可以大大縮短產(chǎn)品的開(kāi)發(fā)周期,還可以隨時(shí)根據(jù)實(shí)際需要更改或者添加新的功能,設(shè)計(jì)模式更加靈活。從而為各類紅外控制應(yīng)用系統(tǒng)提供了一類實(shí)用的參考。</p><p>  論文中只進(jìn)行了大體的,有正對(duì)性的仿真,還有很多種情況要考慮,可以在今后的學(xué)習(xí)工作中進(jìn)一步改進(jìn)。</p><p><b>  參考文獻(xiàn)</b>&

98、lt;/p><p>  [1] 倪建,董強(qiáng). 編碼解碼技術(shù)在紅外遙控器中的實(shí)現(xiàn)[J].中國(guó)民航飛行學(xué)院學(xué)報(bào),2004,15(1):35-36.</p><p>  [2] 佟國(guó)香,孫國(guó)強(qiáng),李廣軍.紅外遙控器控制系統(tǒng)的VHDL設(shè)計(jì)與FPGA實(shí)現(xiàn)[J].上海理工大學(xué)學(xué)報(bào),2004,26(2):189-192. </p><p>  [3] 張波,石廣范,張凝,閆廣明.紅外遙

99、控英、俄文LED條形顯示屏設(shè)計(jì)與實(shí)現(xiàn)[J].哈爾濱商業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2004,20(3):370-373.</p><p>  [4] 寶金.基于單片機(jī)設(shè)計(jì)實(shí)用型無(wú)線遙控器原理[J].陰山學(xué)刊,2007,21(1):45</p><p><b>  -46.</b></p><p>  [5] Y.Cu.H.0,Wang.and K,

100、Tanaka.Fuzzy Control of NolinearTime-Delay Sysyems:Stability and Design Issues[C].Arlington,2001,(6):25-27.</p><p>  [6] HONIG M,MADHOW U,VERDU S.Blind adaptive multiuserdetection[J].IEEE Trans on Informatio

101、n Theory,1995,41(4):944-960.</p><p>  [7] JYOTI S,RAI C S,BANSAL P K.Near-far resistant ICA based detector for DS-CDMA system in the downlink[J].Wireless PersonalCommunications,</p><p>  2007,43

102、(2):341-353. </p><p>  [8] 丁穎,肖功寶,楊仁順,張存庫(kù).紅外遙控技術(shù)在工業(yè)電視中的應(yīng)用[J].自動(dòng)化與儀表,1997,12(2):45-65.</p><p>  [9] 丁躍華,陳艷峰.基于EDA技術(shù)的紅外遙控系統(tǒng)設(shè)計(jì)[J].電子元器件應(yīng)用,200</p><p>  6,13(4):78-80.</p><p&g

103、t;  [10] 吳彪,朱立新,趙佳.基于CPLD的紅外遙控發(fā)射接收設(shè)計(jì)與仿真[J].計(jì)算機(jī)仿真,2006,23(8):269-272.</p><p>  [11] 李躍宇,付夢(mèng)印.紅外遙控在車輛導(dǎo)航定位系統(tǒng)中的應(yīng)用[J].紅外技術(shù),200</p><p>  3,25(6):69-71. </p><p>  [12] 徐愛(ài)鈞.80C5單片機(jī)實(shí)踐教程[M].北京

104、:電子工業(yè)出版社,2005,5.</p><p>  [13] 錢(qián)敏,曹云鵬,章敏,錢(qián)春花,張成,李運(yùn)寧.基于FPGA/HDL的紅外遙控接收信號(hào)解碼器設(shè)計(jì)[J].通信技術(shù),2009,42(8):219-224.</p><p>  [14] 趙雅興.FPGA原理設(shè)計(jì)與應(yīng)用[M].天津:天津大學(xué)出版社,1999,4.</p><p>  [15] 金韋.多功能通用遙控

105、器原理及制作[J].實(shí)用電子文摘,1995,(2):35-44.</p><p>  [16] 李遲生.智能遙控器的設(shè)計(jì)[J].電子技術(shù),1996,(12):540-544.</p><p>  附錄1 應(yīng)用程序源代碼</p><p>  紅外遙控解碼器的源程序如下:</p><p>  LIBRARY IEEE;</p>

106、<p>  USE IEEE.std_logic_1164.ALL;</p><p>  USE IEEE.std_logic_unsigned.ALL;</p><p>  ENTITY Relieve_code IS</p><p>  PORT(clk:IN std_logic; -- 時(shí)鐘頻率16KHZ</p><p&g

107、t;  x:IN std_logic; -- 接收到的紅外信號(hào)</p><p>  z:OUT std_logic_vector(11 DOWNTO 0); --12位解碼輸出</p><p>  bell:OUT std_logic); -- 提示音</p><p>  END Relieve_code;</p><p>  

108、ARCHITECTURE behav OF Relieve_code IS</p><p>  TYPE state_type IS(s0,s1,s2,s3,s4,s5);</p><p>  SIGNAL state:state_type:=s0;</p><p>  SIGNAL reg12,qreg12:std_logic_vector(11 DOWNTO 0

109、);</p><p>  SIGNAL cnt1:Integer RANGE 0 TO 30;</p><p>  SIGNAL cnt2:Integer RANGE 0 TO 11;</p><p>  SIGNAL reg_clr:std_logic;</p><p>  SIGNAL reg_bell:std_logic;</p&

110、gt;<p>  SIGNAL flag:std_logic;</p><p><b>  BEGIN</b></p><p>  --進(jìn)程prol:檢查紅外接收是否出錯(cuò),有錯(cuò)則重新接收。</p><p>  pro1:PROCESS(x,clk)</p><p>  TYPE state_type1 IS

111、(t0,t1);</p><p>  VARIABLE state1:state_type1:=t0;</p><p>  VARIABLE cnt3:Integer RANGE 0 TO 30;</p><p><b>  BEGIN</b></p><p>  IF(rising_edge(clk))THEN<

112、/p><p>  CASE state1 IS</p><p><b>  WHEN t0=></b></p><p>  reg_clr<='0';cnt3:=0;</p><p>  IF x='1'THEN state1:=t1; END IF;</p><

113、;p><b>  WHEN t1=></b></p><p>  cnt3:=cnt3+1;</p><p>  IF x='1'THEN</p><p>  IF cnt3=27 THEN </p><p>  reg_clr<='1';state1:=t0;<

114、;/p><p>  ELSE state1:=t1;</p><p><b>  END IF;</b></p><p>  ELSE state1:=t0;</p><p><b>  END IF;</b></p><p><b>  END CASE;</b

115、></p><p><b>  END IF;</b></p><p>  END PROCESS pro1;</p><p>  --進(jìn)程pro2:對(duì)紅外接收信號(hào)解碼</p><p>  pro2:PROCESS(clk,reg_clr,state,flag)</p><p><b&

116、gt;  BEGIN</b></p><p>  IF(reg_clr='1')THEN</p><p>  state<=s0;reg12<="000000000000";</p><p>  ELSIF(rising_edge(clk))THEN</p><p>  CASE s

117、tate IS</p><p><b>  WHEN s0=></b></p><p>  cnt1<=0;cnt2<=0;reg_bell<='0';</p><p>  reg12<="000000000000";</p><p>  IF x=

118、9;0'THEN state<=s1;END IF;</p><p><b>  WHEN s1=></b></p><p>  cnt1<=cnt1+1;</p><p>  IF x='1'THEN</p><p>  IF cnt1>=15 THEN state<

119、;=s2;</p><p>  ELSE state<=s3; END IF;</p><p><b>  END IF;</b></p><p><b>  WHEN s2=></b></p><p>  cnt2<=cnt2+1;reg12<=reg12(10 DOWNT

溫馨提示

  • 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ù)僅提供信息存儲(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)論