自學習紅外遙控器的設計與實現(xiàn)
給出了自學習紅外遙控器的一種設計,采用測量脈沖寬度的原理,適用于大多數(shù)電子產品的遙控器。介紹了轉發(fā)紅外信號的方法。
本文引用地址:http://2s4d.com/article/161699.htm關鍵詞:紅外遙控,單片機,紅外信號
紅外遙控在家電產品中有廣泛應用,但各產品的遙控器不能相互兼容,目前市面上常見的萬能遙控器只能對某幾種產品進行控制,不是真正的“萬能”。本文利用單片機對遙控器的發(fā)射信號的波形進行測量,然后將測量的數(shù)據回放,由于只關心發(fā)射信號波形中的高低電平的寬度,不管其如何編碼,因此做到了真正的“萬能”。
1 發(fā)射信號波形的測量
所有紅外遙控器的輸出都是用編碼后的串行數(shù)據對38kHz~40kHz的方波進行脈沖幅度調制而產生的。如果直接對已調波進行測量,而其脈寬只有20多微秒,由于單片機的指令周期是微秒級,會產生很大的誤差。因此,先要對已調波進行解調,對解調后的波形進行測量。
用CX20106對已調波進行解調,原理圖如圖1所示。
將CX20106解調出的遙控編碼脈沖直接連入8751單片機的和T0腳,定時器T0和T1都初始化為定時工作方式1,T0的GATE位置位。每次外部中斷首先停止定時,記錄T0、T1的計數(shù)值,然后將T0、T1的計數(shù)值清零,并重新啟動定時。T0的值即為高電平脈寬,T1~T0的值為低電平脈寬。T0、T1與紅外編碼信號脈寬的對應關系如圖2所示。
測量波形的外部中斷服務程序的流程如圖3所示。
評論