服务定义和编辑只能够在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是不启用的。