客制化数据的数值获取方法、装置和存储介质与流程

文档序号:16780550发布日期:2019-02-01 19:05阅读:184来源:国知局
客制化数据的数值获取方法、装置和存储介质与流程

本发明涉及嵌入式电子领域,尤其涉及一种客制化数据的数值获取方法、装置和计算机可读存储介质。



背景技术:

随着人们生活水平的不断提高,各种各样的电子产品已经走进了千家万户,消费者对于电子产品的要求越来越高,需求也往往不同。以至于在电子产品的开发过程中,针对不同客户的不同需求,需要将部分数据进行客制化,以实现客户要求的新功能。

现有的客制化数据的数值获取的技术方案为:客制化数据中的一个头码对应有不同的协议,根据用户需求确定对应的协议后,再根据协议对数据赋予不同的数值,使得数据能够实现不同的功能,从而满足客制化的要求。然而,当用户的需求改变时,需要对主体软件进行重新编译,大大浪费了开发资源。因此,如何使用最少的开发资源使得软件满足客制化的要求,是目前亟待解决的问题。



技术实现要素:

本发明的主要目的在于提供一种客制化数据的数值获取方法、装置和存储介质。旨在解决现有技术中无法满足客制化要求,大大浪费开发资源的问题。

为实现上述目的,本发明提供一种客制化数据的数值获取方法,包括如下步骤:

在预设文件中建立关键字与客制化数据所需数值间的查找map表,其中每个关键字与每个数值一一对应;

接收用户的操作指令,根据所述操作指令获取第一头码和第一协议,从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议;

根据所述第二头码和所述第二协议,获取与所述第二头码和所述第二协议对应的关键字;

根据所述第二头码和所述第二协议对应的关键字,查找所述map表,得到所述map表中与该关键字对应的数值。

可选地,所述根据所述操作指令获取第一头码和第一协议的步骤包括:

根据所述操作指令,获取所述操作指令对应的码值;

对所述码值进行解析,得到第一头码和第一协议。

可选地,所述从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤之前,还包括:

获取预设文件对应的解析文件,并通过解析文件对所述预设文件进行解析;

所述从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤包括:

从解析后的预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议。

可选地,所述从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤包括:

从解析后的预设文件中获取多个头码和多个协议;

将第一头码和第一协议与所述多个头码和多个协议进行匹配,得到与所述第一头码和所述第一协议分别对应的第二头码和第二协议。

可选地,所述从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤之后还包括:

从解析后的预设文件中得到与所述第一协议对应的中断号;

根据所述中断号获取与所述中断号对应功能的驱动函数;

所述得到map表中与所述关键字对应的数值的步骤之后,还包括:

根据所述驱动函数,传递所述客制化数据。

可选地,所述根据所述第二头码和所述第二协议,获取与所述第二头码和所述第二协议对应的关键字的步骤包括:

从解析后的预设文件中得到程序语句;

按照预设规则读取程序语句,以获取所述程序语句中的关键字;

预设规则包括:跳过程序语句中的注释语句,以及除所述第二协议和第二头码对应的关键字以外的其他关键字。

可选地,所述在执行根据操作指令获取第一头码和第一协议的步骤的同时,执行以下步骤:

根据所述操作指令获取包括变量的代码;

所述根据所述第二头码和所述第二协议对应的关键字,查找所述map表,得到所述map表中与该关键字对应的数值的步骤之后,还包括:

将所述数值赋值给所述代码中的变量,完成对数据的客制化。

可选地,所述在所有步骤之后还包括:

接收用户的客制化数据修改指令;

根据所述客制化数据修改指令修改所述map表中关键字与客制化数据所需数值的对应关系。

此外,为实现上述目的,本发明还提供一种客制化数据的数值获取装置,所述客制化数据的数值获取装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的客制化数据的数值获取程序,所述客制化数据的数值获取程序被所述处理器执行时实现如上所述的客制化数据的数值获取方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有客制化数据的数值获取程序,所述客制化数据的数值获取程序被处理器执行时实现如上所述的客制化数据的数值获取方法的步骤。

本发明提供了一种客制化数据的数值获取方法、装置和存储介质,包括如下步骤:在预设文件中建立关键字与客制化数据所需数值间的查找map表,其中每个关键字与每个数值一一对应;接收用户的操作指令,根据操作指令获取第一头码和第一协议,从预设文件中获取第一头码和第一协议分别对应的第二头码和第二协议;根据第二头码和第二协议,获取与第二头码和第二协议对应的关键字;根据第二头码和第二协议对应的关键字,查找map表,得到map表中与该关键字对应的数值。本发明通过预先建立关键字与客制化数据所需数值间的map表,每个关键字与每个协议一一对应,而每个关键字又与每个数值一一对应,当用户的需求改变时,只需重新编译map表,即可实现用户要求的新功能,大大节约了开发资源,减少了生产周期。此外,根据用户的操作指令所获取的头码和协议确定预设文件中分别对应的头码和协议,实现了头码和协议的一一对应,即使存在多个协议,也能对协议进行有效的解析。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;

