CN104765662A - 一种自适应固件程序及系统 - Google Patents
一种自适应固件程序及系统 Download PDFInfo
- Publication number
- CN104765662A CN104765662A CN201310750215.0A CN201310750215A CN104765662A CN 104765662 A CN104765662 A CN 104765662A CN 201310750215 A CN201310750215 A CN 201310750215A CN 104765662 A CN104765662 A CN 104765662A
- Authority
- CN
- China
- Prior art keywords
- interface module
- module
- interface
- characteristic information
- self
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种自适应固件程序及系统,所述固件程序包括有识别模块,用于识别与中央处理单元各接口相连接的接口模块的类别;跳转模块,用于根据所述模块类别跳转至对应的程序入口;应用模块,用于实现用户功能;进一步,提供一种接口模块识别方法,建立接口模块的特性信息、检测指令及指令应答结果库,将所述库预置在所述自适应固件程序中;复位接口模块;使用特性信息识别所述接口模块的类别及具体型号;使用检测指令识别所述接口模块的类别及具体型号;识别下一个接口模块的类别及具体型号;所述识别方法为所述固件程序中识别模块的具体实现。本发明可以满足不同客户对产品不同的个性化需求,减少固件程序版本,从而降低管理成本。
Description
技术领域
本发明涉及嵌入式系统,尤其涉及一种自适应固件程序及其系统。
背景技术
随着电子技术的不断进步,需求多样化、功能集成化是电子产品发展的一个趋势。当今客户并不满足于制造商提供的标准化产品,往往会提出一些个性化需求,例如同一类型的电子产品有些客户要求使用A模块,有些要求使用B模块;有些要求C功能,有些要求D功能;总之个性化应用需求已成为客户选购一款产品的重点考量因素之一。
以车载定位设备为例,有些用户要求使用GSM通信模块,有些则要求使用CDMA通信模块;有些用户要求使用GPS定位模块,有些则要求使用北斗(Compass)定位模块;有些用户要求外接摄像头,有些用户则不需要外接摄像头,而是要求外接语音播报器。类似的个性化需求呈现快速上升的趋势,当前的解决方法是一个需求对应一个版本,如附图1所示。用户选择通信模块为GSM模块,定位模块为GPS模块时,其对应的固件程序为用户程序版本1;用户选择通信模块为GSM模块,定位模块为Compass模块时,其对应的固件程序为用户程序版本2;用户选择通信模块为CDMA模块和定位模块为GPS模块时,其对应的固件程序为用户程序版本3;用户选择通信模块为CDMA模块,定位模块为Compass模块时,其对应的固件程序为用户程序版本4。以上是车载定位设备最基本的4个分类,如果按具体的模块型号来分可以分成更多的版本分支,如此多的固件程序版本分支给研发、生产、维护、管理带来不便。生产部门在每次烧写程序时必须从众多的固件版本中选择与产品PCB硬件相匹配的版本;项目管理部门需要为每个分支版本整理分类相关的技术文档,投入项目团队(包括研发、生产、测试的相关人员)来维持项目的运作,尽管版本间功能差异不多,代码差异部分往往不到整个可执行程序的10%,但对项目管理来说,不同的版本就对应一个项目,必然对应着一个项目组;维护部门在维修时也首先要确认程序版本的对应关系。版本种类或分支多会带来一系列的管理问题,增加了投入成本,企业的效率也会随之降低。
发明内容
本发明在于解决因不同客户对产品不同的个性化需求,使得固件程序版本较多,从而导致管理成本高,维护人员工作量大的问题,提供了一种接口模块的识别方法及装置,更进一步,构建了一种自适应的固件程序应用系统。所述固件程序可以识别所有接口上连接的模块类型,并跳转至与所述模块对应的应用程序入口执行相应的应用程序。
为解决上述技术问题,本发明采用如下所述的技术方案。一种自适应固件程序,包括有识别模块,用于识别与中央处理单元各接口相连接的接口模块的类别;跳转模块,用于根据所述模块类别跳转至对应的程序入口;应用模块,用于实现用户功能。
本发明进一步提供一种接口模块的识别方法,具体有以下步骤:
S21、建立接口模块的特性信息、检测指令及指令应答结果库,将所述库预置在所述自适应固件程序中;
S22、复位接口模块;
S23、使用特性信息识别所述接口模块的类别及具体型号;
S24、使用检测指令识别所述接口模块的类别及具体型号;
S25、识别下一个接口模块的类别及具体型号。
其进一步技术方案为,在S21步骤中,所述接口模块为在市场销售量较高,流通量较大的常用模块。
其进一步技术方案为,执行 S22步骤,若所述接口模块复位后可以自动发送本模块的特性信息,则使用特性信息识别所述接口模块的类别及具体型号,具体为:
将接收到的所述接口模块的特性信息与所有预置的特性信息逐条进行对比,如果对比结果相同,则停止与后面的预置的特性信息对比,识别到所述接口模块的型号,进入步骤S25;否则继续对比,若所有预置的特性信息对比完后,仍没有识别出所述接口模块,则不支持所述接口模块,进入步骤S24。
其进一步技术方案为,执行S23步骤,若所述接口模块复位后不会自动发送任何信息,则使用检测指令识别所述接口模块的类别及具体型号,具体为:
按检测指令在库中的顺序发送检测指令,检测接口模块是否返回指令应答结果,如果接收到返回的指令应答结果,将其与预置指令应答结果对比,若两者相同则识别到所述接口模块的型号,结束继续发送后续的检测指令,进入步骤S25,若对比结果不同,则不支持所述接口模块,进入步骤S25;如果一段时间后没有接收到返回的指令应答结果,继续发送下一条检测指令,若执行完所有的检测指令仍没有识别出所述接口模块,则不支持所述接口模块,进入步骤S25。
本发明更进一步提供一种自适应识别接口模块的装置,包括有一特性信息单元,用于存储常用接口模块的特性信息;一检测指令单元,用于存储常用接口模块的检测指令;一指令应答结果单元,用于存储常用接口模块的指令应答结果;一第一判断单元,用于判断接口模块发送的特性信息与预置的特性信息是否一致;一第二判断单元,用于判断接口模块返回的指令应答结果是否与预置的指令应答结果一致。
其进一步技术方案为,还包括有一接口类型标识单元,用于存储所述装置所有接口类型的标识。
其进一步技术方案为,还包括有一接口单元,用于记录所述装置上接口的个数。
一种自适应识别接口模块的系统,其特征在于,包括有一车载定位设备,一自适应识别接口模块的装置、至少一外接接口及至少一接口模块。
与现有技术相比,本发明所提供的自适应固件程序及其系统集成了常用的接口模块,可以自动识别所有接口上连接的接口模块类型,并跳转至与所述接口模块对应的应用程序入口执行相应的应用程序。可以满足不同用户对产品的个性化需求,减少了固件程序版本,降低管理成本,减少维护人员的工作量。
附图说明
图1为现有车载终端连接不同接口模块的系统结构图。
图2为本发明实施例提供的自适应固件程序的结构示意图。
图3为本发明实施例提供的接口模块的识别方法的实现流程图。
图4为本发明实施例提供的一种自适应识别接口模块的装置的结构图。
图5为本发明实施例提供的系统结构示意图。
具体实施方式
为使本领域的普通技术人员更加清楚地理解本发明的目的、技术方案和优点,以下结合附图和实施例对本发明做进一步的阐述。
参考图2所示,为本发明实施例提供的自适应固件程序的结构示意图,该自适应固件程序包括有识别模块100,用于识别与中央处理单元各接口相连接的接口模块的类别;跳转模块101,用于根据所述模块类别跳转至对应的程序入口。成功识别该接口模块后设置该接口模块的接口类型标识,跳转模块101读取该接口类别标识,然后跳转至应用模块102中与该接口模块对应的功能程序入口,实现该接口模块的功能。
参考图3所示,为本发明实施例提供的接口模块的识别方法的实现流程,其过程详述如下:
在S21步骤中,建立接口模块的特性信息、检测指令及指令应答结果库,将所述库预置在所述自适应固件程序中;
具体的,上述接口模块为在市场销售量较高,流通量大的常用模块,如通信模块中的华为MC323、中兴MC8331、移远M10,定位模块中的和芯星通UM220(北斗定位)、u-blox 5(GPS定位),计价器模块中的青岛恒星计价器、北京聚利计价器、上海强生计价器;特性信息为所述模块启动时自动发送的一些关键信息,比如厂商信息、模块型号信息等可以唯一确定该款模块的信息;检测指令为按照上述接口模块自身支持的命令格式组成的测试指令,指令应答结果为上述接口模块接收到检测指令后按照自身支持的格式组成的应答指令。比如北京聚利计价器的协议为:前导码(5AH)+长度码+命令码+数据+校验码+结束码(5BH),长度码、命令码、校验码、前导码、结束码为1字节,长度码的长度=命令码+数据+校验码+结束码长度之和,校验码为长度码+命令码+数据逐字异或;而上海强生计价器协议为:起始位+包长度+设备类型+数据+校验码+结束位,起始位、包长度、结束位为2字节,设备类型、校验码为1字节,校验码为包长度+设备类型+数据逐字异或;另青岛恒星计价器的协议为:前导码+长度码+命令码+数据+校验码+结束码(CCH),前导码、命令码、校验码、结束码为1字节,长度码为2字节。根据各自的协议定义各自的测试指令及指令应答结果。
在S22步骤中,复位接口模块;
具体的,接口模块复位后,有的接口模块自动发送特性信息,比如通信模块中的华为MC323、中兴MC8331、移远M10,定位模块中的和芯星通UM220(北斗定位)、u-blox 5(GPS定位);而计价器模块中的青岛恒星计价器、北京聚利计价器、上海强生计价器复位后不会自动发送特性信息。
在S23步骤中,使用特性信息识别所述接口模块的类别及具体型号;
进一步,使用特性信息识别所述接口模块的类别及具体型号具体为:
将接收到的所述接口模块的特性信息与所有预置的特性信息逐条进行对比,如果对比结果相同,则停止与后面的预置的特性信息对比,识别到所述接口模块的型号,进入步骤S25;否则继续对比,若所有预置的特性信息对比完后,仍没有识别出所述接口模块,则不支持所述接口模块,进入步骤S24。
具体的,将上述通信模块和上述定位模块的特性信息一一与接收到的特性信息进行对比,如果对比到此特性信息与华为MC323的特性信息相符,则识别出该接口模块为华为MC323通信模块。
在S24步骤中,使用检测指令识别所述接口模块的类别及具体型号;
进一步,使用检测指令识别所述接口模块的类别及具体型号具体为:
按检测指令在库中的顺序发送检测指令,检测接口模块是否返回指令应答结果,如果接收到返回的指令应答结果,将其与预置指令应答结果对比,若两者相同则识别到所述接口模块的型号,结束继续发送后续的检测指令,进入步骤S25,若对比结果不同,则不支持所述接口模块,进入步骤S25;如果一段时间后没有接收到返回的指令应答结果,继续发送下一条检测指令,若执行完所有的检测指令仍没有识别出所述接口模块,则不支持所述接口模块,进入步骤S25。
具体的,按顺序发送青岛恒星计价器、北京聚利计价器、上海强生计价器的检测指令,将该检测指令对应的预置的指令应答结果与计价器返回的指令应答结果对比,例如北京聚利计价器返回的指令应答结果与预置的指令应答结果相符,则识别出该接口模块为北京聚利计价器。
S25、识别下一个接口模块的类别及具体型号。
当具有多个外接接口时,识别完一个接口模块后继续识别下一个接口模块。
例如车载终端设备一般具有一个是无线通讯模块接口,一个是定位模块接口,一个是计价器接口共3个接口,当识别出通讯接口模块后,进入步骤S22,继续识别定位模块接口连接的模块型号。
如图4所示,为本发明一个实施例提供的自适应识别接口模块的装置,为了便于描述,仅示出了与本发明实施例相关的部分。
本实施例提供的自适应识别接口模块的装置与上述接口模块的识别方法相互适用;该识别接口模块的装置可以运行于任何具有数据处理和数据存储能力的应用系统中。
本实施例提供的自适应识别接口模块的装置,包括有:
一特性信息单元300,用于存储常用接口模块的特性信息;
一检测指令单元301,用于存储常用接口模块的检测指令;
一指令应答结果单元302,用于存储常用接口模块的指令应答结果;
一第一判断单元303,用于判断接口模块发送的特性信息与预置的特性信息是否一致;
一第二判断单元304,用于判断接口模块返回的指令应答结果是否与预置的指令应答结果一致。
一接口类型标识单元305,用于存储所述装置所有接口类型的标识。当识别出接口模块后,从接口类型标识单元305中读取对应的接口类型标识,以备使用该接口类型标识引导其他功能程序的运行。
一接口单元306,用于记录所述装置上接口的个数。该接口单元306中的数据决定了检测轮询的次数。
如图5所示,本发明的另一目的在于提供一种自适应识别接口模块的系统,该系统包括有:一车载定位设备40,一自适应识别接口模块的装置30、至少一外接接口50及至少一接口模块60。
具体的,所述车载定位设备根据客户需要可以只有1个接口50,也可以有3个接口50,一般厂家会预留多个接口50供用户实际使用;所述自适应识别接口模块的装置为本发明提供的上述已描述的装置30,此处不再详述;所述接口模块60根据用户需要,可以是A定位模块,也可以是B定位模块,用户就可以选择该车载定位设备支持的多种功能模块。
当然,本发明提供的接口识别方法及装置可以应用于其他相关系统中,不局限于本实施例所介绍的系统。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种自适应固件程序,其特征在于,包括有
识别模块,用于识别与中央处理单元各接口相连接的接口模块的类别;
跳转模块,用于根据所述模块类别跳转至对应的程序入口;
应用模块,用于实现用户功能。
2.一种接口模块的识别方法,其特征在于,包括以下步骤:
S21、建立接口模块的特性信息、检测指令及指令应答结果库,将所述库预置在所述自适应固件程序中;
S22、复位接口模块;
S23、使用特性信息识别所述接口模块的类别及具体型号;
S24、使用检测指令识别所述接口模块的类别及具体型号;
S25、识别下一个接口模块的类别及具体型号。
3.如权利要求2所述的接口模块的识别方法,其特征在于,在S21步骤中,所述接口模块为在市场销售量较高,流通量较大的常用模块。
4.如权利要求2所述的接口模块的识别方法,其特征在于,执行 S22步骤,若所述接口模块复位后可以自动发送本模块的特性信息,则使用特性信息识别所述接口模块的类别及具体型号,具体为:
将接收到的所述接口模块的特性信息与所有预置的特性信息逐条进行对比,如果对比结果相同,则停止与后面的预置的特性信息对比,识别到所述接口模块的型号,进入步骤S25;否则继续对比,若所有预置的特性信息对比完后,仍没有识别出所述接口模块,则不支持所述接口模块,进入步骤S24。
5.如权利要求2所述的接口模块的识别方法,其特征在于,执行S23步骤,若所述接口模块复位后不会自动发送任何信息,则使用检测指令识别所述接口模块的类别及具体型号,具体为:
按检测指令在库中的顺序发送检测指令,检测接口模块是否返回指令应答结果,如果接收到返回的指令应答结果,将其与预置指令应答结果对比,若两者相同则识别到所述接口模块的型号,结束继续发送后续的检测指令,进入步骤S25,若对比结果不同,则不支持所述接口模块,进入步骤S25;如果一段时间后没有接收到返回的指令应答结果,则继续发送下一条检测指令,若执行完所有的检测指令仍没有识别出所述接口模块,则不支持所述接口模块,进入步骤S25。
6.一种自适应识别接口模块的装置,其特征在于,包括有一特性信息单元,用于存储常用接口模块的特性信息;一检测指令单元,用于存储常用接口模块的检测指令;一指令应答结果单元,用于存储常用接口模块的指令应答结果;一第一判断单元,用于判断接口模块发送的特性信息与预置的特性信息是否一致;一第二判断单元,用于判断接口模块返回的指令应答结果是否与预置的指令应答结果一致。
7.如权利要求6所述的装置,其特征在于,还包括有一接口类型标识单元,用于存储所述装置所有接口类型的标识。
8.如权利要求6所述的装置,其特征在于,还包括有一接口单元,用于记录所述装置上接口的个数。
9.一种自适应识别接口模块的系统,其特征在于,包括有一车载定位设备,一自适应识别接口模块的装置、至少一外接接口及至少一接口模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310750215.0A CN104765662A (zh) | 2013-12-31 | 2013-12-31 | 一种自适应固件程序及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310750215.0A CN104765662A (zh) | 2013-12-31 | 2013-12-31 | 一种自适应固件程序及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104765662A true CN104765662A (zh) | 2015-07-08 |
Family
ID=53647507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310750215.0A Pending CN104765662A (zh) | 2013-12-31 | 2013-12-31 | 一种自适应固件程序及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104765662A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650099A (zh) * | 2020-11-27 | 2021-04-13 | 苏州精控能源科技有限公司 | 一种电池监控平台的控制方法及控制系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5710934A (en) * | 1992-05-27 | 1998-01-20 | Sgs-Thomson Microelectronics, S.A. | Methods and test platforms for developing an application-specific integrated circuit |
CN1505425A (zh) * | 2002-11-29 | 2004-06-16 | Ӣ����Ϻ�����������˾ | 电子通信装置对用户识别模组卡进行认证的方法 |
CN1599493A (zh) * | 2003-09-19 | 2005-03-23 | 联想(北京)有限公司 | 一种无线通信模块自动识别的方法 |
CN101155184A (zh) * | 2006-09-25 | 2008-04-02 | 中兴通讯股份有限公司 | 一种实现at命令转换的方法 |
CN101626431A (zh) * | 2009-08-12 | 2010-01-13 | 厦门敏讯信息技术股份有限公司 | 一种能适应通讯模式的处理方法及系统 |
CN102780997A (zh) * | 2012-06-29 | 2012-11-14 | 深圳市赛格导航科技股份有限公司 | 无线通讯模块的通信方法及装置 |
-
2013
- 2013-12-31 CN CN201310750215.0A patent/CN104765662A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5710934A (en) * | 1992-05-27 | 1998-01-20 | Sgs-Thomson Microelectronics, S.A. | Methods and test platforms for developing an application-specific integrated circuit |
CN1505425A (zh) * | 2002-11-29 | 2004-06-16 | Ӣ����Ϻ�����������˾ | 电子通信装置对用户识别模组卡进行认证的方法 |
CN1599493A (zh) * | 2003-09-19 | 2005-03-23 | 联想(北京)有限公司 | 一种无线通信模块自动识别的方法 |
CN101155184A (zh) * | 2006-09-25 | 2008-04-02 | 中兴通讯股份有限公司 | 一种实现at命令转换的方法 |
CN101626431A (zh) * | 2009-08-12 | 2010-01-13 | 厦门敏讯信息技术股份有限公司 | 一种能适应通讯模式的处理方法及系统 |
CN102780997A (zh) * | 2012-06-29 | 2012-11-14 | 深圳市赛格导航科技股份有限公司 | 无线通讯模块的通信方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650099A (zh) * | 2020-11-27 | 2021-04-13 | 苏州精控能源科技有限公司 | 一种电池监控平台的控制方法及控制系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109152061B (zh) | 通道调配方法、装置、服务器及存储介质 | |
CN106095413B (zh) | 一种蓝牙驱动程序的配置方法及装置 | |
CN111563075B (zh) | 一种业务校验系统、方法及设备和存储介质 | |
CN103677864A (zh) | 软件的升级方法及终端 | |
CN110086658A (zh) | 接口切换方法、装置及计算机可读存储介质 | |
CN110071855A (zh) | 设备联动控制方法、装置、系统、网关及存储介质 | |
CN109254839A (zh) | 确定任务触发时间的方法、构建任务定时器的方法及系统 | |
CN105281937A (zh) | 服务器、服务管理系统及服务管理方法 | |
CN111181784A (zh) | 一种网口状态管理方法、状态机引擎装置、设备及介质 | |
CN110069925A (zh) | 软件监测方法、系统及计算机可读存储介质 | |
EP2664988A1 (en) | Method, device and system for installing terminal software | |
CN104123496A (zh) | 一种流氓软件的拦截方法及装置、终端 | |
CN113760333A (zh) | 软件升级方法、装置、电子设备及计算机可读存储介质 | |
CN108255735A (zh) | 关联环境测试方法、电子装置及计算机可读存储介质 | |
CN103888597A (zh) | 一种通信方法、装置及电子设备 | |
CN104765662A (zh) | 一种自适应固件程序及系统 | |
CN108920338A (zh) | 一种指示文件系统状态的方法及终端 | |
CN106611222B (zh) | 一种通用任务管理方法及系统 | |
CN112560939A (zh) | 模型验证方法、装置及计算机设备 | |
CN112559124A (zh) | 一种模型管理系统以及目标操作指令的处理方法和装置 | |
CN107704362A (zh) | 一种基于Ambari监控大数据组件的方法及装置 | |
CN105354491B (zh) | 智能终端待机状态检测方法及装置 | |
CN105700656B (zh) | 待机异常耗电侦测系统及方法 | |
CN107665142B (zh) | 一种检测应用程序业务流程中断的方法、终端及计算机可读存储介质 | |
CN104781788A (zh) | 资源管理系统、资源管理方法和程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150708 |