本发明专利技术实施例提供了一种操控数据转化方法、装置及主控设备。其中,所述方法包括:每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据,所述操控数据为所述输入设备在感应到操作后产生的,并且同一操作所产生的操控数据属于同一数据包;在完整缓存至少一个数据包后,依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件。可以截获串口传输的操控数据,通过缓存的方式获得能够完整表示操控指令的操控数据,并利用事件驱动将这些操控数据转化为标准事件,从而准确的将从串口输入的操控指令转化为标准事件。输入的操控指令转化为标准事件。输入的操控指令转化为标准事件。
【技术实现步骤摘要】
一种操控数据转化方法、装置及主控设备
[0001]本专利技术涉及触控
,特别是涉及一种操控数据转化方法、装置及主控设备。
技术介绍
[0002]输入设备可以向主控设备输入操控指令,主控设备中的应用程序识别这些操控指令并进行响应。由于输入设备多种多样,如鼠标、键盘、触摸屏等,输入的方式也各不相同,如果在主控设备中为每种不同的输入设备配置相应的驱动,以使得主控设备中的应用程序能够识别不同输入设备输入的操控指令,则将导致开发和运维成本过高。
[0003]相关技术中为简化主控设备中的驱动,主控设备的操作系统(如linxu操作系统、Android操作系统)中往往提供有输入子系统(input subsystem)。输入子系统中提供有事件驱动和设备驱动,并且输入子系统通过事件驱动与应用程序对接,通过设备驱动与输入设备对接。输入子系统可以将输入设备输入的操控指令转化为符合预设标准的标准事件,并将标准事件输入至应用程序,以使得应用程序执行相应的业务操作,因此应用程序只需要与事件驱动对接即可识别不同输入设备输入的操控指令。
[0004]但是,相关技术中输入子系统的设备驱动往往只能够与USB(Universal Serial Bus,通用串行总线)驱动对接,因此相关技术中只有通过USB接口接入主控设备的输入设备才能够接入输入子系统。而对于通过串口接入主控设备的输入设备,由于无法接入输入子系统,因此无法通过输入子系统将这些输入设备输入的操控指令转化为标准事件,因此需要针对这些输入设备为应用程序配置相应的驱动程序,导致应用程序的开发和运维成本增加。
技术实现思路
[0005]本专利技术实施例的目的在于提供一种操控数据转化方法、装置及主控设备,以实现准确的将从串口输入的操控数据转化为标准事件。具体技术方案如下:
[0006]在本专利技术实施例的第一方面,提供了一种操控数据转化方法,应用于主控设备,所述主控设备包括串口,并且所述主控设备通过所述串口与输入设备连接,所述方法包括:
[0007]每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据,所述操控数据为所述输入设备在感应到操作后产生的,并且同一操作所产生的操控数据属于同一数据包;
[0008]在完整缓存至少一个数据包后,依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件。
[0009]在一种可能的实施例中,所述缓存所述操控数据,包括:
[0010]将所述操控数据缓存于预设环形缓存区中写标识所指示的单元中,每当完整缓存一个数据包时更新所述写标识所指示的单元;
[0011]所述依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,包括:
[0012]依次针对所述读标识所指示的单元中缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,并且每当构建标准事件后更新所述读标识所指示的单元。
[0013]在一种可能的实施例中,在所述每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据之前,所述方法还包括:
[0014]每当接收到数据时,确定该数据所属数据包的包头信息是否与所述串口的标识信息匹配;
[0015]如果所述包头信息与所述标识信息匹配,确定所接收到的数据为所述输入设备通过所述串口输入的操控数据。
[0016]在一种可能的实施例中,所述利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,包括:
[0017]对该数据包中所包括的操控数据进行解析,得到至少一个有效操作信息,其中每个有效操作信息用于表示产生该数据包的操作中的一个子操作;
[0018]利用输入子系统的事件驱动将所有所述有效操作信息转化为符合预设标准的标准事件。
[0019]在一种可能的实施例中,所述输入设备为触摸屏;
[0020]在所述利用输入子系统的事件驱动将所有所述有效操作信息为符合预设标准的标准事件之前,所述方法还包括:
[0021]如果所述至少一个有效操作信息中包括画线有效操作信息,并且不包括针对画线点的按压有效操作信息,在所述至少一个有效操作信息中添加针对所述画线点的按压有效操作信息,其中,所述画线有效操作信息为用于表示画线子操作的有效操作信息,所述按压有效操作信息为用于表示按压子操作的有效操作信息,所述画线点为所述输入设备上所述画线子操作所针对的触控点。
[0022]在一种可能的实施例中,所述输入设备为触摸屏;
[0023]在所述利用输入子系统的事件驱动将所有所述有效操作信息转化为符合预设标准的标准事件之后,所述方法还包括:
[0024]如果存在尚未转化的按压有效操作信息,控制应用程序响应该按压有效操作信息。
[0025]在本专利技术实施例的第二方面,提供了一种操控数据转化装置,应用于主控设备,所述主控设备包括串口,并且所述主控设备通过所述串口与输入设备连接,所述装置包括:
[0026]钩子模块,用于每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据,所述操控数据为所述输入设备在感应到操作后产生的,并且同一操作所产生的操控数据属于同一数据包;
[0027]事件处理模块,用于在完整缓存至少一个数据包后,依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件。
[0028]在一种可能的实施例中,所述钩子模块缓存所述操控数据,包括:
[0029]将所述操控数据缓存于预设环形缓存区中写标识所指示的单元中,每当完整缓存一个数据包时更新所述写标识所指示的单元;
[0030]所述事件处理模块依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,包括:
[0031]依次针对所述读标识所指示的单元中缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,并且每当构建标准事件后更新所述读标识所指示的单元。
[0032]在一种可能的实施例中,所述钩子模块还用于在所述每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据之前,每当接收到数据时,确定该数据所属数据包的包头信息是否与所述串口的标识信息匹配;
[0033]如果所述包头信息与所述标识信息匹配,确定所接收到的数据为所述输入设备通过所述串口输入的操控数据。
[0034]在一种可能的实施例中,所述事件处理模块利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,包括:
[0035]对该数据包中所包括的操控数据进行解析,得到至少一个有效操作信息,其中每个有效操作信息用于表示产本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种操控数据转化方法,其特征在于,应用于主控设备,所述主控设备包括串口,并且所述主控设备通过所述串口与输入设备连接,所述方法包括:每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据,所述操控数据为所述输入设备在感应到操作后产生的,并且同一操作所产生的操控数据属于同一数据包;在完整缓存至少一个数据包后,依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件。2.根据权利要求1所述的方法,其特征在于,所述缓存所述操控数据,包括:将所述操控数据缓存于预设环形缓存区中写标识所指示的单元中,每当完整缓存一个数据包时更新所述写标识所指示的单元;所述依次针对每个完整缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,包括:依次针对所述读标识所指示的单元中缓存的数据包,利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,并且每当构建标准事件后更新所述读标识所指示的单元。3.根据权利要求1所述的方法,其特征在于,在所述每当通过所述串口接收到所述输入设备发送的操控数据时,截获所述操控数据并缓存所述操控数据之前,所述方法还包括:每当接收到数据时,确定该数据所属数据包的包头信息是否与所述串口的标识信息匹配;如果所述包头信息与所述标识信息匹配,确定所接收到的数据为所述输入设备通过所述串口输入的操控数据。4.根据权利要求1所述的方法,其特征在于,所述利用输入子系统的事件驱动将该数据包中所包括的操控数据转化为符合预设标准的标准事件,包括:对该数据包中所包括的操控数据进行解析,得到至少一个有效操作信息,其中每个有效操作信息用于表示产生该数据包的操作中的一个子操作;利用输入子系统的事件驱动将所有所述有效操作信息转化为符合...
【专利技术属性】
技术研发人员:宋建辉,秦野,
申请(专利权)人:杭州海康威视数字技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。