图2为本发明客制化数据的数值获取方法一实施例的流程示意图;

图3为本发明客制化数据的数值获取方法另一实施例的流程示意图;

图4为本发明实施例所述从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤细化流程示意图;

图5为本发明客制化数据的数值获取方法又一实施例的流程示意图;

图6为本发明客制化数据的数值获取方法再一实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。

本发明实施例终端是客制化数据的数值获取装置,可以是电脑,也可以是智能手机、平板电脑、便携计算机等具有显示功能和输入功能的可移动式终端设备。

如图1所示,该终端可以包括:处理器1001,例如cpu,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选的用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,终端还可以包括摄像头、wifi模块等等,在此不再赘述。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要包括输入单元比如键盘,键盘包括无线键盘和有线键盘,用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的调音客制化数据程序。

本发明作为终端的客制化数据的数值获取装置的具体实施例与下述客制化数据的数值获取方法各实施例基本相同,在此不作赘述。

请参阅图2,图2为本发明客制化数据的数值获取方法一实施例的流程示意图,本实施例提供的客制化数据的数值获取方法包括如下步骤:

步骤s110,在预设文件中建立关键字与客制化数据所需数值间的查找map表,其中每个关键字与每个数值一一对应;

在预设文件中建立有不同关键字和不同数值的map表,其中map表中的关键字与数值一一对应。通过将map表中不同数值赋值给代码,使数据实现不同的功能。此外,通过预先建立包括有不同数值的map表,当用户的需求改变时,只需重新编译map表,即可实现用户要求的新功能,大大降低了生产开发的维护成本,减少了生产开发周期。

步骤s120,接收用户的操作指令,根据所述操作指令获取第一头码和第一协议,从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议;

在本发明实施例中,以该客制化数据的数值获取方法在遥控器上的应用为例,应当理解的是,本发明不仅可以应用在遥控器上,利用本发明公开的客制化数据的数值获取方法可以实现嵌入式电子产品声音数据、屏参数据、pq数据的独立化以及信号源配置。

本发明实施例中,用户先发出一个操作指令,例如按压遥控器按键,根据用户的这个操作,软件获取到因用户按压遥控器按键所生成的第一头码和第一协议。应当理解的是,一对头码和协议对应客户要求的一种功能。例如,对于同一遥控器的同一个遥控按键,a客户需要实现增大电视声音的功能,此时在预设文件中配置对应的头码和协议,当b客户使用此遥控器的同一个遥控按键,要求实现更换频道功能时,需要对预设文件map表中的数据进行重新编译。

可以预先根据不同客户的不同需求在预设文件中添加多个协议和多个头码,头码和协议与客户所要求的功能一一对应,即一对头码和协议,对应一种遥控器按键的功能。接收到第一头码和第一协议后,遍历预设文件,可以从多个协议和多个头码中得到文件中对应的第二头码和第二协议。通过这种方式,将协议配置在上层文件,实现了不同协议的独立化。当存在多个协议,需要对协议进行解析时,也能避免解析过程中出现数据重叠从而解析失败的现象。

步骤s130,根据所述第二头码和所述第二协议,获取与所述第二头码和所述第二协议对应的关键字,;

预先根据不同客户的不同需求在预设文件的程序语句中添加多个关键字,并且关键字与一对头码和协议一一对应,即一对头码和协议,对应一段编程语句中的关键字。现有技术中,得到预设文件中对应的协议后,直接实现对数据功能的定义,当需求的功能较多导致协议较多时,容易引起代码混乱从而造成协议解析失败。而本发明利用不同关键字对应不同的协议,再进行后续对数据进行功能定义的操作,使得代码逻辑更加清晰,且真正实现了协议的独立,当客户需求变更时,只需对预设文件进行简单的重新编译,而不必重新编译整个主体软件。

步骤s140,根据所述第二头码和所述第二协议对应的关键字,查找所述map表,得到所述map表中与该关键字对应的数值。

得到对应的关键字后,在map表中得到与该关键字对应的数值。在预设文件中有不同关键字和不同数值间的map表,map表中的关键字与数值一一对应。将不同数值赋值给代码,使数据实现不同的功能。

