发明内容
针对上述技术问题,本申请提供一种通讯模组调用系统,能够至少解决上述技术问题之一。
本申请采用的技术方案为:
本申请实施例提供一种通讯模组调用系统,包括:存储器和处理器,所述存储器中存储有配置文件和模组文件,所述配置文件中存储有m条配置信息,第i条配置信息包括第i个通讯模组的名称和对应的使能指令,i的取值为1到m;
所述模组文件包括m个通讯模组文件,第i个通讯模组文件包括ki个功能文档,每个功能文档包括函数名和对应的函数代码;第i个通讯模组的功能名称集为Ni=(Ni1,Ni2,…,Niki),其中,功能交集C=N1∩N2∩…∩Ni∩…∩Nm=(C1,C2,…,Ct),每个通信模组的Cj的函数名相同,但对应的函数代码不相同,Cj为C中的第j个功能,j的取值为1到t,t的取值为1到min(k1,k2,…,km);
在初始状态时,所有的通讯模组文件处于锁定状态;
所述处理器用于执行计算机程序以实现如下步骤:
S100,在检测到用户更改第i条配置信息的使能指令时,控制对应的第i个通讯模组文件解锁并呈现给用户;
S200,在检测到用户点击第i个通讯模组文件时,将第i个通讯模组文件的ki个功能文档呈现给用户;
S300,在检测到用户点击某个函数名时,将对应的函数代码呈现给用户。
本申请至少具有以下技术效果:用户在开发MCU时,能够直接启动目标通讯模组,调用目标通讯模组中的目标函数代码,用户需要进行的操作只有选择目标通讯模组和输入目标函数名,不需要重新根据目标通讯模组编写目标函数代码,用户只需要了解目标通讯模组和输入目标函数名,即可完成调用操作,减少了用户编写通讯模组内的函数代码的时间,能够提高工作效率。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的通讯模组调用系统,为基于MCU开发的通讯模组调用系统。本申请实施例提供的通讯模组调用系统的技术思想在于,将预设的多个不同的通讯模组的函数代码集中放置在预设区域,不同模组间的相同功能的函数名相同,但是函数代码不同,这样,在调用某个通讯模组的某个功能时,只需要直接调用即可,而不需要开发对应的函数代码,能够节约应用通讯模组的时间。在本申请实施例中,函数名对应通讯模组的功能名称,函数代码对应实现功能的指令代码。在本申请实施例中,通讯模组为实现MCU与终端设备通信的模组,例如,可包括4G模组、5G模组和NB模组等。
进一步地,本申请实施例中,MCU可包括存储器和处理器,可为现有产品。其中,所述存储器中存储有配置文件和模组文件,所述配置文件中存储有m条配置信息,第i条配置信息包括第i个通讯模组的名称和对应的使能指令,i的取值为1到m,即配置文件和模组文件之间存在映射关系,具体地,配置信息和通讯模组文件之间存在一对一的映射关系,如图1所示,通过每条配置信息的使能指令可以使能对应的通讯模组。每条配置信息可为计算机编程语言实现的一条代码,在一个示意性实施例中,可为C语言实现的代码,但并不局限于此,可以为任何可以实现此功能的其它编程语言,例如,java等。本领域技术人员能够知晓,对于采用的编程语言,能够编写对应的代码以使得在更改对应的代码时使能对应的通讯模组。
在本申请实施例中,通讯模组的名称可基于不同通讯模组的信息确定,例如型号、通讯方式、第三方即生产厂商等,便于用户调用。在一个优选实施例中,通讯模组的名称可为型号。
在本申请实施例中,所述模组文件可包括m个通讯模组文件,第i个通讯模组文件包括ki个功能文档,每个功能文档包括函数名和对应的函数代码。第i个通讯模组的功能名称集为Ni=(Ni1,Ni2,…,Niki),其中,功能交集C=N1∩N2∩…∩Ni∩…∩Nm=(C1,C2,…,Ct),每个通信模组的Cj的函数名相同,但对应的函数代码不相同,Cj为C中的第j个功能,j的取值为1到t,t的取值为1到min(k1,k2,…,km)。也就是说,不同通讯模组中的相同功能采用相同的函数名表示,但对应的函数代码不同,这样,当需要增加新的通讯模组时,对于功能相同的功能文档,无需更改函数名,只需要更改一下对应的函数代码即可,能够节约时间。
在本申请实施例中,每个通讯模组的功能可基于对应的第三方发布网站确定,一般可包括注册网络、提取参数以及接收发送数据等。每个功能的函数代码基于对应的第三方发布网站发布的描述文件生成。
在本申请实施例中,每个文件名都以图标的方式呈现。其中,在初始状态时,所有的通讯模组文件处于锁定状态。在具体实施时,可控制所述通讯模组文件的图标为灰色状态。
在本申请实施例中,MCU还与显示器通信连接,显示器用于显示配置文件和模组文件。
进一步地,在本申请实施例中,所述处理器用于执行计算机程序以实现如下步骤:
S100,在检测到用户更改第i条配置信息的使能指令时,控制对应的第i个通讯模组文件解锁并呈现给用户。
具体地,在检测到用户更改第i条配置信息的使能指令时,通过配置文件和模组文件的映射关系,解锁对应的通讯模组文件,例如,使得对应的通讯模组的图标为与灰色不一样的颜色,例如,处于黄色状态,并在显示器上呈现给用户。对于其它的通讯模组文件,则仍然处于灰色状态,用户不可查看,从而满足一对一的映射关系,提高用户的调用效率和调用的准确性。
S200,在检测到用户点击第i个通讯模组文件时,将第i个通讯模组文件的ki个功能文档呈现给用户。
S300,在检测到用户点击某个函数名时,将对应的函数代码呈现给用户。
在本申请实施例中,呈现给用户的函数代码为只读模式,即用户只能复制呈现的函数代码,不可更改呈现的函数代码,从而能够确保对模组文件的统一控制。
本申请实施例提供的通讯模组调用系统,在用户需要调用某个通讯模组时,只需要在配置文件中更改对应的配置信息就可使能对应的通讯模组,然后从使能后的通讯模组中选择所需的函数代码就可以实现通讯模组的调用,无需编写函数代码,只是简单的调用即可,能够使得通讯模组的应用变得简单。
在另一个实施例中,上述S200和S300可被分别替换为:
S210,基于用户输入的功能名称,在解锁后的通讯模组文件中进行检索,得到对应的功能文档;
S310,将得到的功能文档中函数代码呈现给用户。
与前述实施例相比,只需要用户在输入框内输入需要调用的功能名称,就可自动将对应的函数代码呈现给用户,能够节约用户操作,使得调用变得更加简单。
同样,在该实施例中,呈现给用户的函数代码为只读模式,即用户只能复制呈现的函数代码,不可更改呈现的函数代码,从而能够确保对模组文件的统一控制。
进一步地,在本申请实施例中,第i个通讯模组文件可包括第一存储区域和第二存储区域,所述第一存储区域用于存储C对应的功能文档,所述第二存储区域用于存储ki个功能文档中除C之外的功能文档。这样,每个通讯模组的相同的功能文档都存储在相同的存储区域,即存储在相同的位置,能够方便查找和控制。
进一步地,在本申请实施例中,C按照设定的排列顺序存储在第一存储区域。优选地,所述设定的排列顺序与功能文档的重要度相关,在一个示意性实施例中,功能文档的重要度可基于对应的通讯模组的第三方发布网站确定。
进一步地,在本申请实施例中,所述处理器还用于执行计算机程序以实现如下步骤:
S1,根据用户输入的模组名称,创建新的配置信息和模组文件。
S1进一步包括:
S10,根据用户输入的模组名称,在所述配置文件中生成对应的配置信息。
具体地,可在当前配置文件中的最后一条配置信息的后面增加一条配置信息,配置信息采用与其它配置信息相同的编程语言生成,生成规则与其它配置信息相同。
S20,根据所述模组名称获取对应的功能名称集。
在该步骤中,功能名称集可通过对应的第三方发布网站获取。具体地,处理器可通过需要增加的模组名称在第三方发布网站中进行检索,得到对应的功能名称集。
S30,对于获取的任一功能名称,生成对应的函数代码。
处理器在获取到对应的功能名称集后,根据对应的第三方发布的每个功能的描述文件生成对应的函数代码。
S40,根据获取的功能名称集和生成的函数代码,在所述模组文件中增加该模组名称对应的通讯模组文件。
在生成函数代码后,处理器会在当前的模组文件中的排序最后的通讯模组的后面增加该通讯模组名称对应的通讯模组文件,并根据对应的功能名称集创建对应的文件名即函数名,并将每个函数名对应的函数代码存入到对应的文档中。
由于通讯模组的功能大部分相同,对应的函数代码只是少部分不同,因此,在用户需要增加通讯模组时,只需要简单的更改一下已有的函数代码即可实现新的通讯模组的移植,能够节约通讯模组的开发时间。
虽然已经通过示例对本申请的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本申请的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本申请的范围和精神。本申请的范围由所附权利要求来限定。