
[0001]
本发明涉及一体机技术领域,尤其涉及一种多种触摸接口的统一兼容方法、装置、存储介质及一体机。
背景技术:[0002]
一体机设备常见都支持双触摸功能,接安卓触摸和信号源触摸可以同时使用,常见的有uart+usb,usb+mcu,双usb等;对于uart+usb触摸,安卓系统这边使用uart触摸,会需要适配uart触摸数据协议,usb+mcu或双usb触摸,都会有1路usb触摸设备连接到安卓系统。usb触摸使用hid协议的数据包。获取触摸数据的设备节点,信号源触摸有触摸框直发模式和安卓转发模式。要支持双触摸(安卓平台和pc平台),就要根据实际协议适配实现。同是双usb触摸框,触摸数据协议也可能会有差异。
[0003]
这样需要为不同接口的触摸框提供相应的安卓固件。或增加一个触摸类型的用户菜单,默认一种接口方式,当实际整机使用的触摸框接口不匹配时,通过菜单设置切换相应类型。
技术实现要素:[0004]
本发明的目的在于克服现有技术的不足,本发明提供了一种多种触摸接口的统一兼容方法、装置、存储介质及一体机,实现一个安卓固件可以兼容usb+mcu接口、uart+usb接口和双usb接口触摸框。
[0005]
为了解决上述技术问题,本发明实施例提供了一种多种触摸接口的统一兼容方法,所述方法包括:
[0006]
读取一体机内置主板的触摸配置文件,并对所述触摸配置文件进行初始化,获得初始化后的触摸配置文件;
[0007]
基于初始化后的触摸配置文件生成检测触摸框的检测指令并发送至触摸接口;
[0008]
若接收到所述触摸接口基于所述检测指令返回的应答反馈时,则基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,并启动对应的接口触摸类型的触摸处理程序进行触摸响应;
[0009]
若未收到所述触摸接口基于所述检测指令返回的应答反馈时,则确定触摸类型为双usb接口触摸类型,并获得外接usb触摸框的vid/pid;
[0010]
基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应。
[0011]
可选的,所述触摸配置文件包括触摸用的串口设备节点、串口波特率、已适配的非免驱usb触摸框的vid/pid、以及已适配的非免驱usb触摸框对应的私有驱动或者可执行程序名。
[0012]
可选的,所述基于初始化后的触摸配置文件生成检测触摸框的检测指令,包括:
[0013]
基于初始化后的触摸配置文件中触摸用的串口设备节点和串口波特率生成检测触摸框接口的检测指令。
[0014]
可选的,所述基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,包括:
[0015]
将所述应答反馈与预先定义的uart+usb接口触摸类型和者usb+mcu接口触摸类型的预设应答反馈进行匹配,并基于匹配结果确定所述应答反馈的触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型。
[0016]
可选的,所述启动对应的接口触摸类型的触摸处理程序进行触摸响应,包括:
[0017]
在确定为uart+usb接口触摸类时,启动串口触摸处理程序进行触摸响应;
[0018]
在确定为usb+mcu接口触摸类时,启动usb+mcu触摸处理程序进行触摸响应;
[0019]
所述串口触摸处理程序用于串口触摸数据接收、解析及上报给一体机的运行系统,并且还用于与触摸框之间的串口通信;
[0020]
所述usb+mcu触摸处理程序用于usb方式获取触摸框触摸数据、解析及上报给一体机的运行系统,usb方式控制触摸框功能;还用于通过串口转发触摸数据给mcu,该触摸数据最终是发给信号源设备;还用于信号源下触摸穿透处理。
[0021]
可选的,所述获得外接usb触摸框的vid/pid,包括:
[0022]
通过hidraw节点获得所述外接usb触摸框的原生数据,并基于外接usb触摸框的原生数据获得其中的vid和pid。
[0023]
可选的,所述基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应,包括:
[0024]
判断所述外接usb触摸框的vid/pid是否包含在所述初始化后的触摸配置文件中;
[0025]
若是,则读取usb触摸处理程序的触摸配置信息,根据到读取的触摸配置信息和所述外接usb触摸框的vid/pid初始化配置usb触摸处理程序,并且启动初始化配置后的usb触摸处理程序进行触摸响应;
[0026]
若否,配置使用内核标准的hidmulttouch触摸驱动,在配置完成后启动hidmulttouch触摸驱动控制usb触摸处理程序进行触摸响应;
[0027]
所述usb触摸处理程序的触摸配置信息包括usb触摸数据接口、回传触摸数据接口和usb触摸框控制接口。
[0028]
另外,本发明实施例还提供了一种多种触摸接口的统一兼容装置,所述装置包括:
[0029]
初始化模块:用于读取一体机内置主板的触摸配置文件,并对所述触摸配置文件进行初始化,获得初始化后的触摸配置文件;
[0030]
触摸接口检测模块:用于基于初始化后的触摸配置文件生成检测触摸框的检测指令并发送至触摸接口;
[0031]
第一触摸响应模块:用于若接收到所述触摸接口基于所述检测指令返回的应答反馈时,则基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,并启动对应的接口触摸类型的触摸处理程序进行触摸响应;
[0032]
获得模块:用于若未收到所述触摸接口基于所述检测指令返回的应答反馈时,则确定触摸类型为双usb接口触摸类型,并获得外接usb触摸框的vid/pid;
[0033]
第二触摸响应模块:用于基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应。
[0034]
另外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,
该程序被处理器执行时实现上述中任意一项所述的统一兼容方法。
[0035]
另外,本发明实施例还提供了一种一体机设备,其包括:
[0036]
一个或多个处理器;
[0037]
存储器;
[0038]
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于:执行上述中任意一项所述的统一兼容方法。
[0039]
在本发明实施例中,通过串口握手检测方式确认触摸框是否串口触摸框或usb+mcu触摸,如果不是串口触摸框也不是usb+mcu触摸,则是双usb触摸;通过实际获取到的vid/pid,在平台的触摸配置文件中查找,如果没有,则配置为免驱触摸框;否则根据配置文件中的vid/pid及关联配置,初始化双usb触摸处理程序模块;最终实现一个安卓固件可以兼容uart+usb接口、usb+mcu接口和双usb接口触摸框。
附图说明
[0040]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0041]
图1是本发明实施例中的多种触摸接口的统一兼容方法的流程示意图;
[0042]
图2是本发明实施例中的多种触摸接口的统一兼容装置的结构组成示意图;
[0043]
图3是本发明实施例中的一体机设备的结构组成示意图。
具体实施方式
[0044]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0045]
实施例
[0046]
在为了实现这个统一的兼容,在一体机设备上运行的软件模块至少包含有统一的检测触摸框接口类型的模块、触摸处理程序模块和触摸相关配置文件及解析模块,其中,检测触摸框接口类型的模块用于检测触摸框的接口类型为串口触摸接口类型usb触摸接口类型;触摸处理程序模块用于串口触摸处理模块、双usb触摸处理模块、usb+mcu触摸处理模块;触摸相关配置文件及解析模块用于串口触摸串口配置,串口设备节点的路径;uart+usb触摸和usb+mcu,都会用到这1路串口;支持的usb触摸框的vid/pid,及与之相对应的触摸处理程序。具体为:触摸框的usb触摸数据不是标准的hid数据,因此需要特殊处理;对应的触摸处理程序可以是:a.触摸框供应商提供的触摸驱动程序;b.触摸框供应商提供的可执行程序;c.主板端实现的触摸数据处理程序。信号源触摸数据可能是转发模式(安卓接受数据再回传给触摸框)或触摸框直接发送给信号源设备。
[0047]
请参阅图1,图1是本发明实施例中的多种触摸接口的统一兼容方法的流程示意
图。
[0048]
如图1所示,一种多种触摸接口的统一兼容方法,所述方法包括:
[0049]
s11:读取一体机内置主板的触摸配置文件,并对所述触摸配置文件进行初始化,获得初始化后的触摸配置文件;
[0050]
在本发明具体实施过程中,所述触摸配置文件包括触摸用的串口设备节点、串口波特率、已适配的非免驱usb触摸框的vid/pid、以及已适配的非免驱usb触摸框对应的私有驱动或者可执行程序名。
[0051]
具体的,在一体机设备开机之后,需要读取一体机设备上的内置主板上的触摸配置文件,其中,内置主板上设置有对应的一体机芯片,该触摸配置文件中至少包括有触摸用的串口设备节点、串口波特率、已适配的非免驱usb触摸框的vid/pid、以及已适配的非免驱usb触摸框对应的私有驱动或者可执行程序名;其中,在后续的触摸接口类型的检测时候,需要根据串口设备节点和串口波特率进行的。因此,需要对该触摸配置文件进行初始化,最终获得初始化后的触摸配置文件。
[0052]
s12:基于初始化后的触摸配置文件生成检测触摸框的检测指令并发送至触摸接口;
[0053]
在本发明具体实施过程中,所述基于初始化后的触摸配置文件生成检测触摸框的检测指令,包括:基于初始化后的触摸配置文件中触摸用的串口设备节点和串口波特率生成检测触摸框接口的检测指令。
[0054]
具体的,在初始化后的触摸配置文件中提取出触摸用的串口设备节点和串口波特率,然后根据触摸用的串口设备节点和串口波特率生成检测触摸框接口的检测指令;然后将该检测指令发送至对应的触摸接口中进行检测该触摸接口的触摸接口类型。
[0055]
s13:判断触摸接口是否基于所述检测指令返回的应答反馈;
[0056]
在本发明具体实施过程中,在该触摸接口接到该检测指令,可能回根据该检测指令返回一个应答反馈,有可能不返回应答反馈;因此需要判断该触摸接口是否根据该检测指令返回有对应的应答反馈。
[0057]
s14:若接收到所述触摸接口基于所述检测指令返回的应答反馈时,则基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,并启动对应的接口触摸类型的触摸处理程序进行触摸响应;
[0058]
在本发明具体实施过程中,所述基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,包括:将所述应答反馈与预先定义的uart+usb接口触摸类型和者usb+mcu接口触摸类型的预设应答反馈进行匹配,并基于匹配结果确定所述应答反馈的触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型。
[0059]
进一步的,所述启动对应的接口触摸类型的触摸处理程序进行触摸响应,包括:在确定为uart+usb接口触摸类时,启动串口触摸处理程序进行触摸响应;在确定为usb+mcu接口触摸类时,启动usb+mcu触摸处理程序进行触摸响应;所述串口触摸处理程序用于串口触摸数据接收、解析及上报给一体机的运行系统,并且还用于与触摸框之间的串口通信;所述usb+mcu触摸处理程序用于usb方式获取触摸框触摸数据、解析及上报给一体机的运行系统,usb方式控制触摸框功能;还用于通过串口转发触摸数据给mcu,该触摸数据最终是发给信号源设备;还用于信号源下触摸穿透处理。
[0060]
具体的,在接收到该触摸接口根据该检测指令返回的应答反馈之后,通过将该应答反馈与预先定义的uart+usb接口触摸类型和者usb+mcu接口触摸类型的预设应答反馈进行匹配,然后通过匹配结果确定该应答反馈的触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型。
[0061]
uart+usb或usb+mcu接口触摸类型,定义好识别串口触摸框和mcu的应答反馈。一体机主芯片发送指定的检测指令(uart指令),根据收到的检测指令反馈的应答反馈,确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型;如果返回的消息包括“uarttouch”则是uart+usb接口触摸类型,如果是“mcutouch”则是usb+mcu接口触摸类型。
[0062]
在确定为uart+usb接口触摸类时,启动串口触摸处理程序进行触摸响应;在确定为usb+mcu接口触摸类时,启动usb+mcu触摸处理程序进行触摸响应;在触摸处理程序模块上的串口触摸处理程序主要用于串口触摸数据接收、解析及上报给一体机的运行系统,并且还用于与触摸框之间的串口通信,如查询触摸框信息,控制触摸框功能指令。usb+mcu触摸处理程序用于usb方式获取触摸框触摸数据、解析及上报给一体机的运行系统,usb方式控制触摸框功能;还用于通过串口转发触摸数据给mcu,该触摸数据最终是发给信号源设备;还用于信号源下触摸穿透处理。
[0063]
s15:若未收到所述触摸接口基于所述检测指令返回的应答反馈时,则确定触摸类型为双usb接口触摸类型,并获得外接usb触摸框的vid/pid;
[0064]
在本发明具体实施过程中,所述获得外接usb触摸框的vid/pid,包括:通过hidraw节点获得所述外接usb触摸框的原生数据,并基于外接usb触摸框的原生数据获得其中的vid和pid。
[0065]
具体的,在未收到该触摸接口根据该检测指令返回的应答反馈时,则可以确定触摸类型为双usb接口触摸类型,即通过对应的方法获得外接usb触摸框的vid/pid,具体读取外接usb设备的vid/pid的方法有:通过hidraw节点获得外接usb触摸框的原生数据,得到其中的vid和pid信息。
[0066]
打开所有/dev/hidraw*设备节点;如下:
[0067][0068]
[0069]
s16:基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应。
[0070]
在本发明具体实施过程中,所述基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应,包括:判断所述外接usb触摸框的vid/pid是否包含在所述初始化后的触摸配置文件中;若是,则读取usb触摸处理程序的触摸配置信息,根据到读取的触摸配置信息和所述外接usb触摸框的vid/pid初始化配置usb触摸处理程序,并且启动初始化配置后的usb触摸处理程序进行触摸响应;若否,配置使用内核标准的hidmulttouch触摸驱动,在配置完成后启动hidmulttouch触摸驱动控制usb触摸处理程序进行触摸响应;所述usb触摸处理程序的触摸配置信息包括usb触摸数据接口、回传触摸数据接口和usb触摸框控制接口。
[0071]
具体的,在获得外接usb触摸框的vid/pid之后,通过判断该外接usb触摸框的vid/pid是否包含在初始化后的触摸配置文件中,可以通过如下程序实现:
[0072][0073]
在判断结果为是时,读取usb触摸处理程序的触摸配置信息,根据到读取的触摸配置信息和该外接usb触摸框的vid/pid初始化配置usb触摸处理程序,并且启动初始化配置后的usb触摸处理程序进行触摸响应;在判断结果为否时,配置使用内核标准的hidmulttouch触摸驱动,在配置完成后启动hidmulttouch触摸驱动控制usb触摸处理程序进行触摸响应;该usb触摸处理程序的触摸配置信息包括usb触摸数据接口、回传触摸数据接口和usb触摸框控制接口。
[0074]
即,usb触摸处理程序用于信号源触摸的usb数据的发送模式:直发模式或转发模式;触摸数据获取、解析及上报给安卓系统;信号源触摸数据转发(配置为转发模式的情况或触摸框只支持转发模式);usb方式控制触摸框功能;信号源下触摸穿透处理;在判断是否免驱动的usb外接触摸框时,如果usb外接触摸框的vid/pid在平台的触摸配置文件中没有,默认为免驱触摸框;它决定是否使用内核的usb触摸驱动还是专门的触摸程序。在触摸数据处理方式上原始数据方式:主板端触摸处理程序处理数据获取、解析、上报给安卓,回传触摸数据给触摸框,及实现触摸框控制功能;触摸框的私有程序上报方式:主板端只要实现触摸框控制程序功能。
[0075]
在各触摸处理程序配置所需要信息:uart+usb触摸处理程序需要配置uart设备节点及波特率;usb+mcu触摸处理程序需要配置uart设备节点及波特率、usb触摸数据节点;双
usb触摸处理程序需要配置usb触摸数据接口、回传触摸数据接口、usb触摸框控制接口。
[0076]
在本发明实施例中,通过串口握手检测方式确认触摸框是否串口触摸框或usb+mcu触摸,如果不是串口触摸框也不是usb+mcu触摸,则是双usb触摸;通过实际获取到的vid/pid,在平台的触摸配置文件中查找,如果没有,则配置为免驱触摸框;否则根据配置文件中的vid/pid及关联配置,初始化双usb触摸处理程序模块;最终实现一个安卓固件可以兼容uart+usb接口、usb+mcu接口和双usb接口触摸框。
[0077]
实施例
[0078]
请参阅图2,图2是本发明实施例中的多种触摸接口的统一兼容装置的结构组成示意图。
[0079]
如图2所示,一种多种触摸接口的统一兼容装置,所述装置包括:
[0080]
初始化模块21:用于读取一体机内置主板的触摸配置文件,并对所述触摸配置文件进行初始化,获得初始化后的触摸配置文件;
[0081]
在本发明具体实施过程中,所述触摸配置文件包括触摸用的串口设备节点、串口波特率、已适配的非免驱usb触摸框的vid/pid、以及已适配的非免驱usb触摸框对应的私有驱动或者可执行程序名。
[0082]
具体的,在一体机设备开机之后,需要读取一体机设备上的内置主板上的触摸配置文件,其中,内置主板上设置有对应的一体机芯片,该触摸配置文件中至少包括有触摸用的串口设备节点、串口波特率、已适配的非免驱usb触摸框的vid/pid、以及已适配的非免驱usb触摸框对应的私有驱动或者可执行程序名;其中,在后续的触摸接口类型的检测时候,需要根据串口设备节点和串口波特率进行的。因此,需要对该触摸配置文件进行初始化,最终获得初始化后的触摸配置文件。
[0083]
触摸接口检测模块22:用于基于初始化后的触摸配置文件生成检测触摸框的检测指令并发送至触摸接口;
[0084]
在本发明具体实施过程中,所述基于初始化后的触摸配置文件生成检测触摸框的检测指令,包括:基于初始化后的触摸配置文件中触摸用的串口设备节点和串口波特率生成检测触摸框接口的检测指令。
[0085]
具体的,在初始化后的触摸配置文件中提取出触摸用的串口设备节点和串口波特率,然后根据触摸用的串口设备节点和串口波特率生成检测触摸框接口的检测指令;然后将该检测指令发送至对应的触摸接口中进行检测该触摸接口的触摸接口类型。
[0086]
在本发明具体实施过程中,在该触摸接口接到该检测指令,可能回根据该检测指令返回一个应答反馈,有可能不返回应答反馈;因此需要判断该触摸接口是否根据该检测指令返回有对应的应答反馈。
[0087]
第一触摸响应模块23:用于若接收到所述触摸接口基于所述检测指令返回的应答反馈时,则基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,并启动对应的接口触摸类型的触摸处理程序进行触摸响应;
[0088]
在本发明具体实施过程中,所述基于所述应答反馈确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型,包括:将所述应答反馈与预先定义的uart+usb接口触摸类型和者usb+mcu接口触摸类型的预设应答反馈进行匹配,并基于匹配结果确定所述应答反馈的触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型。
[0089]
进一步的,所述启动对应的接口触摸类型的触摸处理程序进行触摸响应,包括:在确定为uart+usb接口触摸类时,启动串口触摸处理程序进行触摸响应;在确定为usb+mcu接口触摸类时,启动usb+mcu触摸处理程序进行触摸响应;所述串口触摸处理程序用于串口触摸数据接收、解析及上报给一体机的运行系统,并且还用于与触摸框之间的串口通信;所述usb+mcu触摸处理程序用于usb方式获取触摸框触摸数据、解析及上报给一体机的运行系统,usb方式控制触摸框功能;还用于通过串口转发触摸数据给mcu,该触摸数据最终是发给信号源设备;还用于信号源下触摸穿透处理。
[0090]
具体的,在接收到该触摸接口根据该检测指令返回的应答反馈之后,通过将该应答反馈与预先定义的uart+usb接口触摸类型和者usb+mcu接口触摸类型的预设应答反馈进行匹配,然后通过匹配结果确定该应答反馈的触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型。
[0091]
uart+usb或usb+mcu接口触摸类型,定义好识别串口触摸框和mcu的应答反馈。一体机主芯片发送指定的检测指令(uart指令),根据收到的检测指令反馈的应答反馈,确定触摸类型为uart+usb接口触摸类型或者usb+mcu接口触摸类型;如果返回的消息包括“uarttouch”则是uart+usb接口触摸类型,如果是“mcutouch”则是usb+mcu接口触摸类型。
[0092]
在确定为uart+usb接口触摸类时,启动串口触摸处理程序进行触摸响应;在确定为usb+mcu接口触摸类时,启动usb+mcu触摸处理程序进行触摸响应;在触摸处理程序模块上的串口触摸处理程序主要用于串口触摸数据接收、解析及上报给一体机的运行系统,并且还用于与触摸框之间的串口通信,如查询触摸框信息,控制触摸框功能指令。usb+mcu触摸处理程序用于usb方式获取触摸框触摸数据、解析及上报给一体机的运行系统,usb方式控制触摸框功能;还用于通过串口转发触摸数据给mcu,该触摸数据最终是发给信号源设备;还用于信号源下触摸穿透处理。
[0093]
获得模块24:用于若未收到所述触摸接口基于所述检测指令返回的应答反馈时,则确定触摸类型为双usb接口触摸类型,并获得外接usb触摸框的vid/pid;
[0094]
在本发明具体实施过程中,所述获得外接usb触摸框的vid/pid,包括:通过hidraw节点获得所述外接usb触摸框的原生数据,并基于外接usb触摸框的原生数据获得其中的vid和pid。
[0095]
具体的,在未收到该触摸接口根据该检测指令返回的应答反馈时,则可以确定触摸类型为双usb接口触摸类型,即通过对应的方法获得外接usb触摸框的vid/pid,具体读取外接usb设备的vid/pid的方法有:通过hidraw节点获得外接usb触摸框的原生数据,得到其中的vid和pid信息。
[0096]
打开所有/dev/hidraw*设备节点;如下:
[0097][0098]
第二触摸响应模块25:用于基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应。
[0099]
在本发明具体实施过程中,所述基于所述外接usb触摸框的vid/pid启动相应的usb触摸处理程序进行触摸响应,包括:判断所述外接usb触摸框的vid/pid是否包含在所述初始化后的触摸配置文件中;若是,则读取usb触摸处理程序的触摸配置信息,根据到读取的触摸配置信息和所述外接usb触摸框的vid/pid初始化配置usb触摸处理程序,并且启动初始化配置后的usb触摸处理程序进行触摸响应;若否,配置使用内核标准的hidmulttouch触摸驱动,在配置完成后启动hidmulttouch触摸驱动控制usb触摸处理程序进行触摸响应;所述usb触摸处理程序的触摸配置信息包括usb触摸数据接口、回传触摸数据接口和usb触摸框控制接口。
[0100]
具体的,在获得外接usb触摸框的vid/pid之后,通过判断该外接usb触摸框的vid/pid是否包含在初始化后的触摸配置文件中,可以通过如下程序实现:
[0101][0102]
在判断结果为是时,读取usb触摸处理程序的触摸配置信息,根据到读取的触摸配置信息和该外接usb触摸框的vid/pid初始化配置usb触摸处理程序,并且启动初始化配置后的usb触摸处理程序进行触摸响应;在判断结果为否时,配置使用内核标准的
hidmulttouch触摸驱动,在配置完成后启动hidmulttouch触摸驱动控制usb触摸处理程序进行触摸响应;该usb触摸处理程序的触摸配置信息包括usb触摸数据接口、回传触摸数据接口和usb触摸框控制接口。
[0103]
即,usb触摸处理程序用于信号源触摸的usb数据的发送模式:直发模式或转发模式;触摸数据获取、解析及上报给安卓系统;信号源触摸数据转发(配置为转发模式的情况或触摸框只支持转发模式);usb方式控制触摸框功能;信号源下触摸穿透处理;在判断是否免驱动的usb外接触摸框时,如果usb外接触摸框的vid/pid在平台的触摸配置文件中没有,默认为免驱触摸框;它决定是否使用内核的usb触摸驱动还是专门的触摸程序。在触摸数据处理方式上原始数据方式:主板端触摸处理程序处理数据获取、解析、上报给安卓,回传触摸数据给触摸框,及实现触摸框控制功能;触摸框的私有程序上报方式:主板端只要实现触摸框控制程序功能。
[0104]
在各触摸处理程序配置所需要信息:uart+usb触摸处理程序需要配置uart设备节点及波特率;usb+mcu触摸处理程序需要配置uart设备节点及波特率、usb触摸数据节点;双usb触摸处理程序需要配置usb触摸数据接口、回传触摸数据接口、usb触摸框控制接口。
[0105]
在本发明实施例中,通过串口握手检测方式确认触摸框是否串口触摸框或usb+mcu触摸,如果不是串口触摸框也不是usb+mcu触摸,则是双usb触摸;通过实际获取到的vid/pid,在平台的触摸配置文件中查找,如果没有,则配置为免驱触摸框;否则根据配置文件中的vid/pid及关联配置,初始化双usb触摸处理程序模块;最终实现一个安卓固件可以兼容uart+usb接口、usb+mcu接口和双usb接口触摸框。
[0106]
本发明实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述实施例中任意一个实施例的统一兼容方法。其中,所述计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-only memory,只读存储器)、ram(random access memory,随即存储器)、eprom(erasable programmable read-only memory,可擦写可编程只读存储器)、eeprom(electrically erasable programmableread-only memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储设备包括由设备(例如,计算机、手机)以能够读的形式存储或传输信息的任何介质,可以是只读存储器,磁盘或光盘等。
[0107]
本发明实施例还提供了一种计算机应用程序,其运行在计算机上,该计算机应用程序用于执行上述中任意一个实施例的统一兼容方法。
[0108]
此外,图3是本发明实施例中的一体机设备的结构组成示意图。
[0109]
本发明实施例还提供了一种一体机设备,如图3所示。所述一体机设备包括处理器302、存储器303、输入单元304以及显示单元305等器件。本领域技术人员可以理解,图3示出的一体机设备结构器件并不构成对所有设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件。存储器303可用于存储应用程序301以及各功能模块,处理器302运行存储在存储器303的应用程序301,从而执行设备的各种功能应用以及数据处理。存储器可以是内存储器或外存储器,或者包括内存储器和外存储器两者。内存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦写可编程rom(eeprom)、快闪存储器、或者随机存储器。外存储器可以包括硬盘、软盘、zip盘、u盘、磁带等。本发明所公开的存储器包括但不限于这些类型的存储器。本发明所公开的存储器只作为例子而非作为限定。
[0110]
输入单元304用于接收信号的输入,以及接收用户输入的关键字。输入单元304可包括触控面板以及其它输入设备。触控面板可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元305可用于显示用户输入的信息或提供给用户的信息以及终端设备的各种菜单。显示单元305可采用液晶显示器、有机发光二极管等形式。处理器302是终端设备的控制中心,利用各种接口和线路连接整个设备的各个部分,通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器内的数据,执行各种功能和处理数据。
[0111]
作为一个实施例,所述一体机设备包括:一个或多个处理器302,存储器303,一个或多个应用程序301,其中所述一个或多个应用程序301被存储在存储器303中并被配置为由所述一个或多个处理器302执行,所述一个或多个应用程序301配置用于执行上述实施例中的任意一实施例中对的统一兼容方法。
[0112]
在本发明实施例中,通过串口握手检测方式确认触摸框是否串口触摸框或usb+mcu触摸,如果不是串口触摸框也不是usb+mcu触摸,则是双usb触摸;通过实际获取到的vid/pid,在平台的触摸配置文件中查找,如果没有,则配置为免驱触摸框;否则根据配置文件中的vid/pid及关联配置,初始化双usb触摸处理程序模块;最终实现一个安卓固件可以兼容uart+usb接口、usb+mcu接口和双usb接口触摸框。
[0113]
另外,以上对本发明实施例所提供的一种多种触摸接口的统一兼容方法、装置、存储介质及一体机进行了详细介绍,本文中应采用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。