本实施例中的客制化数据的数值获取方法包括如下步骤:在预设文件中建立关键字与客制化数据所需数值间的查找map表,其中每个关键字与每个数值一一对应;接收用户的操作指令,根据操作指令获取第一头码和第一协议,从预设文件中获取第一头码和第一协议分别对应的第二头码和第二协议;根据第二头码和第二协议,获取与第二头码和第二协议对应的关键字;根据第二头码和第二协议对应的关键字,查找map表,得到map表中与该关键字对应的数值。本发明通过预先建立关键字与客制化数据所需数值间的map表,每个关键字与每个协议一一对应,而每个关键字又与每个数值一一对应,当用户的需求改变时,只需重新编译map表,即可实现用户要求的新功能,大大节约了开发资源,减少了生产周期。此外,根据用户的操作指令所获取的头码和协议确定预设文件中分别对应的头码和协议,实现了头码和协议的一一对应,即使存在多个协议,也能对协议进行有效的精准的解析。

进一步地,参照图3,图3为本发明客制化数据的数值获取方法另一实施例的流程示意图,上述步骤s120中根据所述操作指令获取第一头码和第一协议的步骤包括:

步骤s150,根据所述操作指令,获取所述操作指令对应的码值;

步骤s160,对所述码值进行解析,得到第一头码和第一协议。

接收用户使用嵌入式电子产品时产生的操作指令,并根据操作指令获取对应的码值。以遥控器为例,用户按下遥控器按键时,随即产生遥控码值。获取到对应的码值后,对码值进行解码,得到对应的第一头码和第一协议。其中,头码是代码中的部分语句,起到标识的作用,通过头码进行程序语句之间的互相匹配。协议是通信计算机双方必须共同遵从的一组约定,是为实现网络数据交换而建立的规则、约定或标准,也是互相通信的模块都要遵循的技术规范。

进一步地,上述步骤s120从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议之前,还包括:

步骤s170,获取预设文件对应的解析文件,并通过解析文件对所述预设文件进行解析;

上述步骤s120包括:

步骤s121,从解析后的预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议。

当预设文件类型为ini预设文件时,解析预设文件为iniparser.c文件,应当理解的是,不同的预设文件类型对应不同的解析文件。作为系统配置文件的ini文件可以用来存放软件信息、注册表信息等。ini文件统管系统的各项配置,在我们使用的应用程序下一般都有ini文件,用来配置软件以实现不同用户的要求。因此本发明首选配置ini格式的文件作为预设文件,来实现数据与程序的分离。预设文件中保留程序的数据接口,在软件需要更新时,只需更新相关数据接口的数据,即可实现用户要求的新功能,满足客制化的要求,而不必重新编译软件。

应当理解的是,本发明可以先使用解析分解对预设文件进行解析,再从解析后的预设文件中得到第二头码和第二协议。在对预设文件进行解析操作后,即可从解析的预设文件中获取到与第一头码和第一协议分别对应的第二头码和第二协议。

进一步地,参照图4,图4为本发明一实施例的步骤s120中从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤细化流程示意图,上述从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议的步骤包括:

步骤s122,从解析后的预设文件中获取多个头码和多个协议;

步骤s123,将第一头码和第一协议与所述多个头码和多个协议进行匹配,得到与所述第一头码和所述第一协议分别对应的第二头码和第二协议。

使用解析文件对预设文件进行解析后,得到预设文件中的多个头码和多个协议,将预设文件中的与第一头码相同的头码作为第二头码;将预设文件中的与第一协议相同的协议作为第二协议。应当理解的是,第二头码和第二协议分别与第一头码和第一协议一一对应。通过这种方式,直接进行协议之间的匹配,实现了协议的独立化,避免在对协议进行解析时,发生数据重叠,造成解析错误的情况发生。

进一步地,参照图5,图5为本发明客制化数据的数值获取方法又一实施例的流程示意图,上述步骤s120从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议之后包括:

步骤s180,从解析后的预设文件中得到与所述第一协议对应的中断号;

步骤s190,根据所述中断号获取与所述中断号对应功能的驱动函数;

上述步骤s140得到map表中与所述关键字对应的数值之后,还包括:

步骤s200,根据所述驱动函数,传递所述客制化数据。

通过解析文件对预设文件进行解析,预设文件中预设有多个已在内核注册的中断号,通过对预设文件进行解析,得到与第一协议对应的中断号。中断号能够判断是哪个设备提出的运行请求,利用中断号的这个特性寻找到发出中断的设备的地址,得到对应的设备中断,获取设备中断中的驱动函数。在得到map表中对应的数值,获取了客制化数据对应的数值后,利用获取到的驱动函数,将客制化数据传递给被控设备,实现实际按键值的传递。此为现有技术,在次不再阐述。通过调用相关设备中断中的驱动函数,保障了客制化数据的传递,保证被控设备真正实现客户需求的功能。

