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