一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

多适配器兼容库文件模块、调用方法、调用系统及设备与流程

2021-11-05 19:21:00 来源:中国专利 TAG:


1.本发明属于适配器兼容技术领域,具体涉及一种多适配器兼容库文件模块、调用方法、调用系统及设备。


背景技术:

2.在汽车工具应用中时常需要同时或交替使用现有的各类厂家中的一款或数款设备,通常的做法是开发一个上层app(应用程序)同时支持厂家a、厂家b和厂家c的api,通过配置映射方法使得此app可与这三个厂家的硬件自由通信。这样设计带来如下问题:
3.设计app时必须同时了解厂家a、厂家b和厂家c的api的表现形式和调用方法,并在app中包含这三个厂家的api调用算法,这提高了app本身的开发难度和工作量。
4.app的架构无法支持动态添加新的厂家,例如新兴的厂家d和厂家e的设备,因为它们的api具有区别于厂家a、厂家b和厂家c的截然不同的表现形式。app本身的架构存在不易扩展和不够灵活的特点。
5.app若需要支持新的厂家例如厂家d和厂家e的设备,就必须修改app的实现逻辑,在现有的框架内引入厂家d和厂家e的api调用算法,这将对app进行更改,更改过程中增加了软件工作量,同时可能引入缺陷导致已支持的厂家api调用受到影响。
6.因此,基于上述技术问题需要设计一种新的多适配器兼容库文件模块、调用方法、调用系统及设备。


技术实现要素:

