嵌入式控制器软件集成用软件接口表自动检查的方法与流程

文档序号:30848407发布日期:2022-07-23 03:52阅读:234来源:国知局
嵌入式控制器软件集成用软件接口表自动检查的方法与流程

1.本发明属于计算机信息处理技术领域,特别涉及嵌入式控制器软件集成用软件接口表自动检查的方法。


背景技术:

2.嵌入式控制器软件由各个软件组件(swc)组成,各swc开发完成后,需由集成工程师将各swc代码集成到一起,并编译出二进制文件下载到嵌入式控制器中执行。软件集成主要工作是将各swc输入输出接口相连接,并在开发环境中编译通过,生成二进制文件。软件接口表作为指导软件集成的主要文档资料,需正确表述各swc的输入输出接口,并严格匹配变量名称、数据类型等属性。
3.如果软件接口表中各swc表述不准确,会直接影响软件集成,然而现有的方法是通过人工对比检查软件接口表,这样不但浪费人工,而且面对大量的数据,人容易疲倦,从而导致准确率低,且工作效率低。


技术实现要素:

4.针对现有技术存在的上述不足,本发明的目的就在于提供嵌入式控制器软件集成用软件接口表自动检查的方法,该方法能有效提高检查正确性和工作效率。
5.本发明的技术方案是这样实现的:嵌入式控制器软件集成用软件接口表自动检查的方法,所述软件接口表含有若干sheet,每个sheet代表一个软件组件且每个sheet以软件组件的名称命名,每个sheet中包括软件组件所有输出和输出接口以及每个接口的属性,所述属性包括但不限于access、origin/destination、signal name、name in chinese、id、cycle time、bytes segment、signal start bit、signal length、factor、offset、physical range min、physical range max、signal type、unit、description、initial value、invalid value和app type;包括以下步骤:s1:建立软件接口表内容完整性的检查规则、signal name的检查规则、app type的检查规则、接口相关性的检查规则以及can信号输入/输出有效性的检查规则,再基于上述检查规则建立检查模型;s2:将待检查软件接口表导入s1建立的检查模型中,自动对待检查软件接口表进行检查,并生成检查报告,对软件接口表中有问题的单元格的背景标色,便于开发人员进行人工检查。
6.进一步地,内容完整性的检查规则为:检查软件接口表中每个sheet的内容是否填写完整,若未填写完整,则对应的单元格的背景标红。
7.进一步地,signal name的检查规则为:signal name命名方式为galxxxy_name,其中:gal为开头。
8.xxx为软件组件名称的简写,应与对应的sheet名称相同。
9.若y=i,则软件接口表中的access为input,若y=o或者没有y,则软件接口表中的access为output。
10.signal name对应的变量名长度不超过32字符。
11.任意一项不符合,则对应的单元格的背景标红。
12.进一步地,signal type的检查规则为:检测软件接口表中physical range min和physical range max形成的区间是否跨过0,如跨过,则signal type定义为signed,反之,则signal type定义为unsigned,如不符合规则,则对应的单元格的背景标红。
13.进一步地,app type的检查规则为:所述app type可定义为uint8、uint16、uint32、boolean、float、double、fixdt(x,y,z)或fixdt(a,b,c,d)中任意一种。
14.app type定义为uint8、uint16、uint32、boolean、float或double时,对应的signal type为unsigned。
15.app type定义为fixdt(x,y,z)时,x=0时,对应的signal type为unsigned;x=1时,对应的signal type为signed,对应offset为0;y与对应的signal length(bits)数值相同;2的z次方分之1与对应的factor数值相同。
16.app type定义为fixed(a,b,c,d)时,a=0时,对应的signal type为unsigned;a=1时,对应的signal type为signed,对应的offset为0;b与对应的signal length(bits)数值相同;c与对应的factor数值相同;d与对应的offset数值相同。
17.任意一项不符合,则对应的单元格的背景标红。
18.进一步地,若任一sheet中对应接口的origin/destination中定义的为软件组件名称则采用接口相关性的检查规则进行检查,否则采用can信号输入/输出有效性的检查规则进行检查。
19.进一步地,接口相关性的检查规则为:在signal name属性中提取name后到origin/destination中定义的软件组件中寻找相同name的信号,然后逐列对比两sheet的两接口对应的name in chinese、signal length、factor、offset、physical range、signal type、unit、description、initial value、invalid value和app type各项属性是否相同,如不相同,则对应的单元格的背景标红。
20.进一步地,can信号输入/输出有效性的检查规则为:在信号来源或去向的can网段和id中,寻找name相同的信号,如找不到,则寻找name in chinese相同的信号,若找到的name in chinese能完全匹配,则对应的单元格的背景标黄;若找到的name in chinese不能完全匹配,则对应的单元格的背景标红。
21.与现有技术相比,本发明具有如下有益效果:1、本发明先建立检查模型,然后采用检查模型对软件接口表进行自动检查,相对于人工检查,大大提高了工作效率。
22.2、本发明通过建立完善的检查规则进行检查,采用软件接口表内容完整性的检查规则、signal name的检查规则和app type的检查规则能有效对每个软件组件的接口进行检查,并通过接口相关性的检查规则以及can信号输入/输出有效性的检查规则进行软件组件之间以及软件组件和can信号之间的交互进行检查,有效保证了检查的正确性。
附图说明
23.图1-本发明的流程图。
具体实施方式
24.下面结合附图和具体实施方式对本发明作进一步详细说明。
25.嵌入式控制器软件集成用软件接口表自动检查的方法,所述软件接口表含有若干sheet,每个sheet代表一个软件组件且每个sheet以软件组件的名称命名,每个sheet中包括软件组件所有输出和输出接口以及每个接口的属性,所述属性包括但不限于access、origin/destination、signal name、name in chinese、id、cycle time、bytes segment、signal start bit、signal length、factor、offset、physical range min、physical range max、signal type、unit、description、initial value、invalid value和app type;包括以下步骤:s1:建立软件接口表内容完整性的检查规则、signal name的检查规则、app type的检查规则、接口相关性的检查规则以及can信号输入/输出有效性的检查规则,再基于上述检查规则建立检查模型;s2:将待检查软件接口表导入s1建立的检查模型中,自动对待检查软件接口表进行检查,并生成检查报告,对软件接口表中有问题的单元格的背景标色,便于开发人员进行人工检查。
26.软件接口表的数据量比较大,这样通过相应的规则建立检查模型后,只要将待检查软件接口表倒入检查模型中,就能快速、高效地对软件接口表进行检查,从而提高工作效率。采用软件接口表内容完整性的检查规则、signal name的检查规则和app type的检查规则能有效对每个软件组件的接口进行检查,并通过接口相关性的检查规则以及can信号输入/输出有效性的检查规则进行软件组件之间以及软件组件和can信号之间的交互进行检查,有效保证了检查的正确性。其自动检查的流程图如图1所示。
27.对于软件接口表,有以下几点说明:1、access表示该接口是输入(input)还是输出(output)。
28.2、origin/destination表示该接口输入来源或输出目的地,为其他软件组件或者can定义的接口中一种。
29.3、signal name和name in chinese分别表示该接口的英文和中文名称。
30.4、id、cycle time、bytes segment、signal start bit表示通过以太网发出的中间变量排列方式。
31.5、其他属性表示该接口变量的自身属性。
32.具体实施时,内容完整性的检查规则为:检查软件接口表中每个sheet的内容是否填写完整,若未填写完整,则对应的单元格的背景标红。
33.具体实施时,signal name的检查规则为:signal name命名方式为galxxxy_name,其中:(1)gal为开头。
34.(2)xxx为软件组件名称的简写,应与对应的sheet名称相同。
35.(3)若y=i,则软件接口表中的access为input,若y=o或者没有y,则软件接口表中
的access为output。
36.(4)signal name对应的变量名长度不超过32字符。
37.(1)~(4)中任意一项不符合,则对应的单元格的背景标红。
38.比如signal name属性为galstmi_obj3classification,则stm为软件组件名称,也为该sheet名称,y=i,则access为input。
39.具体实施时,signal type的检查规则为:检测软件接口表中physical range min(dec)-offset和physical range max(dec)-offset形成的区间是否跨过0,如跨过,则signal type定义为signed,反之,则signal type定义为unsigned,如不符合规则,则对应的单元格的背景标红。
40.这里,当physical range min(dec)-offset为负数,而physical range max(dec)-offset为正数时,则表示physical range min(dec)-offset和physical range max(dec)-offset形成的区间跨过0,否则表示没有跨过。
41.具体实施时,app type的检查规则为:所述app type可定义为uint8、uint16、uint32、boolean、float、double、fixdt(x,y,z)或fixdt(a,b,c,d)中任意一种。应符合以下规则,任意一项不符合,则对应的单元格的背景标红。
42.app type定义为uint8、uint16、uint32、boolean、float或double时,对应的signal type为unsigned。
43.app type定义为fixdt(x,y,z)时,x=0时表示无符号,对应的signal type为unsigned;x=1时表示有符号,对应的signal type为signed,对应offset为0;y表示数据位数,与对应的signal length(bits)数值相同;z表示精度,2的z次方分之1与对应的factor数值相同。
44.app type定义为fixed(a,b,c,d)时,a=0时表示无符号,对应的signal type为unsigned;a=1时表示有符号,对应的signal type为signed,对应的offset为0;b表示数据位数,与对应的signal length(bits)数值相同;c表示精度,与对应的factor数值相同;d表示偏移量,与对应的offset数值相同。
45.具体实施时,若任一sheet中对应接口的origin/destination中定义的为软件组件名称则采用接口相关性的检查规则进行检查,否则采用can信号输入/输出有效性的检查规则进行检查。
46.具体实施时,接口相关性的检查规则为:在signal name属性中提取name后到origin/destination中定义的软件组件中寻找相同name的信号,然后逐列对比两sheet的两接口对应的name in chinese、signal length、factor、offset、physical range、signal type、unit、description、initial value、invalid value和app type各项属性是否相同,如不相同,则对应的单元格的背景标红。
47.比如signal name属性为galstmi_obj3classification,那么根据signal name命名方式可知,其name为obj3classification,并且在该sheet中origin/destination属性为fus,access属性为input,从而可知该接口信号来源的软件组件名称为fus输出,则在fus对应sheet寻找name为obj3classification,在该sheet中signal name属性为galfus_obj3classification或galfuso_obj3classification,然后再对比两个sheet的两个接口对应的name in chinese、signal length、factor、offset、physical range、signal type、
unit、description、initial value、invalid value和app type各项属性是否相同,如不相同,则对应的单元格的背景标红。
48.具体实施时,can信号输入/输出有效性的检查规则为:在信号来源或去向的can网段和id中,寻找name相同的信号,如找不到,则寻找name in chinese相同的信号,若找到的name in chinese能完全匹配,则对应的单元格的背景标黄;若找到的name in chinese不能完全匹配,则对应的单元格的背景标红。
49.若找到的name in chinese能完全匹配,表示开发人员可能进行了信号名删减,背景标黄,提示开发人员人工检查若name in chinese不能完全匹配,表示开发人员使用的can信号在协议中未定义,背景标红。
50.背景标注的具体颜色可根据开发人员习惯进行设定,标黄和标红只是为了区分。
51.最后需要说明的是,本发明的上述实施例仅是为说明本发明所作的举例,而并非是对本发明实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其他不同形式的变化和变动。这里无法对所有的实施方式予以穷举。凡是属于本发明的技术方案所引申出的显而易见的变化或变动仍处于本发明的保护范围之列。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1