学习型遥控器_第1页
学习型遥控器_第2页
学习型遥控器_第3页
学习型遥控器_第4页
学习型遥控器_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、22个元件构成的学习型遥控器(附制作过程, 电路图)红外学习型遥控器的主要功能是学习,意思是“复制”其他红外遥控器,取而代之。所谓“复制”,就是复制后的遥控器的所有功能与原遥控器一模一样。否则,就不能算成功的“复制”。学习型红外遥控, 可以分为两类:以固定码格式学习的遥控器和波形拷贝方式学习的遥控器。前者,需要收集各种不同种类的遥控器信号,然后进行识别比较,最后再记录。但是,要实现几乎所有的红外遥控器的成功复制就太难了。因为,红外遥控器的红外编码格式变化太多。不过这种学习型遥控器对硬件要求相对简单,处理器的工作频率可以不高,存储容量也较小,其缺点是对未知编码的遥控器无效。后者主要是把原始遥控器

2、所发出的信号进行完全拷贝,而不管遥控器是什么格式,存储在EEPROM 等存储器中。当发射时,只需将储存器中记录的波形长度还原成原始信号即可。这种学习型遥控器对MCU 的主频要求高,RAM 要求较大,其优点是对任何一种红外遥控器都可以进行学习。所以,我以第二种方案进行设计。红外学习遥控器的学习功能在某些应用场合非常有用。但是,学习遥控器的使用,需要原来的遥控器,没有原来的遥控器,学习功能就无法实现了,这也算一个缺点吧。所需元器件及材料:编号12345678910111213零件名称16MHz 晶振M8单片机插座数量11M8单片机1存储器插座1SST25VF040存储器1LED 灯红外一体接收头红

3、外发射二极管0.1F电容300电阻微动按钮ISP 下载插针万用板11113811 由于使用的SST25VF040存储芯片的封装比较小,所以笔者通过转接板,把SOIC 封装转接为DIP 封装,方便了后期的制作。这次制作的焊接工作很简单,都采用了DIP 的元器件。使用绝缘线,根据原理图连接对应引脚即可。焊接好的作品如图所示。电路原理 电路原理如图4所示。8个按钮的一端都连接到INT1接口上,这样所有按钮就都可以具有中断功能。SST 存储芯片是串口的,使用SPI 接口,因此和M8的SPI 接口直接连接即可,它具有512KB 大小。如果觉得容量太大,可以购买小容量的SST25VF010存储芯片,也有1

4、28KB 大小的。它的最高读写频率高达20MHz ,比M8单片机内置的EEPROM 快多了。LED 指示灯上要串联300的限流电阻,防止LED 过亮刺眼。红外发光管也串联了300电阻,实验证明,它的有效距离依然大于2m ,距离够用了。为了提高了红外逻辑采集的精度,电路使用16MHz 的晶体振荡器。红外接收头应该使用可以工作在低电压下的一体接收头,不然整个电路的工作电压就会上升了。 实验证明,整个电路可以在2.34.2V电压下正常工作,可以使用2节1.5V 电池作为它的工作电源。我使用的是3.6V 可充电电池。 之前,我使用了HS38B 红外一体接收头,但要录制红外信号时,电源电压必须大于4.0

5、V 才能正常录制。后来,我购买了低工作电压(2.04.2V)的红外一体接收头,具体型号没关系,只要引脚兼容就可以。设计要点介绍1. 红外编码方式红外遥控信号实际是一连串的脉冲码,它的逻辑长度一般代表二进制的“0”或“1”。通常为了提高发射距离,一般要将信号调制到特定的载波频率上,然后,通过红外发光二极管发射出去。红外一体接收头会滤除杂波,接收指定频率的信号,并还原成原来的二进制逻辑长度。一般,家里使用的遥控设备都是38kHz 的载波。常用的红外遥控包括两种调制方式:PWM (脉冲宽度调制)和PPM (脉冲位置调制)。PWM (脉冲宽度调制):以发射红外载波的宽度来代表“0”和“1”。例如常用的

6、VCD 、DVD 遥控器,其“0”为载波发射0.56ms 、不发射0.56ms ;“1”为载波发射0.56ms 、不发射1.68ms 。此外,还有引导码,一般为载波发射9ms ,不发射4.5ms 。PPM (脉冲位置调制):以发射载波的位置表示“0”和“1”。从发射载波到不发射载波为“0”,从不发射载波到发射载波为“1”。其发射载波和不发射载波的时间相同,都为0.68ms ,也就是每位的时间是固定的。还有一种不常用的调制方式:FSK (频移键控调制)。频移键控用两种不同的频率代表“0”和“1”。例如,发射0.6ms 的30kHz 载波代表“0”,发射0.6ms 的40kHz 代表“1”。当然,

