目录
9.2.1 诊断会话控制(DiagnosticSessionControl)(10hex)服务
9.2.2 ECU 复位(ECUReset)(11hex)服务
9.2.3 安全访问(SecurityAccess)(27hex)服务
9.2.4 通信控制服务(CommunicationControl)(28hex)
9.2.5 诊断仪在线服务(TesterPresent)(3E hex)
9.2.6 安全数据传输服务(SecuredDataTransmission)(84 hex)
9.2.7 控制故障码信息设置服务(ControlDTCSetting)(85 hex)
9.2.8 基于事件应答服务(ResponseOnEvent)(86 hex)
9.2.9 链路控制(LinkControl)(87 hex)服务
9.3.1 通过标识符读数据服务(ReadDataByIdentifier)(22hex)
9.3.2 通过地址读内存(ReadMemoryByAddress)(23 hex)
9.3.3 通过标识符读取换算数据(ReadScalingDataByIdentifier)(24hex)
9.3.4 通过周期的标识读数据(ReadDataByPeriodicIdentifier)(2Ahex)
9.3.5 动态定义数据标识(DynamicallyDefineDataIdentifier)(0x2C)服务
9.3.6 通过标识写数据服务(WriteDataByIdentifier)(0x2E)
9.3.7 通过地址写内存服务(WriteMemoryByAddress)(0x3D)
9.4.1 读故障码信息服务(ReadDTCInformation)(19 hex)
9.4.2 清故障码信息服务(ClearDiagnosticInformation)(0x14)
9.5.1 输入输出控制标识服务(InputOutputControlByIdentifier)(0x2F)
9.6.1 例程控制服务(RoutineControl)(0x31)
9.7.1 请求下载服务(RequestDownload)(0x34)
9.7.2 请求上传服务(RequestUpload)(0x35)
9.7.3 传输数据服务(TransferData)(0x36)
9.7.4 请求传输退出服务(RequestTransferExit)(0x37)
9 诊断服务实施 (15765-3and14229-1)
9.1 统一诊断服务总览
该部分定义了 ISO 14229-1 定义的诊断服务是如何适用于 CAN 的。对于每一个应用服务,都定义了可用的子功能及数据参数。
注意:子功能参数的定义考虑了 suppressPosRspMsgIndicatonBit 参数的最高有效位。该参数在 ISO 14229-1 中定义。
表 26 用于提供所有统一诊断服务的总览,它们适用于 CAN 诊断实施,表包含了可用服务总数。使用该部分ISO 15765 协议实施 CAN 诊断的某些应用上可能限制了可使用服务的数量, 并可将它们按应用范围/诊断会话(默认会话,编程会话等)进行归类。
Cvt所代表的含义:
9.2 诊断与通信控制功能单元
9.2.1 诊断会话控制(DiagnosticSessionControl)(10hex)服务
表 27 定义了适用于 CAN 诊断服务的子功能参数
01:默认会话
02:编程会话
03:扩展会话
表 28 和 29 定义了应答信息数据参数结构,sessionParameterRecord 适用于 CAN 诊断实施。
上表中的两个参数是在服务器发送诊断会话控制(如10 01)后服务器回复给诊断仪的,响应格式是类似 50 01 xx xx yy yy 这种, xx xx 就表示 P2Server_max,yy yy 就表示 P2*Server_max。诊断仪收到这两个参数之后,就对 ECU 的响应速度有了认知,可以据此来判断 ECU 的响应是否及时
会话状态转移图:只能从扩展模式进入编程模式,为什么要这么设置呢?在刷写流程里有提到。
诊断会话模式的状态转移图说明