搜索
bottom↓
回复: 25

关于学习型红外遥控器,如何完美解决学习遥控数据的处理?

[复制链接]

出0入0汤圆

发表于 2009-11-25 09:24:44 | 显示全部楼层 |阅读模式
有个问题一直困扰我

   目前市面上有很多学习型遥控器,有些问题我也碰到过,比如只能学习有限的几种波形。

   我的问题是,目前学习型遥控器,如何实现

   1。采样一段时间的红外波形,同时判断什么波形,data,然后存储,用时直接调用波形,数据。

      问题:这样必定需要一个很大的程序空间来判断所有种类的波形。

   2。直接班波形时间如高低电平时长存储。用时即原班调用数据的高低电平来发送

      问题:这样必定需要很大的EEPROM来存储每一个key的高低电平,同时,学习时按的时间长短如何取决,发送时如何循环?难道发送一次就完?

   目前一直能难完美解决这个问题,希望做过的朋友能指点下,谢谢

   第一次发帖,请多多关照!

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

 楼主| 发表于 2009-11-25 09:51:46 | 显示全部楼层
有做过的 或者有更好方法的能帮下忙吗  谢谢

出0入0汤圆

发表于 2009-11-25 10:41:40 | 显示全部楼层
好久没有碰过这个东西了,凭我的记忆说说吧。

首先,发送一个时间比较长的载波,作为起始的标志,起始码需要单独记录。
然后开始发送数据,数据码也就两种,检测到不同的电平长度,分别标记为0和1即可,例如无载波时间长度相同,有载波的时间长度有两种,把两种分别标记为0和1,然后把数据流和两种码的时间长度分别记录下来。
数据发送完后,有个比较长的无载波信号,这个长度需要单独记录。
然后,接着红外发送重复码,重复码有两种方式,一种是重复发生数据,一种是发送单独的重复码,后者数据长度比较短,只有几个数据而已。重复码发送完成后,又是一个比较长的无载波时间,这个时间可能与发送完数据后的那个时间不同,需要单独记录。然后又再发送重复码,重复码与前面的重复码相同。周而复此,直到松开按键。

出0入0汤圆

发表于 2009-11-25 11:09:10 | 显示全部楼层
我也被这个问题弄得头痛,这个得弄个国际标准

出0入0汤圆

发表于 2009-11-25 11:27:08 | 显示全部楼层
这个没有国际标准,不过市面上多数采用菲利普的那个标准,可以去找找这个看看

出0入0汤圆

 楼主| 发表于 2009-11-25 11:54:41 | 显示全部楼层
roasn 冰封的心

  说的情况 应该说是记录时间的吧,如果一直不放手 ,一直学习也有个空间限制,毕竟存储有限,肯定只能给 比如200BYTE最多

  问题来了

  如果用这200B 来处理,比如处理0 1  以及是什么样的波形,然后存放在一个8b的空间就可以了 但是这里需要很大量程序来判断是

  RC5 还是 NEC  还是  TOSHIBA  ....等等  市面上估计有20多种波形存在 那么要判断20多种,包括你说的 连续的还是不连续的。

  其次,如果不处理这些数据  而是 每个KEY给200b来存储学来的数据(高低电平时间),那么20KEY 就要4K 60K就要12K  同时有8种

  device的话 则需要12X8=96K EEPROM来存储学习数据,如果这样,显然还是挺大的。而且200B不一定能放下。

  而且存200b数据的方法时  对于那些 很长时间不发码的波形,这个低电平很长....  所以定时器必须要达到130MS左右的 周期。

  这样测0 1时精度就不会高了....

  很麻烦  

  有知道目前市场上的是如何处理的吗?

出0入0汤圆

发表于 2009-11-25 12:33:15 | 显示全部楼层
能学习各种空调的遥控波形就NB啦

出0入0汤圆

发表于 2009-11-25 12:54:12 | 显示全部楼层
很多遥控器,按着不松手的波形和点按是不一样的!

出0入0汤圆

发表于 2009-11-25 13:01:58 | 显示全部楼层
最近,也在研究~~楼主用什么芯片?
点击此处下载 ourdev_507074.pdf(文件大小:294K) (原文件名:基于AT89S51的多功能红外遥控器设计.pdf)

出0入0汤圆

 楼主| 发表于 2009-11-25 13:35:58 | 显示全部楼层
zbjzxc

   你的PDF看过了  只是个简单的遥控的设计流程 包括解码的原理

   没有学习的

   我开发时用的是AVR。

出0入0汤圆

 楼主| 发表于 2009-11-25 13:37:09 | 显示全部楼层
空调的波形不一样,是一个整体信息包

出0入0汤圆

