美丽的网站-英华家电维修论坛
标题:
红外线遥控编码格式
[打印本页]
作者:
万家正
时间:
2011-6-12 19:29
标题:
红外线遥控编码格式
. K) i! B2 v# z2 S0 e3 a
1、编码格式
/ b: w4 Z2 X- N: i; M X3 r2 r" v
现有的红外遥控包括两种方式:PWM(脉冲宽度调制)和PPM(脉冲位置调制)。
% l' ]+ ~0 [ Z% L1 \7 b
两种形式编码的代表分别为NEC和PHILIPS的RC-5、RC-6以及将来的RC-7。
" T6 A7 ^- `8 B
PWM(脉冲宽度调制):以发射红外载波的占空比代表“0”和“1”。为了节省能量,一般情况下,发射红外载波的时间固定,通过改变不发射载波的时间来改变占空比。例如常用的电视遥控器,使用NEC upd6121,其“0”为载波发射0.56ms,不发射0.56ms;其“1”为载波发射0.56ms,不发射1.68ms;此外,为了解码的方便,还有引导码,upd6121的引导码为载波发射9ms,不发射4.5ms。upd6121总共的编码长度为108ms。
# t C2 V. x, z7 ]3 g8 m
但并不是所有的编码器都是如此,比如TOSHIBA的TC9012,其引导码为载波发射4.5ms,不发射4.5ms,其“0”为载波发射0.52ms,不发射0.52ms,其“1”为载波发射0.52ms,不发射1.04ms。
$ K2 h- K9 I3 @( ? O
PPM(脉冲位置调制):以发射载波的位置表示“0”和“1”。从发射载波到不发射载波为“0”,从不发射载波到发射载波为“1”。其发射载波和不发射载波的时间相同,都为0.68ms,也就是每位的时间是固定的。
1 {3 `( Z# q/ S, A
通过以上对编码的分析,可以得出以某种固定格式的“0”和“1”去学习红外,是很有可能不成功的。即市面上所宣传的可以学习64位、128位必然是不可靠的。
0 s3 z% w, V: }$ Z* G% P4 M
另外,由于空调的状态远多于电视、音像,并且没有一个标准,所以各厂家都按自己的格式去做一个,造成差异更大。比如:美的的遥控器采用PWM编码,码长120ms左右;新科的遥控器也采用PWM编码,码长500ms左右。如此大的差异,假如按“位”的概念来讲,应该是多少位呢?64?128?显然都不可能包含如此长短不一的编码。
( e: ]* i+ q5 ~6 O
2、学习模式
: d/ Z# y ^. C+ U/ n0 v8 y
现在用来学习红外的CPU,无外乎以下几种:
: U! g& ^1 _/ [6 s& ?- L7 ~# o H
MCS-51系列、microchip pic16系列、winbond w741系列、holtek ht48系列
# ?# y' \ J7 B2 X" \
以上的CPU由于价格便宜、使用量大,被广泛使用在遥控器上。
& x0 Z* J( z R, f$ P- z
以上的CPU的基本点是:执行速度在1us左右,数据存储器一般为256个字节。假如按固定格式学习,一般可以学到128位(其他程序会占用一些数据存储器);假如不按固定的格式,需要找出编码的最小公约数作为基本单位,则可以学习到的位数大大降低,达不到实用的效果。但是,即使如此,找到的最小公约数不可能满足所有的红外设备,除非最小单位为26us(1000000/38k)。假如达到这个速度,以上CPU的速度远远不够,并且由于存储量的加大,数据存储器也远远不够用。
! j$ m1 ?; m& _( u: T5 `8 x% R/ D
对于电视、音响等,一般使用专用的遥控芯片,比如nec,philips,toshiba,sanyo,mitsubish,panasonic的芯片,其编码格式固定,一个键只有一个编码,学习比较轻易。
' {. t$ ?/ v; y
而空调不一样,各家空调厂商都是按自己的要求用cpu做遥控芯片,编码形式就有很多种。比如可能没有引导码(电视音响类都有)、校验方式取累加和(电视音响类一般取反码)等。由于空调的状态多,必须一次发送完毕,有制冷、温度、风速、自动、定时、加湿、制热等,所以编码很长,并且同一个按键,在不同状态下发送的编码不一样,造成学习上的困难。
8 n* m" O2 K: f& g3 n3 P- r
( z& m# c& `5 G f8 n8 n
作者:
静电
时间:
2011-6-14 21:34
谢谢万家正站长的分享,没有想到一个红外线遥控器还有那么多知识,我也学习了。
欢迎光临 美丽的网站-英华家电维修论坛 (http://www.bsss.info/)
Powered by Discuz! X3.2