自學(xué)習(xí)紅外遙控器的設(shè)計(jì)與實(shí)現(xiàn)
給出了自學(xué)習(xí)紅外遙控器的一種設(shè)計(jì),采用測量脈沖寬度的原理,適用于大多數(shù)電子產(chǎn)品的遙控器。介紹了轉(zhuǎn)發(fā)紅外信號的方法。
本文引用地址:http://butianyuan.cn/article/161699.htm關(guān)鍵詞:紅外遙控,單片機(jī),紅外信號
紅外遙控在家電產(chǎn)品中有廣泛應(yīng)用,但各產(chǎn)品的遙控器不能相互兼容,目前市面上常見的萬能遙控器只能對某幾種產(chǎn)品進(jìn)行控制,不是真正的“萬能”。本文利用單片機(jī)對遙控器的發(fā)射信號的波形進(jìn)行測量,然后將測量的數(shù)據(jù)回放,由于只關(guān)心發(fā)射信號波形中的高低電平的寬度,不管其如何編碼,因此做到了真正的“萬能”。
1 發(fā)射信號波形的測量
所有紅外遙控器的輸出都是用編碼后的串行數(shù)據(jù)對38kHz~40kHz的方波進(jìn)行脈沖幅度調(diào)制而產(chǎn)生的。如果直接對已調(diào)波進(jìn)行測量,而其脈寬只有20多微秒,由于單片機(jī)的指令周期是微秒級,會產(chǎn)生很大的誤差。因此,先要對已調(diào)波進(jìn)行解調(diào),對解調(diào)后的波形進(jìn)行測量。
用CX20106對已調(diào)波進(jìn)行解調(diào),原理圖如圖1所示。
將CX20106解調(diào)出的遙控編碼脈沖直接連入8751單片機(jī)的和T0腳,定時器T0和T1都初始化為定時工作方式1,T0的GATE位置位。每次外部中斷首先停止定時,記錄T0、T1的計(jì)數(shù)值,然后將T0、T1的計(jì)數(shù)值清零,并重新啟動定時。T0的值即為高電平脈寬,T1~T0的值為低電平脈寬。T0、T1與紅外編碼信號脈寬的對應(yīng)關(guān)系如圖2所示。
測量波形的外部中斷服務(wù)程序的流程如圖3所示。
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號放大器
評論