进一步地,上述根据所述第二头码和所述第二协议,获取与所述第二头码和所述第二协议对应的关键字的步骤包括:

步骤s131,从解析后的预设文件中得到程序语句;

步骤s132,按照预设规则读取程序语句,以获取所述程序语句中的关键字;

预设规则包括:跳过程序语句中的注释语句,以及除所述第二协议和第二头码对应的关键字以外的其他关键字。

预设文件中内置有与不同的头码和协议对应的程序语句,通过对预设文件的解析,得到与第二头码和第二协议对应的程序语句。其中,程序语句分为两部分,其中有用符号“#”开头的语句,此为程序语句的注释部分,一般为留给开发人员的备注信息,对整个程序的运行不起作用,因此查找关键字时,直接跳过此部分。另一部分为章节部分,由具有计算机语言逻辑的程序语句构成,它能实现程序所要表达的功能。跳过程序语句的注释部分,在程序语句的章节部分得到预设的与第二协议和第二头码对应的关键字。

本发明利用关键字对应不同的协议,再进行后续对数据进行功能定义的操作,使得代码逻辑更加清晰,且真正实现了协议的独立,当客户需求变更时,不必重新编译整个主体软件。

进一步地,参照图6,图6为本发明客制化数据的数值获取方法再一实施例的流程示意图,在所有步骤之后还包括:

步骤s220,接收用户的客制化数据修改指令;

步骤s230,根据所述客制化数据修改指令修改所述map表中关键字与客制化数据所需数值的对应关系。,

当用户想要实现更多的功能或者变更功能时,接收对应的客制化数据修改指令,根据客制化数据修改指令,只需更改map表中关键字与客制化数据所需数值的对应关系,改变数据代码中对应变量的赋值,即可实现用户要求的新功能,进而满足客制化的要求,而不必重新编译软件,大大节约了开发成本。

进一步地,在执行根据操作指令获取第一头码和第一协议的步骤的同时,执行以下步骤:

步骤s124,根据所述操作指令获取包括变量的代码;

上述步骤s140根据所述第二头码和所述第二协议对应的关键字,查找所述map表,得到所述map表中与该关键字对应的数值之后,还包括:

步骤s210,将所述数值赋值给所述代码中的变量,完成对数据的客制化。

本发明实施例中,根据用户的操作指令获取对应的代码,其中代码中的变量未被赋予确切的数值,所以数据的功能未被定义,需要根据客户的需求对变量赋予一定的数值。在得到map表中与该关键字对应的数值之后,将对应的数值赋值给代码中的变量,完成对数据功能的定义。本发明通过这种方式将数据与程序分离,在用户的需求变动时,只需改变代码中变量的具体数值,就能实现不同的功能,达到了节省了开发资源的目的。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有客制化数据的数值获取程序,所述客制化数据的数值获取程序被处理器执行时实现如下操作:

在预设文件中建立关键字与客制化数据所需数值间的查找map表,其中每个关键字与每个数值一一对应;

接收用户的操作指令,根据所述操作指令获取第一头码和第一协议,从预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议;

根据所述第二头码和所述第二协议,获取与所述第二头码和所述第二协议对应的关键字;

根据所述第二头码和所述第二协议对应的关键字,查找所述map表,得到所述map表中与该关键字对应的数值。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

根据所述操作指令,获取所述操作指令对应的码值;

对所述码值进行解析,得到第一头码和第一协议。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

获取预设文件对应的解析文件,并通过解析文件对所述预设文件进行解析;

从解析后的预设文件中获取所述第一头码和所述第一协议分别对应的第二头码和第二协议。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

从解析后的预设文件中获取多个头码和多个协议;

将第一头码和第一协议与所述多个头码和多个协议进行匹配,得到与所述第一头码和所述第一协议分别对应的第二头码和第二协议。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

从解析后的预设文件中得到与所述第一协议对应的中断号;

根据所述中断号获取与所述中断号对应功能的驱动函数;

根据所述驱动函数,传递所述客制化数据。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

从解析后的预设文件中得到程序语句;

按照预设规则读取程序语句,以获取所述程序语句中的关键字;

预设规则包括:跳过程序语句中的注释语句,以及除所述第二协议和第二头码对应的关键字以外的其他关键字。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

根据所述操作指令获取包括变量的代码;

将所述数值赋值给所述代码中的变量,完成对数据的客制化。

进一步地,所述客制化数据的数值获取程序被处理器执行时还实现如下操作:

接收用户的客制化数据修改指令;

根据所述客制化数据修改指令修改所述map表中关键字与客制化数据所需数值的对应关系。

本发明计算机可读存储介质的具体实施例与上述客制化数据的数值获取方法各实施例基本相同,在此不作赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1