CN106228796A - 红外遥控的学习方法及装置 - Google Patents
红外遥控的学习方法及装置 Download PDFInfo
- Publication number
- CN106228796A CN106228796A CN201610779287.1A CN201610779287A CN106228796A CN 106228796 A CN106228796 A CN 106228796A CN 201610779287 A CN201610779287 A CN 201610779287A CN 106228796 A CN106228796 A CN 106228796A
- Authority
- CN
- China
- Prior art keywords
- coded data
- infrared
- infrared coded
- groups
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000001960 triggered effect Effects 0.000 claims description 3
- 125000004122 cyclic group Chemical group 0.000 description 22
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 230000011664 signaling Effects 0.000 description 8
- 238000004378 air conditioning Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000004321 preservation Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 238000007493 shaping process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C23/00—Non-electrical signal transmission systems, e.g. optical systems
- G08C23/04—Non-electrical signal transmission systems, e.g. optical systems using light waves, e.g. infrared
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C2201/00—Transmission systems of control signals via wireless link
- G08C2201/20—Binding and programming of remote control devices
Abstract
本发明公开了一种红外遥控的学习方法,该方法包括:接收红外遥控的按键被操作时所发送的红外信号;根据接收到的所述红外信号获得对应的红外编码数据;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。本发明还公开了一种红外遥控的学习装置。本发明能够实现对红外遥控每个按键的所有码值进行学习,从而扩大移动终端的学习范围,使移动终端能够更准确、更完整地学习原始按键的码值信息。
Description
技术领域
本发明涉及通信技术领域,尤其涉及红外遥控的学习方法及装置。
背景技术
红外遥控是目前使用最广泛的一种通信和遥控手段,可应用在电视、空调、电风扇、机顶盒、DVD等各种电器上。目前市面上的实体红外遥控器的控制范围是固定不变的,即只能控制与其对应的一种或几种电器,由于控制范围有限,不方便用户对其他新出的电器进行控制,因此就出现了学习功能,即通过终端对不同红外遥控的按键功能的学习,使得终端具有被学习红外遥控的功能,从而能够遥控该红外遥控所对应的电器。
目前,机械式遥控器及带红外功能的手机、平板电脑等移动终端可以对各种红外遥控的按键功能进行学习,使得用户不必频繁地更换遥控器,而是通过一个终端就能遥控各种电器,扩大了终端的遥控范围,用户使用起来也更加方便。然而,移动终端在对红外遥控器按键功能进行学习时,都只对被学习按键的一次发码信息进行采样,而某些遥控器的同一按键会根据按键次数不同而发出不同的码值,在这种情况下,移动终端就不能真实、全面地学习到该按键的所有码值,使得移动终端在遥控电器时,可能产生不能实现按键所有功能的现象。
发明内容
本发明的主要目的在于提出一种红外遥控的学习方法及装置,旨在实现对红外遥控每个按键的所有码值进行学习,从而扩大移动终端的学习范围,使移动终端能够更准确、更完整地学习原始按键的码值信息。
为实现上述目的,本发明提供一种红外遥控的学习方法,所述方法包括如下步骤:
接收红外遥控的按键被操作时所发送的红外信号;
根据接收到的所述红外信号获得对应的红外编码数据;
当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。
可选地,所述当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习的步骤之前,还包括:
在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;
当两组红外编码数据不同时,返回步骤:接收红外遥控的按键被操作时所发送的红外信号。
可选地,将按照红外编码数据中数据的获取顺序作为正序,所述在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比的步骤包括:
从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比;
若在两组红外编码数据按正序对比完成时检测到不同的数据,则分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,并从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
若在两组红外编码数据按逆序对比至位数少的一组的第一位置时未检测到不同的数据,则将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
若在两组红外编码数据按逆序对比至位数少的一组红外编码数据中第一位置时检测到不同的数据,则判定所述两组红外编码数据不相同。
可选地,所述从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比的步骤之后还包括:
若在两组红外编码数据按正序对比完成时未检测到不同的数据,则判断两组红外编码数据的长度是否相同;如果两组红外编码数据的长度相同,则判定所述两组红外编码数据相同;如果两组红外编码数据的长度不相同,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
若是,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不相同。
可选地,所述当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习的步骤之后,还包括:
根据用户触发的保存指令保存学习的红外编码数据。
此外,为实现上述目的,本发明还提供一种红外遥控的学习装置,所述装置包括:
接收模块,用于接收红外遥控的按键被操作时所发送的红外信号,
第一获取模块,用于根据接收到的所述红外信号获得对应的红外编码数据;
完成模块,用于当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。
可选地,所述装置还包括:
对比模块,用于在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;
所述接收模块还用于当两组红外编码数据不同时,接收红外遥控的按键被操作时所发送的红外信号。
可选地,将按照红外编码数据中数据的获取顺序作为正序,所述对比模块还用于:
从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比;
若在两组红外编码数据按正序对比完成时检测到不同的数据,则分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,并从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
若在两组红外编码数据按逆序对比至位数少的一组的第一位置时未检测到不同的数据,则将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
若在两组红外编码数据按逆序对比至位数少的一组红外编码数据中第一位置时检测到不同的数据,则判定所述两组红外编码数据不相同。
可选地,所述对比模块还用于:
若在两组红外编码数据按正序对比完成时未检测到不同的数据,则判断两组红外编码数据的长度是否相同;如果两组红外编码数据的长度相同,则判定所述两组红外编码数据相同;如果两组红外编码数据的长度不相同,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
若是,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不相同。
可选地,所述装置还包括:
保存模块,用于根据用户触发的保存指令保存学习的红外编码数据。
本发明接收红外遥控的按键被操作时所发送的红外信号;根据接收到的所述红外信号获得对应的红外编码数据;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。通过上述方式,移动终端在学习红外遥控按键的发码信息时,红外遥控的每个按键至少被按压和释放操作两次,在每次按压和释放操作的过程中,移动终端根据接收到的红外信号获得对应的红外编码数据,当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,说明该按键的码值已循环,此键的所有值都已学习到,此时结束完成该按键的学习,从而避免了终端只对被学习按键的一次发码信息进行采样所导致的按键学习不真实、不完整的问题。本发明能够实现对红外遥控每个按键的所有码值进行学习,从而扩大移动终端的学习范围,使移动终端能够更准确、更完整地学习原始按键的码值信息。
附图说明
图1为本发明红外遥控的学习方法第一实施例的流程示意图;
图2为本发明红外遥控的学习方法的应用场景示意图;
图3为本发明红外遥控的学习方法第二实施例的流程示意图;
图4为图3中在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比的细化流程示意图;
图5为两组红外编码数据的一种对比场景示意图;
图6为两组红外编码数据的另一种对比场景示意图;
图7为本发明红外遥控的学习方法第三实施例的流程示意图;
图8为本发明红外遥控的学习装置第一实施例的功能模块示意图;
图9为本发明红外遥控的学习装置第二实施例的功能模块示意图;
图10为本发明红外遥控的学习装置第三实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种红外遥控的学习方法。
参照图1,图1为本发明红外遥控的学习方法第一实施例的流程示意图。所述方法包括如下步骤:
步骤S10,接收红外遥控的按键被操作时所发送的红外信号。
在本实施例中,移动终端接收红外遥控的某一按键被操作时所发送的红外信号,其中,按键被操作的过程是指按键被按压和释放一次的完整过程。本实施例中所述移动终端可以包括智能手机,平板电脑等具有红外遥控学习功能的设备,其中智能手机,平板电脑等设备可以自身配置红外接头,也可以通过蓝牙、无线网或USB等方式连接配置有红外接头的外设来实现对红外遥控的学习,所述红外遥控可以包括电视机、机顶盒、DVD、空调等电器的遥控,具体实施中可进行灵活选择。
具体地,参照图2,图2为本发明红外遥控的学习方法的应用场景示意图。在本实施例中,移动终端可以通过启用红外遥控学习APP或其他红外信号学习程序进入学习状态,在移动终端进入学习状态后,用户将被学习红外遥控的前端对准移动终端的前端,并使得两者的红外接头间距在5CM以内,以防止红外信号的发送和接收受到干扰。在用户对红外遥控某一按键进行按压和释放一次的过程中,对应产生的红外信号经调制后通过红外发射器发送给移动终端。由于每个按键可能对应不同的码值,因此要对每个按键的多次发码信息进行采样。例如,当所述按键只对应一个码值时,只需要对所述按键进行两次按压和释放操作,码值就会循环;当所述按键对应不止一个码值时,用户对所述按键进行按压和释放的操作次数应大于两次。确切地,如果同一按键被连续学习N次才循环,说明这个按键有N-1个码值。因此可以理解为红外遥控的每个按键至少被按压和释放两次,移动终端才能够准确、完整地学习到原始按键的码值信息。
步骤S20,根据接收到的所述红外信号获得对应的红外编码数据。
在本实施例中,移动终端在接收到红外遥控发送的红外信号之后,根据接收到的所述红外信号获得对应的红外编码数据。
红外信号的发射是把载波和包络信号叠加起来,当移动终端接收到红外信号后,经解调模块内的运算放大器,将信号进行放大、整形、滤波,然后输入到载波和包络定时器,硬件电路就可把载波和包络信号分离出来,其中包络信号是不同高低电平的组合,代表不同的编码信息。所述红外信号经解调模块解调之后,就可以获得对应的红外编码数据,其中,红外编码数据是一组连续的高/低电平的时间值,比如9ms,4.5ms,560μs,560μs,1690μs,50ms,……。
在本实施例中,移动终端在接收到红外信号之后,对所述红外信号进行处理,得到所述红外信号的电平信息,然后根据所述电平信息获得对应的红外编码数据。为简化整个硬件电路,移动终端将专用的ASIC/MCU/FPGA芯片集成到主控CPU中,所述芯片用来完成红外信号的调制和解调以及编码信息的处理,当然,移动终端也可以不将所述芯片集成到主控CPU中,比如,所述芯片可以设置在主控CPU之外,通过UART/SPI/I2C接口和主控CPU交换信息,具体实施中可根据实际情况进行灵活设置。在移动终端接收到红外遥控发送的红外信号后,通过CPU中的专用电路对所述红外信号进行解调、放大、整形、滤波等,以获取到所述红外信号的电平信息,进而获得每个高/低电平对应的时间值,以获取到一组红外编码数据。在获取到红外编码数据之后,移动终端将所述红外编码数据保存在相应的存储区中,当然,具体实施中还可以通过其他获取方式获取所述红外编码数据,比如,利用串口将红外接收器接收到的红外信号发送到计算机上,通过计算机上的相关分析软件显示所述高/低电平的时间值,从而得到对应的红外编码数据。
步骤S30,当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。
在本实施例中,移动终端进入学习状态后,移动终端在学习红外遥控按键的发码信息时,红外遥控的每个按键至少被按压和释放两次,在每次按压和释放的过程中,移动终端根据接收到的红外信号获得对应的红外编码数据,本实施例中将第一次之后获得的红外编码数据定义为后续红外编码数据,当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,说明该按键的码值已循环,此键的所有值都已学习到,此时移动终端结束所述按键的学习;如果后续红外编码数据与第一次获取到的红外编码数据不同,则重复该按键的按压和释放过程,直至所述按键的码值循环为止。
具体地,在按键第一次被按压和释放的操作之后,该按键每被按压和释放一次,移动终端获得一次后续红外编码数据,在每次获得后续红外编码数据时,移动终端检测当前的后续红外编码数据是否与第一次获取到的红外编码数据相同,若是,则说明该按键的码值已循环,此时移动终端结束该按键的学习。在更多的实施例中,每个按键被按压和释放的次数也可以固定次数,比如5次,然后用户对所述按键进行连续的5次按压和释放操作,以使得移动终端获取到5组红外编码数据,此时后续红外编码数据的数量为4组,移动终端再检测4组后续红外编码数据中是否存在与第一次获取到的红外编码数据相同的红外编码数据,若是,则说明该按键的码值已循环,此时移动终端只保留不重复的红外编码数据,删除其中相同的红外编码数据;若否,则说明该按键的码值还未学习完全,此时用户可以重复上述对该按键的操作,直至该按键的码值循环为止。
在移动终端完成结束所述按键的学习后,可以进入下一按键的学习。需要说明的是,每次对比的都是同一按键所获得的红外编码数据,即第一次获取到的红外编码数据是每个按键第一次被按压所对应的获得的数据,不同按键所获得的第一次红外编码数据不同。在移动终端对每个按键进行学习之前,用户可以先输入被学习按键的名称,如“开关键”“音量键”等,然后再进行相应按键发码信息的学习,以区分不同按键所发送的红外信号。在更多的实施例中,也可以不输入被学习按键的名称,比如,用户可以对被学习的遥控器进行拍照,然后移动终端再对红外遥控器上的按键以按键位置依序学习,通过将该遥控器每个按键和学习到的数据文件按之前的顺序进行比对,就能把每个按键跟数据对应起来,其中,红外遥控的按键学习顺序可以根据实际需要进行灵活设置。此外,为了使用户的使用更加方便,对于空调遥控器等具有静态或动态显示屏的红外遥控,在智能终端学习红外遥控按键信息的同时,本领域技术人员可以通过照片在智能终端上制作相应的界面来模拟显示屏的界面,以实现对原始遥控的完全模拟。
在本实施例中,移动终端接收红外遥控的按键被操作时所发送的红外信号;根据接收到的所述红外信号获得对应的红外编码数据;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。通过上述方式,移动终端在学习红外遥控按键的发码信息时,红外遥控的每个按键至少被按压和释放两次,在每次按压和释放的过程中,移动终端根据接收到的红外信号获得对应的红外编码数据,当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,说明该按键的码值已循环,此键的所有值都已学习到,此时结束该按键的学习,从而避免了终端只对被学习按键的一次发码信息进行采样所导致的按键学习不真实、不完整的问题。本实施例能够实现对红外遥控每个按键的所有码值进行学习,从而扩大移动终端的学习范围,使移动终端能够更准确、更完整地学习原始按键的码值信息。
进一步地,参照图3,图3为本发明红外遥控的学习方法第二实施例的流程示意图。基于上述图1所示的实施例,在步骤S30之前,还包括:
步骤S40,在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比。
当两组红外编码数据不同时,返回步骤S10:接收红外遥控的按键被操作时所发送的红外信号。
在本实施例中,由于红外遥控的按键被按压和释放的次数大于或等于2,移动终端可以将每次获取到的红外编码数据与第一次获取到的红外编码数据进行对比,以此判断该按键的码值是否被全部学习到。红外遥控的被学习按键每被按压和释放一次,移动终端记录一次红外编码数据;在按键第一次被按压和释放的操作之后,该按键每被按压和释放一次,移动终端获得一次后续红外编码数据,在每次获得后续红外编码数据时,移动终端可以将最新获取到的后续红外编码数据与第一次获取到的红外编码数据进行对比。当最新获得的后续红外编码数据即当前的红外编码数据与第一次获取到的红外编码数据不同时,说明该按键的码值还没有被全部学习到,此时返回步骤:接收红外遥控的按键被操作时所发送的红外信号,即用户重复该按键的按压和释放过程,直至所述按键的码值循环为止。
进一步地,移动终端将两组红外编码数据进行对比时所采取的方式是将红外编码数据相应位置的高/低电平的时间值进行对比,实际对比中允许存在正常范围的误差,即两个电平进行对比时,如果两电平时间值处于正常误差范围之内,则认为两电平相等,其中正常误差范围为3%-10%,当然也可以根据实际情况扩大范围,比如3%-15%。此外由于有载波的存在,两个数据的高/低电平的时间值相差1到2个载波周期也是可能的,如果两个数据的时间差值在有载波的误差允许的范围之内,就可以认为这两个数据相等,否则不等。因此有载波的红外信号则可能会存在时间值误差和周期误差,即有载波的红外数据如果电平时间值处于正常误差范围之内,周期误差也相差正常周期误差范围内,也可以判定两红外数据相等。
需要说明的是,当最新获得的后续红外编码数据与第一次获得的红外编码数据不同时,移动终端可以用语音的方式提醒用户重新将该按键按压和释放一次,当然,移动终端也可以不采用语音的方式提醒用户,比如采用文字提醒或震动提醒的方式,具体实施中可以根据实际需要进行灵活设置。当最新获得的后续红外编码数据与第一次获得的红外编码数据相同时,移动终端可以用同样的方式提醒用户该按键已学习完毕或进入下一按键的学习。
进一步地,参照图4,图4为图3中在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比的细化流程示意图。基于上述图3所示的实施例,将按照红外编码数据中数据的获取顺序作为正序,步骤S40可以包括:
步骤S41,从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比;
步骤S42,若在两组红外编码数据按正序对比完成时检测到不同的数据,则分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,并从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
步骤S43,若在两组红外编码数据按逆序对比至位数少的一组的第一位置时未检测到不同的数据,则将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
步骤S44,若位数多的一组红外编码数据中第一位置和第二位置之间的数据为循环数据,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
步骤S45,若在两组红外编码数据按逆序对比至位数少的一组的第一位置时检测到不同的数据,则判定所述两组红外编码数据不相同。
步骤S46,若在两组红外编码数据按正序对比完成时未检测到不同的数据,则判断两组红外编码数据的长度是否相同;如果两组红外编码数据的长度相同,则判定所述两组红外编码数据相同;如果两组红外编码数据的长度不相同,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
步骤S47,若是,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不相同。
本实施例中将按照红外编码数据中数据的获取顺序作为正序,则与红外编码数据中数据的获取顺序相反的顺序则为逆序。
本实施例中首先,将两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比。其中逐位对比是指将红外编码数据中每个电平信号进行一一对比。
对比结果包括两种情况:
A、在两组红外编码数据按正序对比完成时检测到不同的数据,此时,分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,即两组红外编码数据都标记有一个第一位置。然后从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
B、在两组红外编码数据按正序对比完成时未检测到不同的数据,此时判断两组红外编码数据的长度是否相同,若是,则判定所述两组红外编码数据相同;若否,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
其中,情况A中按逆序逐位进行对比包括两种结果:A1和A2,A1:在两组红外编码数据按逆序对比至位数少的一组的第一位置时检测到不同的数据,此时说明所述两组红外编码数据不相同。
A2:在两组红外编码数据按逆序对比至第一位置时未检测到不同的数据,也就说两组红外编码数据中位数少的一组红外编码数据中第一位置的数据会被对比两次,此时将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
情况B检测两组红外编码数据中位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据也包括两种结果:b1和b2,b1:如果是循环数据,则判定所述两组红外编码数据相同;b2:如果不是循环数据,判定两组红外编码数据不相同。
此外,还可以通过其他的方式进行判断,比如可以将两组红外编码数据的情况分为两种情形:长度相同和长度不同。当最新获得的后续红外编码数据与第一次获得的红外编码数据的长度相同时,只需要将所述两组红外编码数据逐位进行对比,就可以判定两组红外编码数据是否相同,若所述两组红外编码数据中的每一位数据都对应相同,则判定所述两组红外编码数据相同;若所述两组红外编码数据中存在至少一位不同的数据,则判定所述两组红外编码数据不同。
此时为方便理解,本实施中按键被操作过程中,按键处于不同操作状态所产生的数据分为前置码、循环码和后置码,其中循环码是按键处于按下状态时所重复产生的编码,后置码是按键被释放后所产生的编码,除循环码和后置码之外的编码都为前置码。当进行一次按键操作时,红外编码数据可能包含前置码、循环码和后置码中的至少一种。
由于两次操作时按键处于按下状态的时间不定,因此两组红外编码数据中循环数据的循环次数可能不同,从而循环数据的位数可能不同,由于循环数据的存在,就可能出现两组红外编码数据的前置码和后置码都相同但循环数据位数不同的情况,而这种情况下也应该认为这两组红外编码数据相同。
当两组红外编码数据的位数不同时,两组红外编码数据中只有包含循环数据才可能是同一键值。此时,红外编码数据存在4种组合:前置码、循环码和后置码,前置码和循环码,循环码和后置码,循环码。
此时智能终端的判断过程可以和如图4所示的实施例类似,即包括进行正序对比,然后进行逆序对比,再判断循环数据的过程,此处不再赘述。
进一步地,判断是否为循环数据的过程可以包括:假设两组红外编码数据中位数多的一组的起始数据为A1,之前对比过程中所述第一位置记为Am,第二位置记为An,那么可知1<m<n。第一步:从A1至An-1范围内逆序对比找到与An相等的数,即An分别与An-1,An-2,…A1对比。如果没有与An相等的数则说明Am至An之间的数不是循环数据;如果找到与An相等的数,假设为Ax,此时进入第二步:取Am至An-1之间的每个数据分别逆序与Ax之前的数据对比,即An-1与Ax-1对比,An-2与Ax-2对比…共计对比n-m次。如果这个对比过程的结果全部是相等则说明Am至An之间的数是循环数据;反之,则又回到第一步,不过寻找与An相等数的范围缩小为A1至Ax-1。可以看出如果重复执行以上二步的话,A1至Ax-1的范围会越来越小,也即Ax-1会越来越向前靠近A1。
进一步地,参照5和图6,图5为两组红外编码数据的一种对比场景示意图,图6为图5中循环数据对比场景示意图。该对比场景中的红外编码数据包含前置码、循环码、和后置码,图中A1,A2,…,A12代表位数多的一组红外编码数据,B1,B2,…,B8代表位数少的一组红外编码数据,首先,依次对比A1和B1,A2和B2,…,直至A7和B7遇到不等,此时A7和B7记为第一位置,然后再将两组红外编码数据进行逆序对比,即依次对比A12和B8,A11和B7(对比至第一位置),逆序对比结束时位数多的一组的前一位置记为第二位置,即A10,此时判断A7至A10之间的数据是否为循环数据。具体地,如果循环周期内的时间数据值都不相等,即A3不等于A4,A4不等于A5。那么第一步:A10先与A9比,结果为不等;A10再与A8比,结果为不等;A10再与A7比,结果相等;然后进入第二步:A9与A6比,结果相等;A8与A5比,结果相等;A7与A4比,结果相等。至此可以说明A7至A10之间的数据为循环数据。如果循环周期内的时间数据值存在相等,比如A4=A5,那么第一步:A10先与A9比,结果为不等;A10再与A8比,结果相等;然后进入第二步:A9与A7比,结果为不等。此时返回第一步:A10先与A8的前一位,即A7比,结果相等。再进入第二步:A9与A6比,结果相等;A8与A5比,结果相等;A7与A4比,结果相等。至此也可以说明A7至A10之间的数据为循环数据。
综上所述,第一种对比的方式是不管红外编码数据是哪种或几种码值的组合,划分组合是便于理解本发明中算法,正序对比主要针对的是前置码,逆序对比主要是针对后置码,而自身对比,即判断循环数据的过程是针对循环码。第一种方式是将获得的任一两组数据都看成是前置码+循环码+后置码这种组合来进行判断,所以先用正序对比,后逆序对比,然后在自身对比的同一算法,有些组合在没有完成这一完整的对比过程就可以判断出结果,只有前置码+循环码+后置码这种组合经过完整的对比过程。
在本实施例中,移动终端接收红外遥控的按键被操作时所发送的红外信号;根据接收到的所述红外信号获得对应的红外编码数据;在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;当两组红外编码数据不同时,返回步骤:接收红外遥控的按键被操作时所发送的红外信号;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。当两组红外编码数据的位数相同时,将所述两组红外编码数据逐位进行对比就可以判定这两组红外编码数据是否相同;当两组红外编码数据的位数不同时,由于按键按下的时间不定,两组红外编码数据中循环数据的位数可能会不等,通过本实施例中对比流程的细化流程,移动终端能够识别出两组红外编码数据相同但循环数据位数不同的情况,从而能够有效提高对比的准确性。
进一步地,参照图7,图7为本发明红外遥控的学习方法第三实施例的流程示意图。基于上述图1所示的实施例,在步骤S30之后,还可以包括:
步骤S50,根据用户触发的保存指令保存学习的红外编码数据。
在本实施例中,在移动终端学习的过程中,用户可以在显示界面中触发保存指令,保存学习到的编码数据。具体实施中,为使得每个按键的功能都被学习到,则可以在该按键所有的功能都被学习完,即学习完该按键的所有红外编码数据,用户才可以触发保存指令,此时保存的红外编码数据则为保存的每个按键的所有功能对应的红外编码数据。
进一步地,在结束对红外遥控的所有被学习按键的学习之后,用户可以通过专业软件让该数据还原成对应的高低电平波形,再人工从中提取相关信息,比如红外编码格式、载波、用户码(即按键值)和客户码(即一个型号的电器遥控器对应一个客户码,当然也有些没有客户码)等等,并另设一数据库将这些信息保存至数据库中。该数据库位于网络上的服务器中。
需要特别说明的是遥控器都有码值和面板按键显示两类信息,空调遥控器还有LCD显示信息。面板按键显示及LCD显示信息都需要通过人工拍照及实测后制做出对应文件,然后将其一起放入数据库中,其他用户则可以通过从该服务器的数据库中下载码值和面板按键显示及LCD显示信息就可以在智能终端上完整重现原始遥控器的所有功能。
在本实施例中,移动终端接收红外遥控的按键被操作时所发送的红外信号;根据接收到的所述红外信号获得对应的红外编码数据;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据;根据用户触发的保存指令保存学习的红外编码数据。通过上述方式,本实施例中移动终端能够将学习到的各种红外遥控的编码信息进行共享,用户使用其他移动终端时不必再对该红外遥控的功能进行重新学习,只需要从服务器上下载相应的数据文件即可,从而方便用户使用,提升了用户的用户体验。
本发明还提供一种红外遥控的学习装置。
参照图8,图8为本发明红外遥控的学习装置第一实施例的功能模块示意图。所述装置包括:
接收模块10,用于接收红外遥控的按键被操作时所发送的红外信号。
在本实施例中,移动终端的接收模块10接收红外遥控的某一按键被操作时所发送的红外信号,其中,按键被操作的过程是指按键被按压和释放一次的完整过程。本实施例中所述移动终端可以包括智能手机,平板电脑等具有红外遥控学习功能的设备,其中智能手机,平板电脑等设备可以自身配置红外接头,也可以通过蓝牙、无线网或USB等方式连接配置有红外接头的外设来实现对红外遥控的学习,所述红外遥控可以包括电视机、机顶盒、DVD、空调等电器的遥控,具体实施中可进行灵活选择。
具体地,参照图2,图2为本发明红外遥控的学习方法第一实施例的应用场景示意图。在本实施例中,移动终端可以通过启用红外遥控学习APP或其他红外信号学习程序进入学习状态,在移动终端进入学习状态后,用户将被学习红外遥控的前端对准移动终端的前端,并使得两者的红外接头间距在5CM以内,以防止红外信号的发送和接收受到干扰。在用户对红外遥控某一按键进行按压和释放一次的过程中,对应产生的红外信号经调制后通过红外发射器发送给移动终端。由于每个按键可能对应不同的码值,因此要对每个按键的多次发码信息进行采样。例如,当所述按键只对应一个码值时,只需要对所述按键进行两次按压和释放操作,码值就会循环;当所述按键对应不止一个码值时,用户对所述按键进行按压和释放的操作次数应大于两次。确切地,如果同一按键被连续学习N次才循环,说明这个按键有N-1个码值。因此可以理解为红外遥控的每个按键至少被按压和释放两次,移动终端才能够准确、完整地学习到原始按键的码值信息。
第一获取模块20,用于根据接收到的所述红外信号获得对应的红外编码数据。
在本实施例中,接收模块10在接收到红外遥控发送的红外信号之后,第一获取模块20根据接收到的所述红外信号获得对应的红外编码数据。
红外信号的发射是把载波和包络信号叠加起来,当接收模块10接收到红外信号后,经解调模块内的运算放大器,将信号进行放大、整形、滤波,然后输入到载波和包络定时器,硬件电路就可把载波和包络信号分离出来,其中包络信号是不同高低电平的组合,代表不同的编码信息。所述红外信号经解调模块解调之后,再经解码模块解码,就可以获得对应的红外编码数据,其中,红外编码数据是一组连续的高/低电平的时间值,比如9ms,4.5ms,560μs,560μs,1690μs,50ms,……。
在本实施例中,接收模块10在接收到红外信号之后,第一获取模块20对所述红外信号进行处理,得到所述红外信号的电平信息,然后根据所述电平信息获得对应的红外编码数据。为简化整个硬件电路,移动终端将专用的ASIC/MCU/FPGA芯片集成到主控CPU中,所述芯片用来完出红外信号的调制和解调以及编码信息的处理,当然,移动终端也可以不将所述芯片集成到主控CPU中,比如,所述芯片可以设置在主控CPU之外,通过UART/SPI/I2C接口和主控CPU交换信息,具体实施中可根据实际情况进行灵活设置。在接收模块10接收到红外遥控发送的红外信号后,第一获取模块20通过CPU中的专用电路对所述红外信号进行解调、放大、整形、滤波等,以获取到所述红外信号的电平信息,进而获得每个高/低电平对应的时间值,以获取到一组红外编码数据。在获取到红外编码数据之后,移动终端将所述红外编码数据保存在相应的存储区中,当然,具体实施中还可以通过其他获取方式获取所述红外编码数据,比如,利用串口将红外接收器接收到的红外信号发送到计算机上,通过计算机上的相关分析软件显示所述高/低电平的时间值,从而得到对应的红外编码数据。
完成模块30,用于当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。
在本实施例中,移动终端进入学习状态后,移动终端在学习红外遥控按键的发码信息时,红外遥控的每个按键至少被按压和释放两次,在每次按压和释放的过程中,移动终端根据接收到的红外信号获得对应的红外编码数据,本实施例中将第一次之后获得的红外编码数据定义为后续红外编码数据,当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,说明该按键的码值已循环,此键的所有值都已学习到,此时完成模块30完成所述按键的学习;如果后续红外编码数据与第一次获取到的红外编码数据不同,则重复该按键的按压和释放过程,直至所述按键的码值循环为止。
具体地,在按键第一次被按压和释放的操作之后,该按键每被按压和释放一次,移动终端获得一次后续红外编码数据,在每次获得后续红外编码数据时,移动终端检测当前的后续红外编码数据是否与第一次获取到的红外编码数据相同的红外编码数据,若是,则说明该按键的码值已循环,此时移动终端结束该按键的学习。在更多的实施例中,每个按键被按压和释放的次数也可以固定次数,比如5次,然后用户对所述按键进行连续的5次按压和释放操作,以使得移动终端获取到5组红外编码数据,此时后续红外编码数据的数量为4组,移动终端再检测4组后续红外编码数据中是否存在与第一次获取到的红外编码数据相同的红外编码数据,若是,则说明该按键的码值已循环,此时移动终端只保留不重复的红外编码数据,删除其中相同的红外编码数据;若否,则说明该按键的码值还未学习完全,此时用户可以重复上述对该按键的操作,直至该按键的码值循环为止。
在完成模块30完成所述按键的学习后,可以进入下一按键的学习。需要说明的是,在移动终端对每个按键进行学习之前,用户可以先输入被学习按键的名称,如“开关键”“音量键”等,然后再进行相应按键发码信息的学习,以区分不同按键所发送的红外信号。在更多的实施例中,也可以不输入被学习按键的名称,比如,用户可以对被学习的遥控器进行拍照,然后移动终端再对红外遥控器上的按键以按键位置依序学习,通过将该遥控器每个按键和学习到的数据文件按之前的顺序进行比对,就能把每个按键跟数据对应起来,其中,红外遥控的按键学习顺序可以根据实际需要进行灵活设置。此外,为了使用户的使用更加方便,对于空调遥控器等具有静态或动态显示屏的红外遥控,在智能终端学习红外遥控按键信息的同时,本领域技术人员可以通过照片在智能终端上制作相应的界面来模拟显示屏的界面,以实现对原始遥控的完全模拟。
在本实施例中,接收模块10接收红外遥控的按键被操作时所发送的红外信号;第一获取模块20根据接收到的所述红外信号获得对应的红外编码数据;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成模块30完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。通过上述方式,移动终端在学习红外遥控按键的发码信息时,红外遥控的每个按键至少被按压和释放两次,在每次按压和释放的过程中,移动终端根据接收到的红外信号获得对应的红外编码数据,当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,说明该按键的码值已循环,此键的所有值都已学习到,此时结束该按键的学习,从而避免了终端只对被学习按键的一次发码信息进行采样所导致的按键学习不真实、不完整的问题。本实施例能够实现对红外遥控每个按键的所有码值进行学习,从而扩大移动终端的学习范围,使移动终端能够更准确、更完整地学习原始按键的码值信息。
进一步地,参照图9,图9为本发明红外遥控的学习装置第二实施例的功能模块示意图。所述装置还包括:
对比模块40,用于在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;
所述接收模块10还用于当两组红外编码数据不同时,接收红外遥控的按键被操作时所发送的红外信号。
在本实施例中,由于红外遥控的按键被按压和释放的次数大于或等于2,移动终端可以将每次获取到的红外编码数据与第一次获取到的红外编码数据进行对比,以此判断该按键的码值是否被全部学习到。红外遥控的被学习按键每被按压和释放一次,移动终端记录一次红外编码数据;在按键第一次被按压和释放的操作之后,该按键每被按压和释放一次,第一获取模块20获得一次后续红外编码数据,在每次获得后续红外编码数据时,对比模块40可以将最新获取到的红外编码数据与第一次获取到的红外编码数据进行对比。当最新获得的后续红外编码数据即当前的红外编码数据与第一次获取到的红外编码数据不同时,说明该按键的码值还没有被全部学习到,此时接收模块10重新接收红外遥控的按键被按压和释放时所发送的红外信号,即用户重复该按键的按压和释放过程,直至所述按键的码值循环为止。
进一步地,对比模块40将两组红外编码数据进行对比时所采取的方式是将红外编码数据相应位置的高/低电平的时间值进行对比,实际对比中允许存在正常范围的误差,即两个电平进行对比时,如果两电平时间值处于正常误差范围之内,则认为两电平相等,其中正常误差范围为3%或10%。此外由于有载波的存在,两个数据的高/低电平的时间值相差1到2个载波周期也是可能的,如果两个数据的时间差值在有载波的误差允许的范围之内,就可以认为这两个数据相等,否则不等。有载波的红外信号则会存在时间值误差和周期误差,即有载波的红外数据如果电平时间值处于正常误差范围之内,周期误差也相差正常周期误差范围内,也可以判定两红外数据相等
需要说明的是,当最新获得的后续红外编码数据与第一次获得的红外编码数据不同时,移动终端可以用语音的方式提醒用户重新将该按键按压和释放一次,当然,移动终端也可以不采用语音的方式提醒用户,比如采用文字提醒或震动提醒的方式,具体实施中可以根据实际需要进行灵活设置。当最新获得的后续红外编码数据与第一次获得的红外编码数据相同时,移动终端可以用同样的方式提醒用户该按键已学习完毕或进入下一按键的学习。
进一步地,继续参照图9,对比模块40还用于:当两组红外编码数据的位数相同时,将所述两组红外编码数据逐位进行对比;若所述两组红外编码数据中的每一位数据都对应相同,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不同。
在本实施例中,当最新获得的后续红外编码数据与第一次获得的红外编码数据的位数相同时,对比模块40只需要将所述两组红外编码数据逐位进行对比,就可以判定两组红外编码数据是否相同,若所述两组红外编码数据中的每一位数据都对应相同,则判定所述两组红外编码数据相同;若所述两组红外编码数据中存在至少一位不同的数据,则判定所述两组红外编码数据不同。
进一步地,继续参照图9,将按照红外编码数据中数据的获取顺序作为正序,对比模块40还用于:
从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比;
若在两组红外编码数据按正序对比完成时检测到不同的数据,则分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,并从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
若在两组红外编码数据按逆序对比至位数少的一组的第一位置时未检测到不同的数据,则将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
若在两组红外编码数据按逆序对比至位数少的一组的第一位置时检测到不同的数据,则判定所述两组红外编码数据不相同。
若在两组红外编码数据按正序对比完成时未检测到不同的数据,则判断两组红外编码数据的长度是否相同;如果两组红外编码数据的长度相同,则判定所述两组红外编码数据相同;如果两组红外编码数据的长度不相同,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
若是,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不相同。
本实施例中将按照红外编码数据中数据的获取顺序作为正序,则与红外编码数据中数据的获取顺序相反的顺序则为逆序。
本实施例中首先,将两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比。
对比结果包括两种情况:
A、在两组红外编码数据按正序对比完成时检测到不同的数据,此时,分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,即两组红外编码数据都标记有一个第一位置。然后从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
B、在两组红外编码数据按正序对比完成时未检测到不同的数据,此时判断两组红外编码数据的长度是否相同,若是,则判定所述两组红外编码数据相同;若否,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
其中,情况A中按逆序逐位进行对比包括两种结果:A1和A2,A1:在两组红外编码数据按逆序对比至位数少的一组的第一位置时检测到不同的数据,此时说明所述两组红外编码数据不相同。
A2:在两组红外编码数据按逆序对比至第一位置时未检测到不同的数据,也就说两组红外编码数据中位数少的一组红外编码数据中第一位置的数据会被对比两次,此时将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
情况B检测两组红外编码数据中位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据也包括两种结果:b1和b2,b1:如果是循环数据,则判定所述两组红外编码数据相同;b2:如果不是循环数据,判定两组红外编码数据不相同。
此外,还可以通过其他的方式进行判断,比如可以将两组红外编码数据的情况分为两种情形:长度相同和长度不同。当最新获得的后续红外编码数据与第一次获得的红外编码数据的长度相同时,只需要将所述两组红外编码数据逐位进行对比,就可以判定两组红外编码数据是否相同,若所述两组红外编码数据中的每一位数据都对应相同,则判定所述两组红外编码数据相同;若所述两组红外编码数据中存在至少一位不同的数据,则判定所述两组红外编码数据不同。
此时为方便理解,本实施中按键被操作过程中,按键处于不同操作状态所产生的数据分为前置码、循环码和后置码,其中循环码是按键处于按下状态时所重复产生的编码,后置码是按键被释放后所产生的编码,除循环码和后置码之外的编码都为前置码。当进行一次按键操作时,红外编码数据可能包含前置码、循环码和后置码中的至少一种。
由于两次操作时按键处于按下状态的时间不定,因此两组红外编码数据中循环数据的循环次数可能不同,从而循环数据的位数可能不同,由于循环数据的存在,就可能出现两组红外编码数据的前置码和后置码都相同但循环数据位数不同的情况,而这种情况下也应该认为这两组红外编码数据相同。
当两组红外编码数据的位数不同时,两组红外编码数据中只有包含循环数据才可能是同一键值。此时,红外编码数据存在4种组合:前置码、循环码和后置码,前置码和循环码,循环码和后置码,循环码。
此时智能终端的判断过程可以和如图4所示的实施例类似,即包括进行正序对比,然后进行逆序对比,再判断循环数据的过程,此处不再赘述。
进一步地,判断是否为循环数据的过程可以包括:假设两组红外编码数据中位数多的一组的起始数据为A1,之前对比过程中所述第一位置记为Am,第二位置记为An,那么可知1<m<n。第一步:从A1至An-1范围内逆序对比找到与An相等的数,即An分别与An-1,An-2,…A1对比。如果没有与An相等的数则说明Am至An之间的数不是循环数据;如果找到与An相等的数,假设为Ax,此时进入第二步:取Am至An-1之间的每个数据分别逆序与Ax之前的数据对比,即An-1与Ax-1对比,An-2与Ax-2对比…共计对比n-m次。如果这个对比过程的结果全部是相等则说明Am至An之间的数是循环数据;反之,则又回到第一步,不过寻找与An相等数的范围缩小为A1至Ax-1。可以看出如果重复执行以上二步的话,A1至Ax-1的范围会越来越小,也即Ax-1会越来越向前靠近A1。
进一步地,参照5和图6,图5为两组红外编码数据的一种对比场景示意图,图6为图5中循环数据对比场景示意图。该对比场景中的红外编码数据包含前置码、循环码、和后置码,图中A1,A2,…,A12代表位数多的一组红外编码数据,B1,B2,…,B8代表位数少的一组红外编码数据,首先,依次对比A1和B1,A2和B2,…,直至A7和B7遇到不等,此时A7和B7记为第一位置,然后再将两组红外编码数据进行逆序对比,即依次对比A12和B8,A11和B7(对比至第一位置),逆序对比结束时位数多的一组的前一位置记为第二位置,即A10,此时判断A7至A10之间的数据是否为循环数据。具体地,如果循环周期内的时间数据值都不相等,即A3不等于A4,A4不等于A5。那么第一步:A10先与A9比,结果为不等;A10再与A8比,结果为不等;A10再与A7比,结果相等;然后进入第二步:A9与A6比,结果相等;A8与A5比,结果相等;A7与A4比,结果相等。至此可以说明A7至A10之间的数据为循环数据。如果循环周期内的时间数据值存在相等,比如A4=A5,那么第一步:A10先与A9比,结果为不等;A10再与A8比,结果相等;然后进入第二步:A9与A7比,结果为不等。此时返回第一步:A10先与A8的前一位,即A7比,结果相等。再进入第二步:A9与A6比,结果相等;A8与A5比,结果相等;A7与A4比,结果相等。至此也可以说明A7至A10之间的数据为循环数据。
综上所述,第一种对比的方式是不管红外编码数据是哪种或几种码值的组合,划分组合是便于理解本发明中算法,正序对比主要针对的是前置码,逆序对比主要是针对后置码,而自身对比,即判断循环数据的过程是针对循环码。第一种方式是将获得的任一两组数据都看成是前置码+循环码+后置码这种组合来进行判断,所以先用正序对比,后逆序对比,然后在自身对比的同一算法,有些组合在没有完成这一完整的对比过程就可以判断出结果,只有前置码+循环码+后置码这种组合经过完整的对比过程。
在本实施例中,接收模块10接收红外遥控的按键被操作时所发送的红外信号;第一获取模块20根据接收到的所述红外信号获得对应的红外编码数据;对比模块40在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;当两组红外编码数据不同时,接收模块10重新接收红外遥控的按键被操作时所发送的红外信号;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成模块30完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。当两组红外编码数据的位数相同时,对比模块40将所述两组红外编码数据逐位进行对比就可以判定这两组红外编码数据是否相同;当两组红外编码数据的位数不同时,由于按键按下的时间不定,两组红外编码数据中循环数据的位数可能会不等,通过本实施例中对比流程的细化流程,对比模块40能够识别出两组红外编码数据相同但循环数据位数不同的情况,从而能够有效提高对比的准确性。
进一步地,参照图10,图10为本发明红外遥控的学习装置第三实施例的功能模块示意图。所述装置还可以包括:
保存模块50,根据用户触发的保存指令保存学习的红外编码数据。
在本实施例中,在移动终端学习的过程中,用户可以在显示界面中触发保存指令,保存学习到的编码数据。具体实施中,为使得每个按键的功能都被学习到,则可以在该按键所有的功能都被学习完,即学习完该按键的所有红外编码数据,用户才可以触发保存指令,此时保存的红外编码数据则为保存的每个按键的所有功能对应的红外编码数据。
进一步地,在结束对红外遥控的所有被学习按键的学习之后,用户可以通过专业软件让该数据还原成对应的高低电平波形,再人工从中提取相关信息,比如红外编码格式、载波、用户码(即按键值)和客户码(即一个型号的电器遥控器对应一个客户码,当然也有些没有客户码)等等,并另设一数据库将这些信息保存至数据库中。该数据库位于网络上的服务器中。
需要特别说明的是遥控器都有码值和面板按键显示两类信息,空调遥控器还有LCD显示信息。面板按键显示及LCD显示信息都需要通过人工拍照及实测后制做出对应文件,然后将其一起放入数据库中,其他用户则可以通过从该服务器的数据库中下载码值和面板按键显示及LCD显示信息就可以在智能终端上完整重现原始遥控器的所有功能。
在本实施例中,接收模块10接收红外遥控的按键被操作时所发送的红外信号;第一获取模块20根据接收到的所述红外信号获得对应的红外编码数据;当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成模块30完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据;保存模块50根据用户触发的保存指令保存学习的红外编码数据。通过上述方式,本实施例中移动终端能够将学习到的各种红外遥控的编码信息进行共享,用户使用其他移动终端时不必再对该红外遥控的功能进行重新学习,只需要从服务器上下载相应的数据文件即可,从而方便用户使用,提升了用户的用户体验。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种红外遥控的学习方法,其特征在于,所述方法包括如下步骤:
接收红外遥控的按键被操作时所发送的红外信号;
根据接收到的所述红外信号获得对应的红外编码数据;
当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。
2.如权利要求1所述的方法,其特征在于,所述当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习的步骤之前,还包括:
在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;
当两组红外编码数据不同时,返回步骤:接收红外遥控的按键被操作时所发送的红外信号。
3.如权利要求2所述的方法,其特征在于,将按照红外编码数据中数据的获取顺序作为正序,所述在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比的步骤包括:
从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比;
若在两组红外编码数据按正序对比完成时检测到不同的数据,则分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,并从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
若在两组红外编码数据按逆序对比至位数少的一组的第一位置时未检测到不同的数据,则将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
若在两组红外编码数据按逆序对比至位数少的一组红外编码数据中第一位置时检测到不同的数据,则判定所述两组红外编码数据不相同。
4.如权利要求2所述的方法,其特征在于,所述从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比的步骤之后还包括:
若在两组红外编码数据按正序对比完成时未检测到不同的数据,则判断两组红外编码数据的长度是否相同;如果两组红外编码数据的长度相同,则判定所述两组红外编码数据相同;如果两组红外编码数据的长度不相同,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
若是,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不相同。
5.如权利要求1所述的方法,其特征在于,所述当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习的步骤之后,还包括:
根据用户触发的保存指令保存学习的红外编码数据。
6.一种红外遥控的学习装置,其特征在于,所述装置包括:
接收模块,用于接收红外遥控的按键被操作时所发送的红外信号,
第一获取模块,用于根据接收到的所述红外信号获得对应的红外编码数据;
完成模块,用于当后续红外编码数据中存在与第一次获取到的红外编码数据相同的红外编码数据时,完成所述按键的学习,其中后续红外编码数据为第一次之后获得的红外编码数据。
7.如权利要求6所述的装置,其特征在于,所述装置还包括:
对比模块,用于在每次获得后续红外编码数据时,将最新获得的后续红外编码数据与第一次获得的红外编码数据进行对比;
所述接收模块还用于当两组红外编码数据不同时,接收红外遥控的按键被操作时所发送的红外信号。
8.如权利要求7所述的装置,其特征在于,将按照红外编码数据中数据的获取顺序作为正序,所述对比模块还用于:
从两组红外编码数据的起始位置开始,将所述两组红外编码数据按正序逐位进行对比;
若在两组红外编码数据按正序对比完成时检测到不同的数据,则分别将两组红外编码数据中检测到不同的数据的位置记为第一位置,并从两组红外编码数据的终止位置开始,将所述两组红外编码数据按逆序逐位进行对比;
若在两组红外编码数据按逆序对比至位数少的一组的第一位置时未检测到不同的数据,则将位数多的一组红外编码数据在逆序对比结束时的前一位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;若是,则判定所述两组红外编码数据相同,否则判定两组红外编码数据不相同;
若在两组红外编码数据按逆序对比至位数少的一组红外编码数据中第一位置时检测到不同的数据,则判定所述两组红外编码数据不相同。
9.如权利要求7所述的装置,其特征在于,所述对比模块还用于:
若在两组红外编码数据按正序对比完成时未检测到不同的数据,则判断两组红外编码数据的长度是否相同;
如果两组红外编码数据的长度相同,则判定所述两组红外编码数据相同;
如果两组红外编码数据的长度不相同,则将位数多的一组在正序对比结束处的后一位置记为第一位置,将位数多的一组的终止位置记为第二位置,并检测位数多的一组红外编码数据中第一位置和第二位置之间的数据是否为循环数据;
若是,则判定所述两组红外编码数据相同;否则判定所述两组红外编码数据不相同。
10.如权利要求6所述的装置,其特征在于,所述装置还包括:
保存模块,用于根据用户触发的保存指令保存学习的红外编码数据。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610779287.1A CN106228796B (zh) | 2016-08-30 | 2016-08-30 | 红外遥控的学习方法及装置 |
PCT/CN2017/087724 WO2018040661A1 (zh) | 2016-08-30 | 2017-06-09 | 红外遥控的学习方法及装置 |
US16/320,095 US10720048B2 (en) | 2016-08-30 | 2017-06-09 | Infrared remote control learning method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610779287.1A CN106228796B (zh) | 2016-08-30 | 2016-08-30 | 红外遥控的学习方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106228796A true CN106228796A (zh) | 2016-12-14 |
CN106228796B CN106228796B (zh) | 2019-07-05 |
Family
ID=58071619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610779287.1A Active CN106228796B (zh) | 2016-08-30 | 2016-08-30 | 红外遥控的学习方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10720048B2 (zh) |
CN (1) | CN106228796B (zh) |
WO (1) | WO2018040661A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104240492A (zh) * | 2014-09-26 | 2014-12-24 | 深圳市中兴移动通信有限公司 | 一种调试红外遥控信号的方法、装置及终端 |
CN106679107A (zh) * | 2017-01-10 | 2017-05-17 | 珠海格力电器股份有限公司 | 空调控制方法及装置 |
WO2018040661A1 (zh) * | 2016-08-30 | 2018-03-08 | 深圳市友连电子科技有限公司 | 红外遥控的学习方法及装置 |
CN108399730A (zh) * | 2018-02-28 | 2018-08-14 | 珠海格力智能装备有限公司 | 红外信号接收器检测方法及装置 |
CN110223499A (zh) * | 2019-06-18 | 2019-09-10 | 广州中安电工高新科技股份有限公司 | 一种红外解码方法及装置 |
CN110910629A (zh) * | 2019-11-04 | 2020-03-24 | 杭州海兴电力科技股份有限公司 | 基于单片机的红外遥控信号解码方法、系统及计量装置 |
CN112235622A (zh) * | 2020-10-14 | 2021-01-15 | 广州欢网科技有限责任公司 | 遥控器、控制方法和电视 |
CN112908326A (zh) * | 2021-01-29 | 2021-06-04 | 思必驰科技股份有限公司 | 家居语音控制学习和应用方法及装置 |
CN113940576A (zh) * | 2021-10-14 | 2022-01-18 | 上海利康消毒高科技有限公司 | 一种红外非接触出液器的出液方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10447537B2 (en) * | 2017-07-11 | 2019-10-15 | Roku, Inc. | Automatic determination of display device functionality |
CN110109365A (zh) * | 2019-04-24 | 2019-08-09 | 平安科技(深圳)有限公司 | 音箱控制方法、装置及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241638A (zh) * | 2008-03-06 | 2008-08-13 | 天栢宽带网络科技(上海)有限公司 | 一种学习型遥控器及其驱动方法 |
CN101853567A (zh) * | 2009-03-31 | 2010-10-06 | 深圳市九洲电器有限公司 | 一种学习型遥控器 |
US20100329688A1 (en) * | 2009-06-25 | 2010-12-30 | Young Darniel | Universal remote-control signal transmitting device for controlling ir equipment and a setting method thereof |
CN102855744A (zh) * | 2012-08-31 | 2013-01-02 | 林述颖 | 基于智能手机的红外家电管理系统和方法 |
CN103426292A (zh) * | 2013-09-03 | 2013-12-04 | 湖南工业大学 | 一种红外遥控器以及红外编码学习方法、发射方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0750885A (ja) * | 1993-08-05 | 1995-02-21 | Alpine Electron Inc | データ通信装置 |
JP2003047071A (ja) * | 2001-07-27 | 2003-02-14 | Nec Corp | 赤外線リモートコントロールシステム |
US20040155809A1 (en) * | 2003-02-06 | 2004-08-12 | Eyer Mark Kenneth | Infrared remote control command network pass-through |
CN103309844B (zh) * | 2013-05-16 | 2016-12-28 | Tcl集团股份有限公司 | 一种遥控器的学习方法、装置 |
US9373250B2 (en) * | 2014-12-30 | 2016-06-21 | Smk Electronics Corporation | Remote controller having one shot automatic mapping of learned function |
CN104966396B (zh) * | 2015-07-16 | 2018-08-21 | 四川长虹电子部品有限公司 | 基于云平台的空调遥控码学习方法 |
CN105812875A (zh) * | 2016-03-18 | 2016-07-27 | 深圳Tcl数字技术有限公司 | 红外自适应遥控方法和装置 |
CN106228796B (zh) * | 2016-08-30 | 2019-07-05 | 深圳市友连电子科技有限公司 | 红外遥控的学习方法及装置 |
-
2016
- 2016-08-30 CN CN201610779287.1A patent/CN106228796B/zh active Active
-
2017
- 2017-06-09 US US16/320,095 patent/US10720048B2/en active Active
- 2017-06-09 WO PCT/CN2017/087724 patent/WO2018040661A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241638A (zh) * | 2008-03-06 | 2008-08-13 | 天栢宽带网络科技(上海)有限公司 | 一种学习型遥控器及其驱动方法 |
CN101853567A (zh) * | 2009-03-31 | 2010-10-06 | 深圳市九洲电器有限公司 | 一种学习型遥控器 |
US20100329688A1 (en) * | 2009-06-25 | 2010-12-30 | Young Darniel | Universal remote-control signal transmitting device for controlling ir equipment and a setting method thereof |
CN102855744A (zh) * | 2012-08-31 | 2013-01-02 | 林述颖 | 基于智能手机的红外家电管理系统和方法 |
CN103426292A (zh) * | 2013-09-03 | 2013-12-04 | 湖南工业大学 | 一种红外遥控器以及红外编码学习方法、发射方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104240492A (zh) * | 2014-09-26 | 2014-12-24 | 深圳市中兴移动通信有限公司 | 一种调试红外遥控信号的方法、装置及终端 |
WO2018040661A1 (zh) * | 2016-08-30 | 2018-03-08 | 深圳市友连电子科技有限公司 | 红外遥控的学习方法及装置 |
CN106679107A (zh) * | 2017-01-10 | 2017-05-17 | 珠海格力电器股份有限公司 | 空调控制方法及装置 |
CN106679107B (zh) * | 2017-01-10 | 2019-01-29 | 珠海格力电器股份有限公司 | 空调控制方法及装置 |
CN108399730A (zh) * | 2018-02-28 | 2018-08-14 | 珠海格力智能装备有限公司 | 红外信号接收器检测方法及装置 |
CN110223499A (zh) * | 2019-06-18 | 2019-09-10 | 广州中安电工高新科技股份有限公司 | 一种红外解码方法及装置 |
CN110910629A (zh) * | 2019-11-04 | 2020-03-24 | 杭州海兴电力科技股份有限公司 | 基于单片机的红外遥控信号解码方法、系统及计量装置 |
CN110910629B (zh) * | 2019-11-04 | 2020-11-20 | 杭州海兴电力科技股份有限公司 | 基于单片机的红外遥控信号解码方法、系统及计量装置 |
CN112235622A (zh) * | 2020-10-14 | 2021-01-15 | 广州欢网科技有限责任公司 | 遥控器、控制方法和电视 |
CN112908326A (zh) * | 2021-01-29 | 2021-06-04 | 思必驰科技股份有限公司 | 家居语音控制学习和应用方法及装置 |
CN113940576A (zh) * | 2021-10-14 | 2022-01-18 | 上海利康消毒高科技有限公司 | 一种红外非接触出液器的出液方法 |
CN113940576B (zh) * | 2021-10-14 | 2023-08-15 | 上海利康消毒高科技有限公司 | 一种红外非接触出液器的出液方法 |
Also Published As
Publication number | Publication date |
---|---|
US10720048B2 (en) | 2020-07-21 |
CN106228796B (zh) | 2019-07-05 |
US20190266888A1 (en) | 2019-08-29 |
WO2018040661A1 (zh) | 2018-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106228796A (zh) | 红外遥控的学习方法及装置 | |
CN107046736B (zh) | 用于无线传屏设备的连接方法、无线传屏设备及显示设备 | |
CN103531015B (zh) | 一种实现遥控功能的方法和电子设备 | |
CN105045690B (zh) | 测试终端的方法及装置 | |
CN106416143A (zh) | 设备控制方法及装置 | |
CN103914969A (zh) | 移动终端装置以及控制电器设备的方法 | |
RU2609033C1 (ru) | Способ ввода и система ввода | |
TWI557620B (zh) | 拼接式觸控螢幕裝置及其觸控螢幕的觸控偵測方法 | |
CN104574930B (zh) | 移动终端家居控制功能的配置方法、移动终端和家居电器 | |
CN104391586B (zh) | 一种基于移动终端的键盘输入检测方法及检测系统 | |
RU2683481C1 (ru) | Способ и устройство инициализации для умного дома | |
CN218484550U (zh) | 按键膜及认知能力测试终端 | |
EP2401863B1 (en) | Code set determination for a remote control | |
US11722274B2 (en) | Method for transmitting reference signal, method for receiving reference signal, base station, and user equipment | |
CN104778864A (zh) | 一种内容可扩展的基于智能设备的点读系统及其实现方法 | |
US11297626B2 (en) | Information indication method and apparatus, base station and user equipment | |
CN104113622B (zh) | 在通讯录中添加联系人信息的方法和装置 | |
KR20130059836A (ko) | 휴대용 단말기에서 코드 이미지를 획득하기 위한 장치 및 방법 | |
CN105005382A (zh) | 一种基于人体通信的无线输入系统及其实现方法 | |
US11418387B2 (en) | Systems and methods for optical device configuration | |
CN105573926B (zh) | 一种信息处理方法及电子设备 | |
CN104900046A (zh) | 红外学习方法及装置 | |
CN104156684A (zh) | 数据显示方法和装置 | |
CN112558797A (zh) | 主动笔及其控制方法、装置以及计算机可读存储介质 | |
CN107528615B (zh) | 基于nfc的数据传输方法、储存装置及移动终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |