紅外遙控器解碼原理

2021-07-09 17:22:01 字數 1385 閱讀 5852

紅外遙控器解碼原理

august 7th, 2015

1 紅外遙控系統

通用紅外遙控系統由發射和接收兩大部分組成,應用編/解碼專用積體電路晶元來進行控制操作,如圖1所示。發射部分包括鍵盤矩陣、編碼調製、led紅外傳送器;接收部分包括光、電轉換放大器、解調、解碼電路。

2 遙控發射器及其編碼

遙控發射器專用晶元很多,根據編碼格式可以分成兩大類,這裡我們以運用比較廣泛,解碼比較容易的一類來加以說明,現以日本nec的upd6121g組成發射電路為例說明編碼原理。當發射器按鍵按下後,即有遙控碼發出,所按的鍵不同遙控編碼也不同。這種遙控碼具有以下特徵:

採用脈寬調變的序列碼,以脈寬為0.565ms、間隔0.56ms、週期為1.125ms的組合表示二進位制的「0」;以脈寬為0.565ms、間隔1.685ms、週期為2.25ms的組合表示二進位制的「1」。

上述「0」和「1」組成的32位二進位製碼經38khz的載頻進行二次調製以提高發射效率,達到降低電源功耗的目的。然後再通過紅外發射二極體產生紅外線向空間發射。 upd6121g產生的遙控編碼是連續的32位二進位製碼組,其中前16位為使用者識別碼,能區別不同的電器裝置,防止不同機種遙控碼互相干擾。該晶元的使用者識別碼固定為十六進製制01h;後16位為8位操作碼(功能碼)及其反碼。upd6121g最多額128種不同組合的編碼。

遙控器在按鍵按下後,周期性地發出同一種32位二進位製碼,週期約為108ms。一組碼本身的持續時間隨它包含的二進位制「0」和「1」的個數不同而不同,大約在45~63ms之間。 當乙個鍵按下超過36ms,振盪器使晶元啟用,將發射一組108ms的編碼脈衝,這108ms發射**由乙個起始碼(9ms),乙個結果碼(4.5ms),低8位位址碼(9ms~18ms),高8位位址碼(9ms~18ms),8位資料碼(9ms~18ms)和這8位資料的反碼(9ms~18ms)組成。如果鍵按下超過108ms仍未鬆開,接下來發射的**(連發**)將僅由起始碼(9ms)和結束碼(2.5ms)組成。

1. 解碼的關鍵是如何識別「0」和「1」,從位的定義我們可以發現「0」、「1」均以0.56ms的低電平開始,不同的是高電平的寬度不同,「0」為0.56ms,「1」為1.68ms,所以必須根據高電平的寬度區別「0」和「1」。如果從0.56ms低電平過後,開始延時,0.56ms以後,若讀到的電平為低,說明該位為「0」,反之則為「1」,為了可靠起見,延時必須比0.56ms長些,但又不能超過1.12ms,否則如果該位為「0」,讀到的已是下一位的高電平,因此取(1.12ms+0.56ms)/2=0.84ms最為可靠,一般取0.84ms左右均可。

2. 根據碼的格式,應該等待9ms的起始碼和4.5ms的結果碼完成後才能讀碼。

接收器及解碼

一體化紅外線接收器是一種集紅外線接收和放大於一體,不需要任何外接元件,就能完成從紅外線接收到輸出與ttl電平訊號相容的所有工作,而體積和普通的塑封三極體大小一樣,它適合於各種紅外線遙控和紅外線資料傳輸

STM32 NEC紅外遙控器解碼

現有的紅外遙控包括兩種方式 pwm 脈衝寬度調製 和ppm 脈衝位置調製 兩種形式編碼的代表分別為nec 和philips 的rc 5 rc 6 以及將來的rc 7。nec 格式的特徵 1 使用38 khz 載波頻率 2 引導碼間隔是9 ms 4.5 ms 3 使用16 位客戶 4 使用8 位資料 ...

自製紅外空調遙控器

自製空調紅外遙控器 一開始網上看了很所紅外的協議nec,rc 5,rc 6,sirc。太多了,據說國內用的最多的是nec的協議。看看實際的波形圖吧 這是家裡格力空調遙控器的開機波形。先講一下紅外置收頭,市面上的有很多種,但總結下就是沒訊號高電平,有型號低電平,還有就是需要38khz的載波對應。傳送頭...

IRM3800 紅外遙控器解碼 linux驅動

這一次還是接在 cemera 上。用 中斷引腳 eint20 也就是 gpg12.之前焊的 51 板子上有乙個紅外置收器。請注意了,是 標準的 nec 碼規範 首次傳送的是9ms的高電平脈衝,其後是4.5ms的低電平,接下來就是8bit的位址碼 從低有效位開始發 而後是8bit的位址碼的反碼 主要是...