7.本发明的目的是提供一种多适配器兼容库文件模块、调用方法、调用系统及设备。
8.为了解决上述技术问题,本发明提供了一种多适配器兼容用库文件模块,包括:
9.读序列号子模块、读通道数量子模块、读通道类型子模块、读通道波特率子模块、写通道波特率子模块、连接子模块、发送报文子模块、接收报文子模块和断开子模块。
10.进一步,所述读序列号子模块适于由库文件读取设备api并把设备的序列号返回给应用程序;
11.所述读通道数量子模块适于由库文件读取设备api并把设备的物理通道数量返回给应用程序;
12.所述读通道类型子模块适于由库文件读取设备api并把设备的特定通道的类型返回给应用程序;
13.所述读通道波特率子模块适于由库文件读取设备api并把特定通道的波特率返回给应用程序;
14.所述写通道波特率子模块适于由库文件调用设备api并把app给定的波特率写入设备;
15.所述连接子模块适于由库文件调用设备api实现app与设备的连接;
16.所述发送报文子模块适于由库文件调用设备api并把app给定的需要发送的报文
写入设备;
17.所述接收报文子模块适于由库文件调用设备api并把设备从所有通道上读到的报文返回给应用程序;
18.所述断开连接子模块适于由库文件调用设备api实现应用程序断开设备的连接。
19.第二方面,本发明还提供一种多适配器兼容用调用方法,包括:
20.构建各厂家的库文件模块;
21.应用程序通过库文件模块获取设备的获取报文信息;以及
22.在报文信息获取后断开设备的连接。
23.进一步,所述构建各厂家的库文件模块的方法包括:
24.所述库文件模块包括:读序列号子模块、读通道数量子模块、读通道类型子模块、读通道波特率子模块、写通道波特率子模块、连接子模块、发送报文子模块、接收报文子模块和断开子模块;
25.所述读序列号子模块适于由库文件读取设备api并把设备的序列号返回给应用程序;
26.所述读通道数量子模块适于由库文件读取设备api并把设备的物理通道数量返回给应用程序;
27.所述读通道类型子模块适于由库文件读取设备api并把设备的特定通道的类型返回给应用程序;
28.所述读通道波特率子模块适于由库文件读取设备api并把特定通道的波特率返回给应用程序;
29.所述写通道波特率子模块适于由库文件调用设备api并把app给定的波特率写入设备;
30.所述连接子模块适于由库文件调用设备api实现app与设备的连接;
31.所述发送报文子模块适于由库文件调用设备api并把app给定的需要发送的报文写入设备;
32.所述接收报文子模块适于由库文件调用设备api并把设备从所有通道上读到的报文返回给应用程序;
33.所述断开连接子模块适于由库文件调用设备api实现应用程序断开设备的连接。
34.进一步,所述应用程序通过库文件模块获取设备的获取报文信息的方法包括:
35.应用程序通过厂家对应的库文件模块获取设备的报文信息,即
36.依次实现读序列号子模块、读通道数量子模块、读通道类型子模块、读通道波特率子模块、写通道波特率子模块、连接子模块、发送报文子模块和接收报文子模块的功能,获取报文信息。
37.进一步,所述在报文信息获取后断开设备的连接的方法包括:
38.在获取报文信息后通过断开子模块实现应用程序断开设备的连接。
39.第三方面,本发明还提供一种多适配器兼容用调用系统,包括:
40.库文件模块,构建各厂家的库文件模块;
41.报文信息获取模块,应用程序通过库文件模块获取设备的获取报文信息;以及
42.断开模块,在报文信息获取后断开设备的连接。
43.第四方面,本发明还提供一种多适配器兼容设备,包括:
44.控制模块,以及与该控制模块电性连接的若干接口模块;
45.所述接口模块适于连接适配器;
46.所述控制模块适于通过适配器接收设备发送的报文信息。
47.第五方面,本发明还提供一种多适配器兼容系统,包括:
48.多适配器兼容设备和上位机;
49.所述上位机适于接收所述多适配器兼容设备发送的报文信息,并对报文信息进行分析。
50.本发明的有益效果是,本发明通过构建各厂家的库文件模块;应用程序通过库文件模块获取设备的获取报文信息;以及在报文信息获取后断开设备的连接,实现了在上层app中实现适配器的抽象,上层app导出一套通用的api接口,针对每种厂家的适配器编写库文件,通过调用厂家适配器的api,来实现上层app的api接口,app无需了解厂家适配器的任何细节,仅仅加载库文件即可使用适配器的功能,不但可支持市面上所有的厂家的适配器,同时还可通过增加库文件的方式支持任何一款新的厂商的适配器,极大地提高了应用程序的开发效率。
51.本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书以及附图中所特别指出的结构来实现和获得。
52.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
53.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
54.图1是本发明所涉及的多适配器兼容用调用方法的流程图;
55.图2是本发明所涉及的多适配器兼容用调用方法的原理示意图;
56.图3是本发明所涉及的多适配器兼容用调用系统的原理框图。
具体实施方式
57.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
58.实施例1
59.本实施例1提供了一种多适配器兼容用库文件模块,可以但不限于包括:读序列号子模块、读通道数量子模块、读通道类型子模块、读通道波特率子模块、写通道波特率子模块、连接子模块、发送报文子模块、接收报文子模块和断开子模块;通过库文件模块调用厂
家适配器的api,来实现上层app(应用程序)的api接口,app无需了解厂家适配器的任何细节,仅仅加载库文件即可使用适配器的功能,app可在开发完成后就无需进行任何修改,不但可支持市面上所有的厂家的适配器,同时还可通过增加库文件的方式支持任何一款新的厂商的适配器,极大地提高了应用程序的开发效率,减少工作量,降低错误发生的可能性。
60.在本实施例中,app每加载一个库文件模块,就向这个库文件模块中索取一系列特定的回调函数(对应功能的子模块),这些回调函数将在app运行时实时调用,回调函数的种类和数量视app的功能而定;库文件模块中的子模块功能和数量可以针对不同的厂家有不同的实现,甚至同一个厂家也可以由不同的开发者实现具备相同功能但是不同实现方式的库文件模块;所述读序列号子模块适于由库文件读取设备api并把设备的序列号返回给应用程序;所述读通道数量子模块适于由库文件读取设备api并把设备的物理通道数量返回给应用程序;所述读通道类型子模块适于由库文件读取设备api并把设备的特定通道的类型(can通道,或是lin通道,或是以太网通道等等)返回给应用程序;所述读通道波特率子模块适于由库文件读取设备api并把特定通道的波特率返回给应用程序;所述写通道波特率子模块适于由库文件调用设备api并把app给定的波特率写入设备;所述连接子模块适于由库文件调用设备api实现app与设备的连接;所述发送报文子模块适于由库文件调用设备api并把app给定的需要发送的报文写入设备;所述接收报文子模块适于由库文件调用设备api并把设备从所有通道上读到的报文返回给应用程序;所述断开连接子模块适于由库文件调用设备api实现应用程序断开设备的连接。
61.实施例2
62.图1是本发明所涉及的多适配器兼容用调用方法的流程图。
63.如图1所示,在实施例1的基础上,本实施例2还提供一种多适配器兼容用调用方法,包括:构建各厂家的库文件模块;应用程序通过库文件模块获取设备的获取报文信息;以及在报文信息获取后断开设备的连接;多适配器上层软件设计过程(多适配器兼容用调用方法执行过程)具有硬件无关性,设计过程无需事先得知任意一个厂商的存在,就可开发完成对所有适配器普适的软件平台,甚至可由厂商自主完成设备的支持;通过多适配器兼容用调用方法构建的上层软件架构具有接口明确性和灵活性,可通过加载库文件(库文件模块)的方式调用不同种类的汽车适配器,也可应对新出现的汽车适配器,整个过程无需修改app,从而拓展了app作为软件平台的连接能力,统一了汽车适配器领域的兼容方法。
64.在本实施例中,所述库文件模块可以采用实施例1中的库文件模块,构建厂家对应的库文件模块。
65.在本实施例中,多适配器兼容用调用方法是自下而上,从设备api的特性入手,编写接口程序,使得接口程序实现多适配器软件上层所要求的接口功能,最终得以在多适配器软件中加载运行,自下而上的方法使得上层软件做到了硬件无关,一旦开发完成便无需修改,从而实现软件平台化,不断地可以有新的厂商生产的新的适配器加入到同一个软件平台中。
66.图2是本发明所涉及的多适配器兼容用调用方法的原理示意图。
67.在本实施例中,所述构建各厂家的库文件模块的方法包括:所述库文件模块可以但不限于包括:读序列号子模块、读通道数量子模块、读通道类型子模块、读通道波特率子模块、写通道波特率子模块、连接子模块、发送报文子模块、接收报文子模块和断开子模块;
所述读序列号子模块适于由库文件读取设备api并把设备的序列号返回给应用程序;所述读通道数量子模块适于由库文件读取设备api并把设备的物理通道数量返回给应用程序;所述读通道类型子模块适于由库文件读取设备api并把设备的特定通道的类型返回给应用程序;所述读通道波特率子模块适于由库文件读取设备api并把特定通道的波特率返回给应用程序;所述写通道波特率子模块适于由库文件调用设备api并把app给定的波特率写入设备;所述连接子模块适于由库文件调用设备api实现app与设备的连接;所述发送报文子模块适于由库文件调用设备api并把app给定的需要发送的报文写入设备;所述接收报文子模块适于由库文件调用设备api并把设备从所有通道上读到的报文返回给应用程序;所述断开连接子模块适于由库文件调用设备api实现应用程序断开设备的连接;如图2所示,以库文件a为例,其内部包含左侧厂家a的各类api调用算法对应的子模块和右侧app的回调函数功能对应的子模块实现两大部分组成,作为外部厂商设备与app接口的api。
68.如图2所示,在本实施例中,所述应用程序通过库文件模块获取设备的获取报文信息的方法包括:应用程序通过厂家对应的库文件模块获取设备的报文信息,即依次实现读序列号子模块、读通道数量子模块、读通道类型子模块、读通道波特率子模块、写通道波特率子模块、连接子模块、发送报文子模块和接收报文子模块的功能,获取报文信息。
69.在本实施例中,所述在报文信息获取后断开设备的连接的方法包括:在获取报文信息后通过断开子模块实现应用程序断开设备的连接。
70.实施例3
71.图3是本发明所涉及的多适配器兼容用调用系统的原理框图。
72.如图3所示,在实施例2的基础上,本实施例3还提供一种多适配器兼容用调用系统,包括:库文件模块,构建各厂家的库文件模块;报文信息获取模块,应用程序通过库文件模块获取设备的获取报文信息;以及断开模块,在报文信息获取后断开设备的连接。
73.在本实施例中,各模块的功能在实施例2中已经详细描述,在本实施例中不再赘述。
74.实施例4
75.在实施例3的基础上,本实施例4还提供一种多适配器兼容设备,包括:控制模块,以及与该控制模块电性连接的若干接口模块;所述接口模块适于连接适配器;所述控制模块适于通过适配器接收设备发送的报文信息。
76.在本实施例中,所述控制模块中可以集成多适配器兼容用调用系统中各模块的功能,并根据app调用相应厂家的各类api调用算法和app的回调函数功能。
77.实施例5
78.在实施例4的基础上,本实施例5还提供一种多适配器兼容系统,包括:多适配器兼容设备和上位机;所述上位机适于接收所述多适配器兼容设备发送的报文信息,并对报文信息进行分析。
79.在本实施例中,所述多适配器兼容设备可以采用实施例4中的多适配器兼容设备,上位机可以根据app的功能和需求通过多适配器兼容设备获取设备发送的报文信息,并对报文进行分析处理。
80.综上所述,本发明通过构建各厂家的库文件模块;应用程序通过库文件模块获取设备的获取报文信息;以及在报文信息获取后断开设备的连接,实现了在上层app中实现适
配器的抽象,上层app导出一套通用的api接口,针对每种厂家的适配器编写库文件,通过调用厂家适配器的api,来实现上层app的api接口,app无需了解厂家适配器的任何细节,仅仅加载库文件即可使用适配器的功能,不但可支持市面上所有的厂家的适配器,同时还可通过增加库文件的方式支持任何一款新的厂商的适配器,极大地提高了应用程序的开发效率。
81.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
82.另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
83.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
84.以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献