7、这种方式不太常用。通过以上对编码方式的分析,可以得出以某种固定格式的“0”和“1”去学习红外信号的方法。这种方法虽然能有效地减少系统开销,但解码的成功率大大降低。另外,由于空调的遥控状态远多于电视机、DVD 等。因为它需要传输大量参数,如温度、风力、湿度、加热、制冷等,并且也没有一个统一的标准。如果按“位”的方式来记录,复制成功率会大大降低。那么,怎样才能完善地记录下遥控数据呢? 合适的单片机就能为这些数据提供存储空间。 2. 红外一体接收头的使用一体化红外线接收器是一种集红外线接收、放大、整形于一体的集成电路,不需要任何外接元件,就能完成从红外线接收到输出,并与TTL 电平信号兼容的所有工作

8、。没有红外遥控信号时为高电平,收到红外信号时为低电平。它的体积和普通的塑封三极管大小一样,适合于各种红外线遥控和红外线数据传输。图7是型号为HS38B 的红外一体接收头,经过实验证实,它的实际工作电压不得低于4.0V 。图7中HS38B 的引脚从左到右分别是:输出OUT、地GND、电源VCC。图8图10是我实验时红外一体接收头接收到的逻辑数据。为了使录制时的遥控器逻辑电平,和发射时的逻辑电平一致。我在输出端接了耦合电容,起到逻辑电平翻转的作用。当然,在制作遥控器时,耦合电容是不需要的,通过软件翻转即可。每张图上面的两个波形(蓝颜色的),是遥控器发射时的逻辑波形;下面两个波形(红色的)是笔者制作

9、的遥控器的波形。这些波形在自制的遥控器录制好红外编码后通过红外发射管发射出的。程序设计思路一、红外录制单片机程序通过记录逻辑电平的长度来实现红外遥控的编码记录。当然,它的明显缺点是需要占用较大的RAM 空间。但是它的学习成功率,比以某种固定长度记录“0”和“1”来学习红外信号的要高。程序要先判断电路中的REC 按钮是否被按下。按下后,LED 灯常亮,进入录制模式。按下需要分配的按钮,如SB1,LED 灭半秒后,又亮起,表示确认。现在,就可以拿起遥控器,对准红外一体接收头,按下要录制的按钮。录制好一次后,LED 会灭半秒后再次亮起。需要再录一次,录制成功后LED 灯就会完全灭了。现在才算真正完成

10、了录制。为什么要录制两次呢?因为,有些遥控器的编码是交错的。奇数和偶数次的编码数据是不一样的,即第1次和第2次按下同一个按钮,它的编码是不一样的。但是,第1、3、5次或第2、4、6次按下的按钮编码是一样的。通常,遥控器的电源按钮的开和关,也是不一样的编码。我家里的空调遥控器开和关虽是同一个按钮,但是编码却是不一样的。M8的定时器1工作在16位的定时器模式下,并设定为8分频,用于记录逻辑电平的长度,并用2字节,记录下逻辑电平的长度。当200ms 左右,红外一体接收头没有电平变化,记录就自动完成了。此时,数据还在M8的RAM 中。由于录制前已经分配好按钮号(SB1SB7),程序会把红外编码保存到S

11、ST25VF 存储器对应的分配空间里,一个按钮固定占用1KB 的存储器空间。二、红外发射 红外遥控器的载波,可以通过设置 M8的定时器 2产生。定时器 2工作在 CTC 模式下, 设定相关寄存器,产生 38kHz 的方波。就是我们需要的载波。 M8的 INT1引脚设置为输入模式,等待下降沿中断。 8个按钮对应的引脚全部输出0。 当 任意一个按钮按下后,就会产生下降沿中断。此时,程序在 INT1中断函数中,设置 INT1 引脚输出 0,同时 8个按钮设置为输入状态。这时读取接钮的引脚状态,如果为 0,就判断它 被按下了,如果为1就判断没有按下。 当录制好红外编码后, (SB1SB7)的某个按钮按下。程序会从 SST25VF 存储器中载入 对应的按钮编码波形,并通过38kHz 的载波发射。 使用方法 使用前,我们先要进行录制步骤,不然,SB1SB7按钮处于没有内容的状态,没有具体 的编码。 按下 REC 按钮,制作的遥控器就处于录制的模式状态,LED 灯常亮。这时,就可以指 定要复制的按钮。例如按下 SB1 按钮,此时 “制作的遥控器 ”就处于录制的等待状态。拿出空 调遥控器,对着一体化接收头,按下电源按钮。正常的话, LED 会灭半秒,表示接收奇数 编码完毕。再按

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论