发表于 2009-11-25 13:45:39 | 显示全部楼层
【6楼】 learnning
无论是哪种格式的编码,信号类型都不会很多,只需要存储不同长度的信号就行了,然后记录下这些不同的信号,最终用相当于查表的方式发送学习下来的编码。这样就不需要关心是什么格式的编码了。

出0入0汤圆

 楼主| 发表于 2009-11-25 16:33:04 | 显示全部楼层
【12楼】 roasn 冰封的心


           

        记录这个信号 需要很大空间,比如34BIT的  nec upd6122   高低电平记录时间的话 就应该68byte,16位定时器的话是

       136byte 空间把一个完整的波形记录下来。发送时去从这136b的空间取出发送的话  是不用关心编码的,

        你说的应该是这个方式吧,这个方式就是占用空间比较多,60keys的话就是60X136B,  当然我们不会是136b,因为有些波形

       不止这么多,因而预留200b是最少的。  

       当然,我觉得好像还有个问题,查表方式发送上面的数据  200完成了以后 是循环还是停止呢?  毕竟如果用户一直按键的话

       我们只发送一次波形?还是循环?循环不按波形规律?按规律就必须有判断什么波形。

出0入0汤圆

 楼主| 发表于 2009-11-26 08:44:54 | 显示全部楼层
额,没有人能帮忙下吗?

出0入4汤圆

发表于 2009-11-26 08:52:41 | 显示全部楼层
同求NEC协议详细PDF 在NEC协议中长按键的编码方式是如何定义的,哪位大侠能指点下

出0入0汤圆

发表于 2009-11-26 09:09:10 | 显示全部楼层
你还是没有看懂我的说法,我的意思不是每个bit都去记录,而只是记录不同的bit。
无论是什么编码格式,里面很多码流波形是一样的(载波时间相同、无载波时间相同),对吧?把这相同的波形分别标记,如标记为0、1,那1byte可以记录8bit数据,再加上为数不多的波形时间,消耗的空间并不大。当然,如起始位、停止位等特殊的时间需要单独记录。如果按键没有松开,当然是继续发送,但是,发送的只是重复码,不是数据码,那个数据量是很少的。也有一些遥控编码是重复发生数据码,那也无所谓,连重复码的记录都省了。
当然,这种方法需要程序做一些判断,但是不需要如你所说的判断属于什么编码。
我用这种方法做过,是可以成功的,我当时用Mega8的EEPROM记录了5个按键,按键不松开可连续发送。

出0入0汤圆

发表于 2009-11-26 09:12:38 | 显示全部楼层
简单地说,就是程序需要把不同的码流波形时间分别记录下来,如果后面遇到与前面波形一样的码流,不需要记录时间,标记成0或者1就行了,这就是数据码。

出0入0汤圆

 楼主| 发表于 2009-11-26 09:20:52 | 显示全部楼层
roasn 冰封的心  

    谢谢你了,虽然我用的是整套记录,记录完后再处理的方式,存储空间不多,例如下面方法中的编码格式识别法。

某公司学习遥控的2种处理方式:


   学习算法:两种。波形复制法:波形复制和分析处理;编码格式识别法:复制波形和分析识别出具体编码格式;(说明:两种算法各有优缺点。)
复制波形位数最小128位,最大300多位;(每种芯片方案都可以)
可学习无载波编码格式,载波学习范围:20K-500KHZ;(大部分芯片方案的载波范围是20-80KHZ)
载波识别误差:+-1KHZ;

出0入0汤圆

发表于 2009-11-26 11:47:10 | 显示全部楼层
记录引导码、有载波、无载波的时间;再把有载波和无载波以0和1来表示这样数据就得到压缩了,发时在还原出来。
另,编码种类很多,只能把常用的找规律做出来

出0入0汤圆

发表于 2009-12-1 15:26:28 | 显示全部楼层
波形的完全复制,这种方法好~~~只要一个红外接收二极管~~~

出0入0汤圆

发表于 2011-1-28 15:08:01 | 显示全部楼层
MARK

出0入0汤圆

发表于 2011-8-6 20:15:24 | 显示全部楼层
记录高低点评的宽度就行。。。据说。。。。正在研究中。。

出0入0汤圆

发表于 2013-8-28 16:52:01 | 显示全部楼层
收藏来,看看  

出0入0汤圆

发表于 2013-8-29 09:31:26 | 显示全部楼层
kcfoo1 发表于 2009-11-26 08:52
同求NEC协议详细PDF 在NEC协议中长按键的编码方式是如何定义的,哪位大侠能指点下 ...

把十六进制的转化成二进制你就明白了

出0入0汤圆

发表于 2014-10-21 14:11:55 | 显示全部楼层
最近要用,过来学习一下
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 17:22

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表