【摘要】本文在自主研發(fā)的DAB接收機的基礎(chǔ)上,提出一種使用RPM6900光電傳感器來實現(xiàn)遠(yuǎn)程紅外遙控的方法。當(dāng)DAB接收機固定安裝以后,我們有對接收機進(jìn)行遠(yuǎn)程遙控的需求,這不僅能讓我們的接收機有更多更新的功能,也能更好的滿足用戶的需求。經(jīng)測試表明,該方法能可靠的對接收機進(jìn)行遠(yuǎn)距離的播放節(jié)目和音量的選擇控制。
【關(guān)鍵詞】數(shù)字音頻廣播;DAB接收機;遠(yuǎn)程遙控
1.引言
紅外線遙控是目前使用最廣泛的一種無線、非接觸控制技術(shù),它具有使用方便、功耗低抗干擾能力強等諸多優(yōu)點,使其在越來越多的電器中得到運用。電視機遙控器是紅外遙控系統(tǒng)中的典型代表。
一般的紅外遙控系統(tǒng)是由紅外遙控信號發(fā)射器、紅外遙控信號接收器和微控制器及其外圍電路等三部分構(gòu)成的。遙控信號發(fā)射器用來產(chǎn)生遙控編碼脈沖,驅(qū)動紅外發(fā)射管輸出紅外遙控信號,遙控接收頭完成對遙控信號的放大、檢波、整形,解調(diào)出遙控編碼脈沖。遙控編碼脈沖是一組組串行二進(jìn)制碼,對于一般的紅外遙控系統(tǒng),此串行碼輸入到微控制器,由其內(nèi)部CPU完成對遙控指令解碼,并執(zhí)行相應(yīng)的遙控功能。
在紅外遙控系統(tǒng)中,解碼的核心是CPU。它接收解調(diào)出的串行二進(jìn)制碼,在內(nèi)部根據(jù)本系統(tǒng)的遙控信號編碼格式將串行碼對應(yīng)成遙控器上的按鍵。本文的主要研究內(nèi)容就是在以STM8S單片機為控制核心的接收機上結(jié)合RPM6900感應(yīng)器實現(xiàn)對已調(diào)制的編碼指令信號接收和解調(diào)工作,并由STM8S單片機進(jìn)行對編碼指令的譯碼工作,最后由單片機來完成各種指令的操作控制。
2.紅外遙控原理及其編碼
紅外光實際上就是一種特殊顏色的普通光。我們不能看到這種特殊的顏色是因為它的波長大于950nm,位于可見光譜之下。我們不能看到它的特殊顏色,這就是我們使用紅外光遙控的原因之一:我們要利用它,但我們不希望能看到它。另一個原因就紅外LED(發(fā)光二極管)十分容易制作,制作成本很低。
為了能區(qū)別有用信號與噪聲,我們將紅外光調(diào)制到特定的頻率,紅外接收器會適配到這個頻率,其他噪聲信號都將被忽略。系統(tǒng)結(jié)構(gòu)如圖1所示,圖左邊是調(diào)制信號經(jīng)驅(qū)動放大由紅外LED發(fā)射;圖右邊信號通過接收器檢測輸出。
圖1 系統(tǒng)結(jié)構(gòu)圖
2.1 數(shù)據(jù)幀
數(shù)據(jù)由編碼器(遙控器)采用脈沖寬度調(diào)制的方式,通常調(diào)制到37.92kHz的載波上通過紅外發(fā)光二極管發(fā)射到空中,不同的編碼芯片,其編碼格式略有不同,以NEC遙控編碼芯片uPD6121為例,說明紅外遙控的編碼原理。當(dāng)按下遙控器按鍵,遙控碼發(fā)出,其數(shù)據(jù)由前導(dǎo)碼、用戶碼高8位、用戶低8位碼、數(shù)據(jù)碼、數(shù)據(jù)反碼組成一數(shù)據(jù)幀,其中前導(dǎo)碼為9ms高電平接著4.5ms低電平,標(biāo)志數(shù)據(jù)幀的開始;用戶碼(共16位)為紅外接收器識別遙控器的身份的標(biāo)志,不同的遙控器一般用戶碼不同,以防止不同電器設(shè)備之間遙控碼的干擾;數(shù)據(jù)碼為紅外接收器識別遙控器上不同的按鍵的標(biāo)志,對同一遙控器來說,按不同的鍵所發(fā)出的二進(jìn)制編碼具有相同的用戶碼,不同的數(shù)據(jù)碼。如圖2所示。數(shù)據(jù)反碼用于信息正確接收校驗。
圖2 upd6121數(shù)據(jù)幀
2.2 數(shù)據(jù)位定義
以脈寬0.56ms間隔0.565ms周期1.125ms表示二進(jìn)制“0”,以脈寬0.56ms間隔1.69ms周期2.25ms表示二進(jìn)制“1”,其波形如圖3所示。
圖3 數(shù)據(jù)位“0”和“1”
2.3 重復(fù)碼
以9ms高電平,2.25ms低電平,再0.56ms高電平定義為重復(fù)碼,持續(xù)按鍵時,該鍵編碼連續(xù)發(fā)送,首幀為數(shù)據(jù)幀,其后為重復(fù)碼,周期為108ms,如圖4所示。
圖4 重復(fù)碼
3.紅外遙控的接收及解碼
RPM6900通過樹脂塑膠封裝而形成輕小型化的遠(yuǎn)程控制受光模組。由于是內(nèi)置電磁屏障,所以即便是沒有屏障蓋,也可以保持很高的耐EMI干擾特性。常用于在一般的TV、DVD、空調(diào)、音響等家電設(shè)施。
3.1 解碼系統(tǒng)硬件接口
單片機采用意法半導(dǎo)體公司的STM8S單片機,STM8S是基于8位框架結(jié)構(gòu)的微控制器,其CPU內(nèi)核有6個內(nèi)部寄存器,通過這些寄存器可高效。STM8S提供三種類型的TIM定時器:高級控制型(TIM1)、通用型(TIM2/TIM3/TIM5)和基本型定時器(TIM4/TIM6)。輸入捕獲功能是用來監(jiān)測外部事件和輸入信號的。當(dāng)外部是事件或信號發(fā)生變化時,在指定的輸入捕捉引腳上發(fā)生一個指定的沿跳變(可以是上升沿或者下降沿)。定時器捕捉到特定的沿跳變后,把計數(shù)器當(dāng)前值鎖存到通道寄存器中。本文使用高級TIM1高級控制型定時器,TIM1由一個16位的自動裝載計數(shù)器組成,它有四個不同的捕獲/比較通道,我們選擇通道一,捕獲方式設(shè)置為下降沿捕獲,當(dāng)通道一檢測到輸入信號有下降沿變化時,定時器記錄當(dāng)前值
3.2 軟件設(shè)計
單片機紅外解碼軟件要保證正確無誤地還原遙控碼,其主要功能包括以下幾部分:
(1)過濾附加信息,得到有效信息位;
(2)排除系統(tǒng)內(nèi)外各種干擾信號;
(3)丟棄接收到的不完整信息幀;
(4)檢驗接收信息的正確性。
根據(jù)功能要求,設(shè)計分為3部分:定時器輸入捕獲設(shè)置、定時器1輸入捕獲中斷服務(wù)程序、按鍵判斷程序。T1中斷服務(wù)程序主要完成校驗程序主要完成接收信息的校驗。將正確的接收代碼保存在變量中以備使用和系統(tǒng)接收到超長信號時定時器T1的復(fù)位。T1中斷服務(wù)程序是整個解碼軟件的核心,它要排除各種干擾信號,正確將遙控器發(fā)出的16位編碼的每一位的時間長度存入設(shè)定的RAM緩沖區(qū),供系統(tǒng)主程序解碼還原。其系統(tǒng)流程如圖5所示。
圖5 程序流程圖
4.測試
本文使用紅外遙控器對接收機音量大小控制和節(jié)目選擇控制。分別音量大小控制鍵和節(jié)目選擇控制鍵,接收機相應(yīng)的增大、減小音量和進(jìn)行節(jié)目選擇。
參考文獻(xiàn)
[1]楊恢先,楊穗,王子菡等.一種基于單片機的紅外遙控軟件解碼方法[J].自動化與儀器儀表,2004(2):16-18.
[2]陸明瑩,張賢斌,王國裕等.基于ID200的便攜式DAB接收機的設(shè)計和實現(xiàn)[J].電聲技術(shù),2010(12):81-83.
[3]盧磊,王祖榮,梅霞.C8051B40單片機在紅外解碼器上的應(yīng)用[J].長江大學(xué)學(xué)報,2011,6(5):4-6.
作者簡介:尹偉(1987—),男,研究生,研究方向:嵌入式控制設(shè)計。