服务定义和编辑只能够在CDDT里面进行,思路分为三步:
1、Protocol Services里面添加服务,定义服务的格式、请求和正负响应。
2、根据服务的功能归类到Diagnostic Class Tenplates
3、Variant里面的Supported Diagnostic Classes勾选
然后我们开始新建个服务
点击new填入想定义的信息

点击确定

起个名字

我们选择为子服务

这里要注意的是,子服务需要在text table里面的范围之内,不然会导致一致性检查不通过。如果你一定要把这个子服务加进来,那就需要切换成专家视图,把对应子服务添加到text table里面.

正负响应也是类似的
服务里面的default是给diva和CANoe的默认值,const一般给肯定响应来用,下图这里P2的话再肯定响应当中就是25。

新建好服务之后我们可以发现,used是no的,说明这个服务没有添加到Diagnostic Class Tenplates里面,require不用太在意,只要保持10和3E服务是yes就行,大多数情况下都是no的。

自己新建个Diagnostic Class,把刚才新建的服务加进去。

这时候我们新建出来的服务的used已经变成yes了

在Variant里面的Supported Diagnostic Classes勾选上就行

最后需要注意的是,在诊断类当中,服务为on才是开启的,off是不启用的。
