

摘 要:?jiǎn)纹瑱C(jī)具有高集成度、高可靠性、價(jià)格低廉、體積小等特點(diǎn),因此廣泛應(yīng)用于家電、儀器、工業(yè)控制、一體化機(jī)電等領(lǐng)域 [ 1 ]。目前單片機(jī)在家電控制方面呈現(xiàn)出諸如外形簡(jiǎn)單、功能多樣、產(chǎn)品智能的發(fā)展趨勢(shì)。同時(shí),基于功耗低、抗干擾能力強(qiáng)、使用方改變、價(jià)格便宜等特點(diǎn),紅外遙控的應(yīng)用前景也十分廣闊。本文以擴(kuò)展紅外遙控技術(shù)為目的,在一種新型紅外遙控控制的方案的基礎(chǔ)上,通過(guò)實(shí)現(xiàn)數(shù)據(jù)的編解碼,利用紅外線可以傳遞信息的特性,設(shè)計(jì)出一個(gè)多功能紅外遙控器。
關(guān)鍵詞:?jiǎn)纹瑱C(jī);紅外遙控;多路控制
目前市面上的遙控器多是無(wú)線遙控技術(shù)實(shí)現(xiàn)的,隨著紅外遙感技術(shù)的突飛猛進(jìn),紅外遙控逐漸成為通信和遙控的主要實(shí)現(xiàn)方式。同時(shí),在輻射、粉塵、高壓、有毒氣體的工業(yè)環(huán)境中,紅外遙控更能安全高效的完成目標(biāo)任務(wù)。
然而,盡管紅外遙控具有如此多的優(yōu)勢(shì),但由于市面上的遙控器彼此不能兼容,也一定程度上限制了它的發(fā)展前景。本文在單片機(jī)的基礎(chǔ)上進(jìn)行了創(chuàng)新的設(shè)計(jì)理念,該設(shè)計(jì)不僅解決了傳統(tǒng)遙控器編程呆板、控制范圍狹小、功耗高、功能簡(jiǎn)單、成本高等缺點(diǎn),還提高了產(chǎn)品的復(fù)用率,符合當(dāng)下節(jié)能環(huán)保的理念,因此該技術(shù)具有巨大的應(yīng)用市場(chǎng)。
一、總體設(shè)計(jì)
(一)基于單片機(jī)的紅外遙控系統(tǒng)概述
本文以擴(kuò)展紅外遙控技術(shù)為目的,在一種新型紅外遙控控制的方案的基礎(chǔ)上,實(shí)現(xiàn)對(duì)四個(gè)不同環(huán)境的設(shè)備進(jìn)行單獨(dú)控制的功能,從而設(shè)計(jì)出的一個(gè)多功能紅外遙控器。
發(fā)射信號(hào)首先經(jīng)過(guò)單片機(jī)編碼后發(fā)出,經(jīng)由紅外接收裝置接收后,再經(jīng)過(guò)單片機(jī)的解碼,從而使目標(biāo)電器實(shí)現(xiàn)響應(yīng)(遙控系統(tǒng)框圖如圖1)。
(二)設(shè)計(jì)方案思路
考慮到傳輸過(guò)程中的光波干擾,我們?cè)O(shè)定AT89S51單片機(jī)每13us產(chǎn)生38KHz的矩形脈沖信號(hào),然后由單片機(jī)是對(duì)鍵盤(pán)信息等數(shù)據(jù)進(jìn)行分析,并調(diào)制在紅外載波上,由紅外發(fā)射器發(fā)送給接收端。接收端經(jīng)過(guò)一系列操作,包括解調(diào)信號(hào)、信號(hào)放大、光電信號(hào)轉(zhuǎn)換、單片機(jī)解碼等,最終實(shí)現(xiàn)對(duì)受控設(shè)備的控制。
主控芯片我們采用的是市面上常見(jiàn)而且技術(shù)成熟、性能穩(wěn)定的AT89S51單片機(jī)。它具有體積小、易編程、功耗低、功能全等優(yōu)點(diǎn)[ 2 ]。
(三)研發(fā)方向和技術(shù)關(guān)鍵
1)合理設(shè)計(jì)硬件電路,使各模塊功能協(xié)調(diào);
2)紅外發(fā)射信號(hào)的脈沖波形;
3)紅外發(fā)射信號(hào)的編解碼;
4)單片機(jī)對(duì)IO口的操作。
(四)總體設(shè)計(jì)
紅外遙控系統(tǒng)主要應(yīng)用了光電信號(hào)的相互轉(zhuǎn)化的原理。當(dāng)用戶按下某個(gè)按鍵時(shí),單片機(jī)會(huì)對(duì)該按鍵出發(fā)的電信號(hào)進(jìn)行編碼加工,生成脈沖信號(hào),并加載到載波上,借助紅外發(fā)射器,傳送到對(duì)應(yīng)的接收端,接收端收到脈沖信號(hào)后,再經(jīng)過(guò)處理姜脈沖信號(hào)進(jìn)行處理,轉(zhuǎn)化為數(shù)據(jù)流,最后由單片機(jī)對(duì)此數(shù)據(jù)流解碼并對(duì)IO口進(jìn)行控制,從而使目標(biāo)電器實(shí)現(xiàn)響應(yīng)。
二、硬件設(shè)計(jì)
(一)主控芯片AT89S51
AT89S51是由美國(guó)ATMEI公司設(shè)計(jì)研發(fā)而成,由于器具有功耗低、性能強(qiáng)的特點(diǎn),被廣泛應(yīng)用于嵌入式系統(tǒng)中。它有32個(gè)外部雙向輸入/輸出口,采用當(dāng)下流行的開(kāi)發(fā)環(huán)境,可用匯編語(yǔ)言或C語(yǔ)言進(jìn)行編譯、仿真,適用性極高。
此外,AT89S51還具有低功耗的閑置和掉電模式,在靜態(tài)邏輯下可以停止CPU的工作,但不影響RAM存儲(chǔ)、嵌套中斷、和串行通道的正常工作[ 3 ]。
在AT89S51中,我們加入了一個(gè)反向放大器,它具有高增益的特性,同時(shí)它有兩個(gè)引腳XTAL1和XTAL2,構(gòu)成了放大器的輸入輸出端。
(二)紅外遙控發(fā)射電路
紅外發(fā)射電路由按鍵電路、時(shí)鐘電路、復(fù)位電路和單片機(jī)等組成。遙控器上的按照控制對(duì)象的不同,一共設(shè)有6個(gè)按鍵。當(dāng)對(duì)應(yīng)的按鍵被按下時(shí),產(chǎn)生的電信號(hào)被單片機(jī)捕獲到,隨之就會(huì)發(fā)出數(shù)字編碼脈沖,并由AT89S51將其調(diào)制在38KHz的載波上,然后使紅外發(fā)光二極管產(chǎn)生相應(yīng)的脈沖經(jīng)過(guò)三極管的放大后傳送到受控器件的紅外接收器上[ 4 ]。
紅外發(fā)射器的制作材料較多,目前大多采用Ga、As,原因是這兩種材料制作的二極管能保證電流和發(fā)射強(qiáng)度、傳輸距離之間的線性正比關(guān)系。
在遙控信號(hào)的發(fā)射過(guò)程中,我們所需的電流最大值只需數(shù)十毫安,所以在驅(qū)動(dòng)紅外發(fā)射二極管之前需要三極管的放大。單片機(jī)需要將調(diào)制好的脈沖信號(hào)從P3.5引腳傳輸出去。根據(jù)上述分析,我們采用280倍的s8050放大器和68Ω的串接電阻和5.1Ω的基極電阻。
(三) 紅外遙控接收電路
紅外遙控接收部分由接收信號(hào)電路、驅(qū)動(dòng)程序、狀態(tài)顯示和單片機(jī)等組成。HS38B作為一體化紅外信號(hào)接收端,主要是將接收到的紅外信號(hào)進(jìn)行解調(diào),并調(diào)制在38KHz的脈沖信號(hào)上,最后由單片機(jī)的P3.2(INTO)引腳進(jìn)行高低電平的檢測(cè)[ 5 ]。
當(dāng)一體化接收端收到信號(hào)時(shí),單片機(jī)會(huì)產(chǎn)生中斷并識(shí)別P3.1口的信號(hào)電平,其原理是分析P3.1口輸入的脈沖電平高低及持續(xù)時(shí)間,最后還原為原發(fā)送數(shù)據(jù)。
單片機(jī)會(huì)通過(guò)對(duì)一體化紅外接收端收到的信號(hào)解 調(diào)得到控制碼,從而控制具體的設(shè)備。本設(shè)計(jì)中我們用4個(gè)LED燈來(lái)顯示受控設(shè)備的工作狀態(tài)。
由于單片機(jī)易受干擾,而受控設(shè)備和供電電源的電壓都是9V,所以必須要考慮兩者之間的噪聲。用光耦器件作為隔離元件能很好的解決受控設(shè)備和供電電源之間的電流噪聲,保證單片機(jī)的良好工作環(huán)境。
紅外遙控系統(tǒng)收到脈沖信號(hào)后,通過(guò)一體化接收端對(duì)信號(hào)進(jìn)行分析并操控受控設(shè)備,同時(shí)單片機(jī)把受控設(shè)備的統(tǒng)計(jì)結(jié)果顯示在一個(gè)共陽(yáng)數(shù)碼管。
(四)電源電路
在我們的這個(gè)設(shè)計(jì)中,所涉及的電源電壓都是9V,之所以這樣設(shè)定是基于成本、性能綜合考慮的。三段穩(wěn)壓器可以通過(guò)動(dòng)態(tài)調(diào)節(jié)限流電阻的方式,保證電路中電壓和電路以及器件工作功率的穩(wěn)定,因此我們選擇了三端穩(wěn)壓器。根據(jù)電壓的調(diào)節(jié)狀態(tài),三端穩(wěn)壓器可以分為兩種,其中輸入電壓固定的稱之為固定輸出三端穩(wěn)壓器,相應(yīng)的電壓可調(diào)則為可調(diào)輸出三端穩(wěn)壓器。三端穩(wěn)壓器僅有3個(gè)引腳,可接元減少,方便穩(wěn)定,是線性集成穩(wěn)壓器中應(yīng)用最為廣泛的一種。
由于本設(shè)計(jì)含有兩個(gè)不同電壓,故加入了兩個(gè)固定輸出三端穩(wěn)壓器,分別是7805和7809,分出的電壓分別為9V和5V的兩個(gè)支路。電路直流穩(wěn)壓電源的主要分為四部分,它們分別是電源變壓器、整流電路、濾波電路和穩(wěn)壓電路[ 6 ]。
三、軟件設(shè)計(jì)
(一)總體方案
本設(shè)計(jì)是基于AT89S51單片機(jī)的遙控系統(tǒng),因此有單片機(jī)來(lái)實(shí)現(xiàn)設(shè)計(jì)中最為重要的的軟件編碼部分。匯編語(yǔ)言的簡(jiǎn)單易用、功能易實(shí)現(xiàn)、易調(diào)試編譯的特點(diǎn)使之成為MCS-51系列單片機(jī)的主要開(kāi)發(fā)語(yǔ)言。本次我們也同樣采用匯編語(yǔ)言來(lái)實(shí)現(xiàn)遙控功能,軟件為KeilμVision.
(二)編碼發(fā)射程序
與傳統(tǒng)的紅外發(fā)射器不同,我們的設(shè)計(jì)創(chuàng)新性的引入了AT89S51單片機(jī)控制系統(tǒng)。使用者的操作信息首先會(huì)通過(guò)按鍵下面的瞬時(shí)電流信號(hào),然后單片機(jī)對(duì)所控制的對(duì)象進(jìn)行狀態(tài)的識(shí)別,如果狀態(tài)為‘0,則正序編碼,相反,進(jìn)行反相編碼,最后轉(zhuǎn)化成與之對(duì)應(yīng)的脈沖信號(hào),通過(guò)載波發(fā)送出去。
用戶的按鍵信息是發(fā)射程序的信號(hào)源,單片機(jī)通過(guò)采集該信息來(lái)生成四種信息碼:控制碼、控制反碼、系統(tǒng)識(shí)別碼、識(shí)別反碼,然后把這四種碼編譯成4個(gè)8位的二進(jìn)制數(shù)據(jù)流,再由AT89S51中的終端系統(tǒng)將其以作為脈沖信號(hào)發(fā)射出去。
每按下一個(gè)按鍵會(huì)產(chǎn)生一個(gè)8位二進(jìn)制的數(shù)據(jù),該數(shù)據(jù)會(huì)觸發(fā)數(shù)據(jù)發(fā)送子程序。
(三)紅外遙控接收程序設(shè)計(jì)
紅外短距遙控接收程序的功能是把收到的脈沖信號(hào)還原為二進(jìn)制編碼信息,即對(duì)輸入信號(hào)的翻譯。單片機(jī)產(chǎn)生的中斷取決于引導(dǎo)碼,當(dāng)收到T>4ms的高電平引導(dǎo)碼時(shí),引起單片機(jī)產(chǎn)生中斷,并視此碼為有效碼。
當(dāng)其收到5ms和3ms的高低電平時(shí),則會(huì)先和有效碼的大小進(jìn)行對(duì)比,若果滿足中斷條件,則出現(xiàn)中斷。此外,控制單元還會(huì)對(duì)觸發(fā)中斷的低電平時(shí)間進(jìn)行統(tǒng)計(jì),其中只有T>4ms的引導(dǎo)碼才是有效的[ 7,11 ]。
紅外短距遙控一體化接收部分具有識(shí)別電平特性的功能。在我們的設(shè)計(jì)中,碼‘1和‘0的電平高低是不一樣的。接收頭通過(guò)識(shí)別碼電平的方式來(lái)對(duì)接收到的信號(hào)進(jìn)行解碼操作的。
如果高電平時(shí)間間隔T>0.8ms,則對(duì)P3.1口執(zhí)行電平采樣的操作,然后對(duì)其取反,得到二進(jìn)制原碼,并儲(chǔ)存在累加器A中。最后跳出子循環(huán)體,等待下一個(gè)高電平的出現(xiàn)[ 8 ]。八位信號(hào)數(shù)據(jù)全部讀取完畢后,結(jié)束讀碼子程序,執(zhí)行下一步[ 9 ]。
四、仿真與制作
由于本設(shè)計(jì)是基于AT89S51單片機(jī),所以為了提高設(shè)計(jì)的可靠性及便于完善設(shè)計(jì),我們可以采用仿真軟件對(duì)其進(jìn)行模擬調(diào)試。
(一)系統(tǒng)仿真
我們使用的仿真軟件主要是Altium Designer和Keil。
PROTEL是Altium公司在1985推出的EDA軟件, Altium Designer是protel的升級(jí)版本,它將設(shè)計(jì)流程、PCB設(shè)計(jì)、可編程器件設(shè)計(jì)等眾多功能整合在一起,提供了PCB制作和嵌入式設(shè)計(jì)的解決方案。同時(shí)它還對(duì)處理器模型和編譯器具有較好的支持。
Keil是在單片機(jī)的開(kāi)發(fā)上有著明顯的優(yōu)勢(shì),首先它提供了極其方便的集成環(huán)境,不論是使用C語(yǔ)言還是匯編語(yǔ)言都能完美的工作,其次,Keil提供了C編譯器、庫(kù)管理、仿真調(diào)試器在內(nèi)的完整的開(kāi)發(fā)方案,令工作事半功倍[ 10 ]。
(二)硬件電路制作與軟件下載
在經(jīng)過(guò)仿真調(diào)試得出最終的設(shè)計(jì)方案后,接下來(lái)就是硬件電路的制作與軟件的下載。AT89S51具有優(yōu)秀的可編程性,通過(guò)預(yù)留的ISP串行編程接口,用USB-ASP下載器可以進(jìn)行軟件下載。
五、結(jié)論
設(shè)計(jì)的最后環(huán)節(jié)是功能測(cè)試,具體結(jié)果如表1:
參考文獻(xiàn):
[1] 趙巍,馮娜.單片機(jī)基礎(chǔ)及應(yīng)用[M].北京:清華大學(xué)出版社,2009:94-103.
[2] 高慧芳.單片機(jī)原理及系統(tǒng)設(shè)計(jì)[M].杭州:杭州電子科技大學(xué),2008:124-174.
[3] 聶詩(shī)良, 李磊民.采用單片機(jī)發(fā)送并接收紅外遙控信號(hào)的方法[J]. 信息技術(shù),2004,28(2):21-96.
[4] 周潤(rùn)景,張麗娜,丁莉.基于PROTEUS的電路及單片機(jī)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2010.
[5] 吳金戌,沈慶陽(yáng),郭庭吉.8051單片機(jī)實(shí)踐與應(yīng)用[M].第1版,清華大學(xué)出版社,2002.
[6] 胡偉.單片機(jī)C程序設(shè)計(jì)及應(yīng)用實(shí)例[M].人民郵電出版社,2003.7.
[7] 實(shí)用電子元器件手冊(cè).上海科學(xué)技術(shù)出版社[M].1998.2.
[8] K. Mandai, K. Miyauchi, M. Sugimoto,Y. Natsume and K. Ookubo. AN ADVANCED INFRARED REMOTE CONTROL SENSOR[J]. IEEE,1990.6,36(3).
[9] 楊恢先,王子菡,楊穗,陶霞.一種基于單片機(jī)的紅外遙控軟件解碼方法[J].自動(dòng)化與儀器儀表,2004,(2):16-32.
[10] Michael A. Miller. Data and Network Communications[M].第一版,科學(xué)出版社,2002.
[11] 徐向民.Altium Designer 快速入門(mén)[M].北京:北京航空航天大學(xué)出版社,2008.
作者簡(jiǎn)介:
李世瑾(1993-),女,河南安陽(yáng)人,河南師范大學(xué)教育與教師發(fā)展學(xué)院2013級(jí)教育技術(shù)學(xué)(數(shù)字媒體設(shè)計(jì)方向)專業(yè)在讀本科生,研究方向:教育技術(shù)學(xué)。