2004年 第8期仪表技术与传感器
InstrumentTechniqueandSensor2004 No18
红外遥控信号的一种编码解码方法
聂诗良,李磊民
(西南科技大学信息与控制工程学院,四川绵阳 621002)
摘要:以HS0038(红外信号接收频率为38kHz)作为红外接收头,详细介绍了红外遥控信号的单片机软件编码解码
方法,包括编码、调制和解码的原理以及以ATC2051为核心的硬件电路和程序实现,实现了基于字节的红外数据传输。经实验测试,该方法能使红外遥控信号可靠发送和接收,传输距离可达15m,如果适当减少编码所用的脉冲个数,传输速度可达1200bit/s.该方法可用于一些计算机控制系统中。关键词:红外遥控;单片机;编码解码中图分类号:TP3 文献标识码:A 文章编号:1002-1841(2004)08-0028-02
EncodingandDecodingMethodforInfraredRemote2controlSignalNIEShi2liang,LILei2min(SchoolofInformationandControlEngineering,SouthwestUniversityofScienceandTechnology,Mianyang621002,China)Abstract:Indetailintroducedanencodinganddecodingmethodforinfraredremote2controlsignalwithsoftwareofmicrochip,in2fraredsignalwasreceivedbyHS0038whosefrequencyis38kHz,includingprincipleofencodingandmodulationanddecoding,hardwarecircuitwhosecenterwasATC2051andprogram.Transmissionofinfraredremote2controlsignalbasedonbytewasrealized.Itsexperi2mentindicatesthatthemethodcanbenefittoreliabletransmissionofinfraredremote2controlsignal,distanceoftransmissioncouldreach15m,speedoftransmissioncouldreach1200bit/sifnumberofthepulseofencodingwouldbereducedproperly.Themethodcouldbeusedtocomputercontrolsystem.
KeyWords:InfraredRemote2control;Microchip;EncodingandDecoding
1 单片机红外遥控的原理
1.1 单片机红外遥控概述
红外遥控有发送和接收两个组成部分。一方面,发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲串信号,通过红外发射管发射红外信号;另一方面,目前红外接收端普遍采用价格低、性能可靠的一体化红外接收头(如HS0038接收红外信号,频率为38kHz,周期约为26μs)接收红外信号,它同时对信号进行放大、检波、整形,得到TTL电平的编码信号,再送给单片机,经单片机解码并执行,去控制相关对象。如图1所示。
二进制信号的调制仍由发送单片机来完成,它把编码后的二进制信号调制成频率为38kHz的间断脉冲串,相当于用二进制信号的编码乘以频率为38kHz的脉冲信号得到的间断脉冲串,即调制后用于红外发射二极管发送的信号。如图3所示,A为二进制信号的编码波形,B为频率为38kHz(周期为26μs)的连续脉冲串,C为经调制后的间断脉冲串(相当于C=A×B),用于红外发射二极管发送的波形。图3中待发送的二进制数据为101。
图1 单片机红外遥控的过程
1.2 二进制信号的编码
采用不同的脉宽宽度来实现二进制信号的编码,可由发送
单片机来完成。用图2(a)表示二进制信号中的高电平“1”,其特征是脉冲中低电平与高电平的宽度均等于0152ms,相当于20个26μs的宽度;用图2(b)表示二进制信号中的低电平“0”,其特征是脉冲中高电平的宽度等于0152ms,而低电平的宽度是1104ms,相当于40个26μs的宽度。上述20个和40个脉冲宽度还可适当减少,以增加数据传输速度。
图3 二进制信号的调制
1.4 二进制信号的解调
二进制信号的解调由一体化红外接收头HS0038来完成,
它把收到的红外信号(图4中波形D,即图3中波形C)经内部处理并解调复原,输出图4中波形E(正好是对图3中波形A的取反),HS0038的解调可理解为:在输入有脉冲串时,输出端输出低电平,否则输出高电平。
(a)“1”的表示 (b)“0”的表示
图2 二进制信号的编码
1.3 二进制信号的调制
收稿日期:2003-08-24 收修改稿日期:2004-04-27
图4 HS0038的输入输出波形
第8期
聂诗良等:红外遥控信号的一种编码解码方法 29
1.5 二进制信号的解码
二进制信号的解码由接收单片机来完成,它把红外接收头
送来的二进制编码波形(图4中波形E)通过解码还原出发送端发送的数据。如图4,把波形E解码还原成数据信号101。
1.6 基于字节传输的红外遥控数据格式
在发送字节的开始先通过单片机发送40个脉冲宽度(每个脉冲周期26μs)的高电平作为传输开始,接着发送8位数据(字节高位在前,低位在后),最后发送20个脉冲宽度的低电平作为传输结束,如图5所示。
LJMP NEXTS1:MOV R5,#20 ;发送编码“1”,先发送20个脉冲宽度的低电平 LCALL L MOV R5,#20 ;发送20个脉冲 LCALL HNEXT:DJNZ R4,GO ;发送8位未完,继续 MOV R5,#20 ;8位传输结束,再发送20个脉冲宽度的低电平(结束帧)
LCALL L RET
;1个周期t=26μs的脉冲(24MHz晶振,1个机器周期=015μs)H:SETB P1.0 ;015μs MOV R6,#11 ;015μs DJNZ R6,S| ;执行11次×1μs/次=11μs CLR P1.0 ;015μs MOV R6,#11 ;015μs DJNZ R6,S| ;11μs DJNZ R5,H ;1μs RET ;1μs
;1个26μs宽度的低电平L:CLR P1.0 ;015μs MOV R6,#24 ;015μs DJNZ R6,S| ;24μs RET ;1μs
2.2.2 接收程序设计
图5 基于字节传输的红外遥控数据格式
2 单片机红外遥控的实现
2.1 硬件电路设计
如图6,单片机采用ATC2051,它是51系列8位单片机,
内部有2kB的程序存储器,外部有P1和P32个8位并口,选用晶振频率fosc=24MHz.图6(a)中,SE303是红外发射二极管,当P1.0=1时,三极管9013导通,SE303通电发射红外线,实际上发射的是频率为38kHz的脉冲串;反之,三极管9013截止,SE303截止,不发射。图6(b)中,一体化红外接收头HS0038的圆形面为红外接收面,它与SE303红外发射管的有效收发直射距离可达35m.
(a)发射电路
(b)接收电路
图6 单片机红外遥控的硬件电路
2.2 软件设计
2.2.1 发射程序设计
编程要点:因HS0038的红外接收频率为38kHz,所以载波信号采用38kHz的矩形波。载波信号由子程序产生,矩形波
周期t=26μs.对需要发送的二进制信号调制,如图2“,1”用20个t的低电平和20个t的脉冲表示“,0”用40个t的低电平和
20个t的脉冲表示,占空比分别为1∶2和1∶3,符合NEC通用
编程要点:HS0038输出的信号是解调后的反向信号(如图
4波形E),所以接收到的信号解码也要经过反向才能和发送信号编码一致。当接收到同步帧后,进入解码部分,接收完1帧(8bit)后,处理收到的数据并进入下一次接收。解码采用软件抽样判决,以30个脉冲(1个脉冲=26μs)为判决门限,在门限时刻读得低电平时(如图7中A点),即可判定为编码“1”;在门限时刻读得高电平时(如图7中B点),即可判定为编码“0”。解码一位后,需等到下一位的高电平到来,再计数30个脉冲后,判断读得的电平是高还是低,进行解码。如图7中,C点为高,解码为“0”;D点为低,解码为“1”。
编码,8bit/帧,带同步帧(传输开始)和结束帧(传输结束),如图5。发射1个字节的子程序如下:
SEND:MOV A,#32H ;发送“2”的ASCⅡ码32H
MOV R4,#8 ;发送8位
MOV R5,#40 ;传输开始(同步帧),发送40个脉冲
LCALL H ;调用1次子程序H,产生1个周期26μs的脉冲
GO:RLC A ;发送字节的高位
图7 波形解码示意图
JC S1 ;判断是发送“0”还是“1”
MOV R5,#40 ;发送编码“0”,先发送40个脉冲宽度的低电平
LCALL L ;调用1次子程序L,产生宽度为26μs的低电平
MOV R5,#20 ;发送20个脉冲 LCALL H
接收1个字节的程序如下:
RECE:MOV R5,#8 ;接收8位 JB P1.0,S| ;等待同步帧,同步帧为低电平 MOV R7,#30 ;同步帧(低电平)到来后,延时等待30个脉冲的时间 LCALL DELAY ;调用1次子程序DELAY,产生1个26μs
(下转第32页)的延时
32
Ts=
Tk
InstrumentTechniqueandSensor
(6)
Aug2004
式中:Ts为采样周期;T为计算周期;k为1个计算周期内采样点的个数。
考虑到实际效果和实现的难易程度,系统采用了分频发射,通过不同的频点来区分不同的轮胎,并尽可能减小发射功率。
5 结束语
系统采用分模块设计,每1个轮胎对应1套感测和RF发射模块,通过不同的发射频点,实现对不同轮胎的识别和检测,提高了系统的抗干扰能力。感测和发射模块与接收模块之间通过无线射频进行数据传输。通过软件设计来控制RF发射器的发射次数,进一步降低功耗,延长了电源的使用寿命。系统各个模块中的主要芯片,尽可能地选用了同一生产厂家的芯片,降低了对主要芯片的要求和成本,进一步提高了系统各个部分的兼容性和稳定性。为了检验系统的实际应用效果,把实验样机安装在一辆4轮轿车上,对轮胎进行了48h的变压检测,结果表明:系统具有良好的稳定性和可靠性,正常情况下,电源的寿命应在8a以上,达到了设计的目的;同时,准确检测轮胎的压力,保证给轮胎及时充气,还可以减少轮胎的磨损,进一步降低了油耗,具有现实意义。
参考文献
[1] 姚琳.来自西门子的轮胎压力监测.系统橡塑技术与装备,2002
(28):52.
[2] 张晓云.轮胎压力监测系统.矿业快报,2002(8):22.
图3 轮胎压力采样示意图
4 抗干扰措施
由于汽车有多个轮胎,每个轮胎中都要安装1个数据采集
和发射模块,其中的无线射频发射芯片若工作在同一频点,相同频率的射频信号之间将会产生干扰,严重时,将会造成数据根本无法接收;另一方面,不同汽车上的无线射频发射芯片也同样会存在相同频率的射频信号之间产生干扰现象。针对以上情况,通常可以采用以下的几种解决办法:射频发射天线定向,即让射频发射天线向接收装置定向发射射频信号;分频发根据RF发射芯片的FSK调制解调和总的频宽来分频段,每1个无线射频发射芯片占用惟一一个频点;用汽车轮胎的轮毂钢环作天线;控制发射功率以减少干扰。
(上接第27页)通过测量磁场的强弱,还可以进行位置、距离的判别。在一些警卫系统中,就是通过摄像机摄取人的图像,与数据区的图像进行鉴别。利用磁阻来获取磁场信息有非接触、成本低、体积小、隐蔽性的优点,也可方便地实现与微机的接口。当然,由于微弱磁场的干扰以及三维物体形状的不规则、磁场的不均匀性等问题,在三维复杂问题的识别中,要经过很多复杂的提取、验算工作,正在进一步的改进。
(上接第29页) JB P1.0,RECE ;延时30个脉冲后,若P1.0=1,转RECE重新检测 JNB P1.0,S| ;延时30个脉冲后,若P1.0还是0,传输开始,再等编码中的高电平(如图7中E点和F点)GO:MOV R7,#30 ;编码中的高电平到来后,延时30个脉冲的时间 LCALL DELAY JNB P1.0,RE1 ;延时30个脉冲后,P1.0=0转RE1,P1.0=15.4 其他应用
顺序执行此外,由于AMR磁阻传感器的优良特性,人们也将它广泛
CLR C ;P1.0=1时应解码为0(图7中B点),使C清0用于其他技术领域,如磁罗盘、电流测量、流动检测、转速检测、 RLC A ;把移入寄存器A中,经8次移位到A的高位阀位控制、点火定时、机器人控制、活门位置检测、周期和时间
JB P1.0,S| ;跳过后续高电平(图7中G点所在高电平段)测量、位移和力的测量,直线或旋转运动及位置检测以及磁场
JNB P1.0,S| ;跳过后续低电平(图7中H点所在低电平段)分布的测量和铁磁材料磁滞回线的测量等领域。
LJMP NEXT ;转接收下一位
6 结束语
RE1:SETB C ;P1.0=0时应解码为1(图7中A点),使C置1
各向异性磁阻传感器是一种以量子效应为原理的高精
RLC A ;把C=0移入寄存器A中
度、小体积、高稳定性的新型磁性传感器。HMC1002有两个
JNB P1.0,S|
敏感轴方向,是一种二维传感器。它的offset与set/reset管
NEXT:DJNZR5,GO ;8位未接收完,继续脚的设计有利于提高精度和数据测量的可重复性。将
RET
HMC1002与数字技术结合起来,在工业与军事方面都有应
;26μs延时子程序(24MHz晶振,1个机器周期为015μs)
用的前景,在一些智能识别系统中应用的就是相关性检测
DELAY:NOP ;015μs
的方法,而各项异性磁阻传感器以其在弱磁检测中的独特
MOV R6,#24 ;015μs
优势,在识别检测方面一定有更广的应用前景。
DJNZ R6,S| ;24μs
参考文献
DJNZ R7,DELAY ;每次1μs[1] BAIBICH.M.N.Phys.Rev.Lett,1988():2472-2487.
RET ;1μs(可忽略)[2] 周勋,梁冰清,唐文俊,等.磁电阻效应的研究进展.物理实验,
[3][4]
[5][6]
2000,20(9):13-16. 姚学标,郑万鎏,柳宗英.铁磁金属薄膜磁阻传感器的研制.安徽大学学报,1995,15(1):45-49. HoneywellMagneticSensorProductsUserπsManual,1998. 徐彤,王涌天,阎达远.用于虚拟现实的六自由度电磁跟踪系统.北京理工大学学报,2000,20(5):62-. 程佩青.数字信号处理教程.北京:清华大学出版社,2001:90-110.
3 结束语
经实验测试,红外遥控信号的编码解码方法没有出现传输误码,可靠、实用,在编码解码方面降低了硬件成本。若在数据传输协议中,加上地址帧(设备号码识)和校验帧,该方法在计算机系统中将有更广泛的应用。
参考文献
[1] 杰.单片微机原理及应用.第2版.北京:机械工业出版社,2001.