1. 简介:
autosar和uds的功能基本固定,如果购买协议栈实现,以DID 0100为例(cp 蓝色的会是协议栈根据配置生成的接口),会是下面的流程:
- 在配置工具中配置0100的DID,名称,长度,可读可写,会话限制,解锁限制,
- 工具生成对应接口(比如DID_0100_***(rtn, *data))
- 在接口中填写代码逻辑,比如读取数据, 然后将对应的数据填写到data中,rtn填回复的响应
- 协议栈自身会处理会话,解锁一些处理,并且将数据和回复进行打包回复
- 其他的服务类似,如果需要改动逻辑会生成接口,如果需要是协议栈内部处理在配置中直接关联即可
2. UDS服务开发
-
uds协议栈相关(3E&NRC&0x10&0x85&0x28&会话保持&解锁验证&时间参数等)
- 相关功能协议栈自己内部实现,按照不同项目的需求进行配置,配置完成以后基本不需改动
-
解锁相关(0x27)
- 配置后会生成对应的接口,然后需要将对应的解锁算法进行填充,协议栈会自身将对应的解锁等级和服务相关联。例如在协议栈配置2701/02解锁,再将该解锁等级关联到2E 01 01,2E 01 01就只会在2701/02验证通过才能实现写入。
-
功能触发(0x31)
- 31服务可以直接使用协议栈配置的接口实现
- 31服务通常很固定且变更少,使用协议栈配置以后基本不需要改动
- 31服务经常涉及到