发明名称 一种基于通信设备的红外数据的学以及存取方法
摘要 本发明公开了一种基于通信设备的红外数据的学以及存取方法,它属于应用通信领域,特别涉及一种运用键值表和红外数据存储表的关联映射来存储红外数据以及读取红外数据的实现方法。该方法首先通过采样学红外数据,并将其存储在红外数据存储表中,再通过对键值表进行一些相关定义,将相关的红外数据在存储表中的起始地址存储在键值表中相应的键位上,最后通过按键值利用公式(红外数据地址=L*设备类型编号+按键值*3+1)求得红外数据在键值表中对应的地址,通过读取该地址的内容可以知道该红外数据在红外数据存储表中的位置。利用本方法可以大大节省红外数据的存储空间,获得相对高效、灵活的红外数据获取方式。
申请公布号 CN101188457B 申请公布日期 2010.09.29
申请号 CN200710030344.7 申请日期 2007.09.21
申请人 广州市聚晖电子科技有限公司;中山大学;广东中大讯通信息有限公司 发明人 王炅;罗笑南;王建民;李志伟
分类号 H04B10/10(2006.01)I;H04Q9/00(2006.01)I;H04L29/02(2006.01)I 主分类号 H04B10/10(2006.01)I
代理机构 广州市深研专利事务所 44229 代理人 陈雅平
主权项 一种基于通信设备的红外数据的学习以及存取方法,它主要步骤包括:1)通过采样检测红外线的频率,遥控器进行红外数据的学习:a)计算出脉冲的时间t1、t2并存储在数据缓冲区,再根据t1、t2算出脉冲的周期T=t1+t2,b)读出脉冲的个数n,得出红外线发射的时间n*T,没有脉冲的部分,通过计时器得到,c)然后把这些时间按顺序存储在数据缓冲区中,d)以0x64、0xff作为结束标记,并记录下数据的长度;2)将保存在数据缓冲区中的红外数据存储到红外数据存储表中:a)获得红外数据的最后存放地址,b)将新学习的红外数据追加到a)中获得的地址之后;3)键值表格对红外数据进行学习:a)根据键值表格的设备类型划分存储分区数N以及定义的每个区占的字节数L,计算出红外数据的地址空间,b)再在键值表格的最后为每个存储分区预留2个字节的空间,用于存储设备类型对应的红外数据的末地址,c)规定每个存储分区里每3个字节为一个按键,即每个存储分区的按键数为L/3;每个按键占用3个字节,其中第一个字节的内容为X,所述X用于表示该按键学习红外数据的结果;第二、三个字节(Aaddh、Aaddl)存放红外数据在红外数据存储表中的起始地址;4)根据按键值,即可以通过公式计算:红外数据地址=L*设备类型编号+按键值*3+1,根据地址就可以找到对应的红外数据;所述根据每个按键第一个字节X取值的不同,数据处理的过程包括以下情况:A)X值为0时,即该按键没学习过红外数据,首先在键值表格的最后N*2个字节中,找到相应区域的那两个字节,读出里面的内容,即对应存储分区红外数据的末地址,接着根据学习的红外数据的长度和红外数据存储表剩余的存储空间,判断是否有足够的红外数据存储表存储空间,如果红外数据存储表存储空间足够,把学习到的红外数据按该末地址存入红外数据存储表,并修改末地址;B)X值为1时,即该按键学习过红外数据,首先读出此红外数据的存储地址,然后通过比较其他按键的存储地址,找到存在所述红外数据后面的下一个红外数据存储地址,即离所述学习过的红外数据存储地址最近的存储地址,然后可以计算出红外数据存储表剩余的存储空间,再比较刚学习的红外数据的长度判断是否有足够的红外数据存储表存储空间,如果足够,就把存在所述学习过的红外数据后面的所有红外数据向上移动,将所述学习过的红外数据覆盖掉,同时修改被移动的红外数据在键值表格中的地址,然后将刚学到的红外数据接着前面的红外数据存到后面,并修改该按键的键值地址和末地址;C)X值大于1时,即该按键学习过复用键红外数据,首先通过X的值找到复用键的地址,然后再执行B)的过程,如果以前没有复用过,就到每个存储分区几个末按键中查找没被复用的键值,即X为0,如果都被占用,则操作失败退出,如果有没被复用的键值,设置该键值第一个字节X为1,然后执行A)的过程。
地址 510630 广东省广州市天河区天河北路906号高科大厦A座13A层08室