本帖最后由 uuguoleilei 于 2023-12-4 21:07 编辑
#技术资源# #申请原创# #有奖活动# #每日话题#
can通信的UDS功能是车辆进行软件升级必不可少的一项功能,UDS的有许多的服务,有需要详细了解的朋友可以自行查看14229国标;这里主要探讨UDS升级涉及到的服务;
一、UDS功能寻址和物理寻址
UDS的功能寻址和物理寻址是实现人或设备与ECU控制器交流的一种语言。这两种寻址方式在UDS协议中用于确定数据包应该被发送到网络中的哪个节点或设备。
功能寻址是一对多的通信或广播方式,向执行特定功能的所有设备发送数据包,无需知道每个设备的具体物理地址。比如广播诊断请求Request,同时等待总线上的ECU给与响应。物理寻址是一对一的通信方式,直接将数据包发送至具有特定物理地址的设备,如特定的ECU。指定发送特定诊断请求Request,等待指定ECU给与响应。
ECU会有一个物理ID:0x666,一个自己的功能ID:0x888;
二、10服务
10服务有很多,在14229中也有详细的定义,我们只讲我们用到的3种;
默认会话是uds的初始化的状态,默认的状态就是这个会话,
默认会话的请求只需要发送 ID+10 01 对应的ecu就要进入默认会话了;
ecu进入默认会话后,需要进行正响应,也就是响应ID+50 01;(正响应是服务ID+0x40 :0x10 +0x40 = 0x50)
编程会话:只存在于boot中的会话,当请求编程会话时,如果此时程序正运行在app层,那么ecu将要重启,进入到boot区进行程序的刷写流程
扩展会话:当需要进入服务指令时,就需要进入扩展会话状态,比如31服务,19服务
--------------------------------------------------------------------------------------------------------
|
奖励200家园币