发明内容
基于此,本发明的目的是提供一种数据转发方法及系统,以使电视板卡能够将触摸感应数据转发给安卓板卡。
根据本发明实施例的一种数据转发方法,包括:
电视板卡获取触摸屏的当前触摸感应数据,并按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包,所述码值包中的每个码值均为红外遥控的扫描码值;
所述电视板卡将所述码值包转发给安卓板卡。
另外,根据本发明上述实施例的一种数据转发方法,还可以具有如下附加的技术特征:
进一步地,在所述电视板卡获取触摸屏的当前触摸感应数据的步骤之后,还包括:
所述电视板卡判断当前的信号通道是否切换为与所述安卓板卡连通;
若是,则执行所述按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包的步骤;
若否,则所述电视板卡按照预设驱动程序的格式将获取的所述当前触摸感应数据进行打包上报。
进一步地,在所述电视板卡将所述码值包转发给安卓板卡的步骤之后,还包括:
所述安卓板卡按照预设码值提取规则从所述码值包内提取码值,并将提取出的码值中与所述当前触摸感应数据相关的码值按照预设驱动程序的格式进行打包上报。
进一步地,所述电视板卡将所述码值包转发给安卓板卡的步骤包括:
所述电视板卡按照预设码值转发顺序将所述码值包内的每个码值依序转发给所述安卓板卡。
进一步地,在所述安卓板卡按照预设码值提取规则从所述码值包内提取码值的步骤之后,还包括:
所述安卓板卡判断所述提取出的码值是否出错;
若否,则执行所述将提取出的码值中与所述当前触摸感应数据相关的码值按照预设驱动程序的格式进行打包上报的步骤。
根据本发明实施例的一种数据转发系统,包括电视板卡,所述电视板卡包括:
数据获取及处理模块,用于获取触摸屏的当前触摸感应数据,并按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包,所述码值包中的每个码值均为红外遥控的扫描码值;
数据转发模块,用于将所述码值包转发给安卓板卡。
另外,根据本发明上述实施例的一种数据转发系统,还可以具有如下附加的技术特征:
进一步地,所述电视板卡还包括:
信号通道判断模块,用于判断当前的信号通道是否切换为与所述安卓板卡连通;
数据处理及上报模块,用于当判断到所述当前的信号通道不是切换为与所述安卓板卡连通时,按照预设驱动程序的格式将获取的所述当前触摸感应数据进行打包上报;
当判断到所述当前的信号通道是切换为与所述安卓板卡连通时,所述数据获取及处理模块将按照所述预设数据处理规则将获取的所述当前触摸感应数据打包成码值包。
进一步地,所述安卓板卡包括:
码值提取及上报模块,用于按照预设码值提取规则从所述码值包内提取码值,并将提取出的码值中的与所述当前触摸感应数据相关的码值按照预设驱动程序的格式进行打包上报。
进一步地,所述数据转发模块包括:
码值转发单元,用于按照预设码值转发顺序将所述码值包内的每个码值依序转发给所述安卓板卡。
进一步地,所述安卓板卡还包括:
码值出错判断模块,用于判断所述提取出的码值是否出错;
当判断到所述提取出的数据没有出错时,所述数据提取及上报模块将所述提取出的码值中与所述当前触摸感应数据相关的码值按照预设驱动程序的格式进行打包上报。
上述数据转发方法及系统,当所述电视板卡获取到所述触摸屏的触摸感应数据时,通过所述预设数据处理规则能够将获取到的触摸感应数据转化为红外遥控的扫描码值,并能够将其打包成所述码值包的形式,由于所述码值包中的每个码值均为红外遥控的扫描码值,所述电视板卡通过红外遥控技术即可将包含有触摸感应数据的所述码值包发送给所述安卓板卡。因此,通过所述数据转发方法及系统,所述电视板卡能够将触摸感应数据转发给所述安卓板卡,从而满足了用户的新需求。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
请参阅图1,所示为本发明第一实施例中的数据转发方法,包括步骤S01至步骤S02。
步骤S01,电视板卡获取触摸屏的当前触摸感应数据,并按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包,所述码值包中的每个码值均为红外遥控的扫描码值。
其中,所述码值包是指包含多个码值的数据包,并且所包含的多个码值按照预设码值排序规则进行排列。
可以理解的,所述电视板卡与所述触摸屏需电性连接,所述触摸屏的当前触摸感应数据是指所述触摸屏在当前触摸下通过参数(电容、电阻等)的变化而感应出的数据,包括触摸坐标(含X轴坐标和Y轴坐标)、触控压感大小、触摸操作的状态(按下、保持或释放)及触控点的编号(多点触摸时对每个触摸感应点进行的编号)等。
需要指出的是,所述码值包除包含所述当前触摸感应数据外,还包括一些辅助用的码值,如头部码值、校验码值、结尾码值等。因此,所述按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包的步骤可以按照以下流程进行实施:首先,将获取的所述当前触摸感应数据按照红外遥控扫描码值的协议规则均转化为相应的红外遥控的扫描码值,然后按照红外遥控扫描码值的协议规则生成指定的辅助用码值,最后按照预设码值排序顺序将这些产生的红外遥控的扫描码值进行排列,以形成所述码值包。
步骤S02,所述电视板卡将所述码值包转发给安卓板卡。
其中,所述电视板卡与所述安卓板卡之间采用红外遥控(infrared remotecontrol,简称IR)进行通讯,所述红外遥控的扫描码值为红外遥控能够传送和识别的数据。
可以理解的,所述电视板卡将所述码值包转发给安卓板卡的步骤可以按照以下的流程进行实施:所述电视板卡按照预设数据转发顺序将所述码值包内的每个码值依序转发给所述安卓板卡,从而完成将所述码值包转发给安卓板卡的步骤,而所述预设数据转发顺序可以为从所述码值包的头部码值依次到尾部码值的转发顺序等。
此外,还需要指出的是,当所述安卓板卡接收到所述码值包后,通过对所述码值包进行解析,即可对所述触摸屏的当前触摸进行响应。
综上,本发明上述实施例当中的数据转发方法,当所述电视板卡获取到所述触摸屏的触摸感应数据时,通过所述预设数据处理规则能够将获取到的触摸感应数据转化为红外遥控的扫描码值,并能够将其打包成所述码值包的形式,由于所述码值包中的每个码值均为红外遥控的扫描码值,所述电视板卡通过红外遥控即可将包含有触摸感应数据的所述码值包发送给所述安卓板卡。因此,通过所述数据转发方法及系统,所述电视板卡能够将触摸感应数据转发给所述安卓板卡,从而满足了用户的新需求。
请参阅图2,所示为本发明第二实施例中的数据转发方法,包括步骤S11至步骤S19。
步骤S11,电视板卡获取触摸屏的当前触摸感应数据。
其中,所述电视板卡获取的所述当前触摸感应数据包括触摸坐标(含X轴坐标和Y轴坐标)、触控压感大小、触摸操作的状态(按下、保持或释放)及触控点的编号(多点触摸时对每个触摸感应点进行的编号)等。
步骤S12,所述电视板卡判断当前的信号通道是否切换为与安卓板卡连通。
可以理解的,所述电视板卡可能与多个电子设备或器件(如DVD、机顶盒、安卓板卡、电脑等)进行连接,因此所述电视板卡的当前的信号通道可能切换为与任意一个电子设备或器件连通,而若要将获取的所述当前触摸感应数据转发给所述安卓板卡,所述电视板卡的当前的信号通道必然要切换为与所述安卓板卡连通,因此在进行触摸感应数据转发之前,需判断所述电视板卡当前的信号通道是否切换为与所述安卓板卡连通。
此外,所述电视板卡的信号通道的切换可以通过人工或程序来进行。
当所述步骤S12判断到所述电视板卡的当前的信号通道不是与所述安卓板卡连通时,则执行步骤S13,当所述步骤S14判断到所述电视板卡的当前的信号通道是与所述安卓板卡连通时,则执行步骤S14至步骤S16。
步骤S13,所述电视板卡按照预设驱动程序的格式将获取的所述当前触摸感应数据进行打包上报。
可以理解的,当所述电视板卡的当前的信号通道不是切换为与所述安卓板卡连通时,代表所述电视板卡不需要将触摸感应数据转发给所述安卓板卡,此时所述电视板卡需要自己对所述触碰屏的当前触摸进行响应,此时所述电视板卡将执行所述步骤S13。
需要指出的是,当所述电视板卡及所述安卓板卡将搭配安卓系统进行使用时,在所述步骤S13当中,所述电视板卡将把按照所述预设驱动程序的格式打包后的所述当前触摸感应数据上报给所述安卓系统,以使所述安卓系统对所述触摸屏的当前触摸进行进一步相应。此时,所述预设驱动程序为Linux设备驱动程序。
步骤S14,所述电视板卡按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包,所述码值包中的每个码值均为红外遥控的扫描码值。
步骤S15,所述电视板卡按照预设数据转发顺序将所述码值包内的每个码值依序转发给所述安卓板卡。
步骤S16,所述安卓板卡判断所述码值包的头部码值是否为预设码值。
其中,所述码值包的头部码值是指在所述码值包当中排序在前的至少一个或一段码值,并且所述码值包的头部码值可以自定义。
可以理解的,所述安卓板卡不仅仅只接收所述电视板卡发送来的有关触摸感应的数据,所述安卓板卡还可能接收所述电视板卡发送过来的遥控键码数据,因此所述安卓板卡需要对接收到的码值包进行判断。
当所述步骤S16判断到所述码值包的头部码值是所述预设码值时,代表所述电视板卡发来有关触摸感应的数据,需要进行相应的响应,此时则执行步骤S17,当所述步骤S16判断到所述码值包的头部码值不是所述预设码值时,代表所述电视板卡发来有关遥控键码的数据,所述安卓板卡则将接收到的码值转化为相应的键码上报给安卓系统,以按普通的处理遥控按键的方式进行处理。
步骤S17,所述安卓板卡按照预设码值提取规则从所述码值包内提取码值。
其中,所述提取出的码值当中包含与所述当前触摸感应数据相关的码值,所述安卓板卡按照预设码值提取规则从所述码值包内提取码值的步骤可以为:所述安卓板卡按照预设的码值提取顺序依次从所述码值包内提取码值,且每次从所述码值包内提取的码值均为指定提取的码值。
步骤S18,判断提取出的码值是否出错。
需要指出的是,所述判断提取出的码值是否出错的步骤实际上就是一个普遍的数据校验的过程。当所述步骤S18判断到提取出的码值没出错时,则执行步骤步骤S19,当所述步骤S18判断到提取出的码值出错时,则结束,不动作。
步骤S19,所述安卓板卡将提取出的码值中与所述当前触摸感应数据相关的码值按照所述预设驱动程序的格式进行打包上报。
其中,所述步骤S19的数据打包上报过程与所述步骤S13的数据打包上报过程一致,均采用所述预设驱动程序(Linux驱动程序)的格式进行打包,并上报给安卓系统。
以下举例详细说明本发明:
首先,当电视板卡获取到触摸屏的当前触摸感应数据时,所述电视板卡判断当前的信号通道是否与安卓板卡连通,若否,则所述电视板卡按Linux驱动需求将获取的所述当前触摸感应数据打包后上报到安卓系统,若是,所述电视板卡则将按照所述预设数据处理规则将获取的所述当前触摸感应数据打包成如下的码值包:
HEAD1 |
HEAD2 |
ID |
STAT |
XH |
XL |
YH |
YL |
PRS1 |
PRS2 |
END1 |
END2 |
PARITY |
上述码值包中的每个码值(一个方框代表一个码值)均是红外遥控的扫描码值,每个码值均为8位二进制的字段,上述码值包中共用13个字段,共13个字节,即13个码值。其中,HEAD1与HEAD2组成所述码值包的头部码,如0x55与0xAA;ID为标识触摸的点,用于多点触摸时标识指定点的操作,即多点触摸时会根据ID来跟踪处理对应点;STAT为标识触摸操作的状态,一般有三种状态,标识按下、保持、释放,如分别用0xF1、0xF2、0xF3区分标识;XH(X高8位值)与XL(X低8位值)组成X轴坐标值;YH(Y高8位值)与YL(Y低8位值)组成Y轴坐标值;PRS1(高8位值)与PRS2(低8位值)组成压力值,用于确认触摸位置的压感大小;END1与END2组成数据包尾部码,如0xFF与0x00;PARITY为校验码,为HEAD1到END2这12个值相加后取低8位所得到的码值,用于校验码值包是否正确。
其次,当所述电视板卡完成上述的码值包的处理后,所述电视板卡按照所述预设数据转发顺序依序将HEAD1、HEAD2、ID、STAT、XH、XL、YH、YL、PRS1、PRS2、END1、END2及PARITY的值转发给所述安卓板卡。
其次,此时所述安卓板卡将判断接收到码值包的头部码是否为HEAD1及HEAD2。若否,所述安卓板卡则按照普通的处理遥控按键的方式进行接收到的码值包,若是,所述安卓板卡按照所述预设码值提取规则从所述码值包内依次提取ID、STAT、XH、XL、YH、YL、PRS1、PRS2、END1、END2及PARITY的值,并判断提取出的码值是否出错。判断提取出的码值是否出错的过程为将HEAD1、HEAD2、ID、STAT、XH、XL、YH、YL、PRS1、PRS2、END1及END2的值相加后取低8位,将这8位数据与获取到的PARITY值进行对比,如果相等则校验正确,码值没出错,如果不等则校验失败,码值出错。
最后,当校验正确时,所述安卓板卡将提取出的码值中与所述当前触摸感应数据相关的码值(XH、XL、YH、YL、PRS1及PRS2)按照按Linux驱动需求进行重新打包上报给安卓系统,以使安卓系统进行下一步的触控响应。
本发明另一方面还提供一种数据转发系统,请查阅图3,所示为本发明第三实施例中的数据转发系统,包括电视板卡10,所述电视板卡10包括数据获取及处理模块11及数据转发模块12:
所述数据获取及处理模块11,用于获取触摸屏的当前触摸感应数据,并按照预设数据处理规则将获取的所述当前触摸感应数据打包成码值包,所述码值包中的每个码值均为红外遥控的扫描码值;
所述数据转发模块12,用于将所述码值包转发给安卓板卡20。
进一步地,所述电视板卡10还包括:
信号通道判断模块13,用于判断当前的信号通道是否切换为与所述安卓板卡20连通;
数据处理及上报模块14,用于当判断到所述当前的信号通道不是切换为与所述安卓板卡20连通时,所述电视板卡10按照预设驱动程序的格式将获取的所述当前触摸感应数据进行打包上报;
当判断到所述当前的信号通道是切换为与所述安卓板卡连通时,所述数据获取及处理模块11将按照所述预设数据处理规则将获取的所述当前触摸感应数据打包成码值包。
进一步地,所述安卓板卡20包括:
码值提取及上报模块21,用于按照预设码值提取规则从所述码值包内提取码值,并将提取出的码值中的与所述当前触摸感应数据相关的码值按照预设驱动程序的格式进行打包上报。
进一步地,所述数据转发模块12包括:
码值转发单元121,用于按照预设码值转发顺序将所述码值包内的每个码值依序转发给所述安卓板卡20。
进一步地,所述安卓板卡20还包括:
码值出错判断模块22,用于判断所述提取出的码值是否出错;
当判断到所述提取出的数据没有出错时,所述数据提取及上报模块将所述提取出的码值中与所述当前触摸感应数据相关的码值按照预设驱动程序的格式进行打包上报。
进一步地,所述安卓板卡20还包括:
头部码值出错判断模块23,用于判断所述码值包的头部码值是否为预设码值;
当判断到所述码值包的头部码值是所述预设码值时,所述码值提取及上报模块21将按照所述预设码值提取规则从所述码值包内提取码值。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。