CCP 通信流程.doc
上传人:sy****28 上传时间:2024-09-13 格式:DOC 页数:7 大小:23KB 金币:14 举报 版权申诉
预览加载中,请您耐心等待几秒...

CCP 通信流程.doc

CCP通信流程.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

14 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

概述CCP通信按信息传输方式分为:POLLING(问答)和DAQ方式;按功能模式分为以下三种:?SESSION(会话)?CAL(标定)?DAQ(查询)工作流程是:程序初始化完成后,通过SET_S_STATE设置节点当前工作状态(Session/CAL/DAQ),若触发CAL和DAQ,需要在初始化时对该功能初始化。正常情况下设置为会话模式(SESSION),需要CAL和DAQ时再初始化。多ECU组网工作时,不仅需要调用SET_S_STATE设置单节点工作状态,还需调用CONNECT和DISCONNECT在多个ECU间切换工作。从错误代码处理流程图上也可以看出CCP通信协议的分为这四大模块,初始化、会话、标定、DAQ数据传输。问题问题一:初始化SEED和UNLOCK解码成功后对SESSION、CAL和DAQ权限是否有效?初始化时首先需要对三种功能及权限查询,若有功能无权限需要分别发送SEED和UNLOCK获得对应功能的权限。问题二:SESSION、CAL和DAQ三种状态设置方式?三种状态并行兼容工作。问题三:error任务的处理方式检测?上位机驱动编写不好容易造成故障遗失可以借鉴下位机错误代码。一、初始化应用程序完成CANDriver初始化后,调用CCP功能前需要对其进行初始化,按顺序包括以下工作:命令TEST物理意义物理连接备注测试是否物理连接建立起来,返回ECU的stationaddress。因为该命令在可选命令中,所以介绍文档中没有介绍(可选)建立点对点(master-slave)的物理链接,声明接下来的命令都时针对当前从节点发送的,至到另一从节点被选中,此时当前的节点处于暂时断开状态。从设备不相应任何指令除非先用带正确stationaddress信息的CONNECT命令链接。Plug&Play协议三原则:大版本号一定要相同;小版本号主节点大于等于从节点。主节点支持有Non-Optional命令(初始化)MCS调用包含ECU软件版本信息文件与ECU软件信息版本的匹配,识别。返回参数包括ID长度,ID加密style及CAL、DAQ、PGM功能状态及权限。EXCHANGE_ID执行完后,自动将MTA0设置到相关位置,接到该命令后返回SEED,用来加密交互。与SEED和加密style配合,计算出Key,返回功能权限信息,三种权限CAL、DAQ及PGM需要三次破解。设置ECU内CCP通信状态,一般进入等待状态。bit0bit1bit2bit6bit7CAL初始化完成DAQ初始化完成保存DAQlist设置,上电开始传输CAL参数掉电不丢失SessioninprogressCONNECT通信连接GET_CCP_VERSION版本校验EXCHANGE_ID交换IDGET_SEED获取SEEDUNLOCK发送KEY解锁SET_S_STATUS设置状态位解锁完成后,依据任务的分配,系统工作状态可以设置为以下三种状态:?等待会话状态,接收命令,触发命令操作;?继续初始化CAL和DAQ,例如:设置DAQ掉电不丢失,上电自动传输,此时需要设置为DAQ初始化完成状态;?DISCONNECT,休眠当前节点。多ECU并行工作时,初始化时把所有节点都初始化,断开连接把每个ECU设置为休眠状态,通过CONNECT再唤醒具体ECU,多ECU切换工作。单节点工作时可以不需要此命令,直接进入某种工作状态。会话、、标定、查询三种状态设置存在可靠性,优先定义为会话状态,工作顺序测试结果开始不能建立通信连接CONNECTECUStationAddress无权限权限EXCHANGED_IDPGM/CAL/DAQ权限检验解密失败权限保护GET_SEED&UNLOCK权限获取,循环,CAL/PRG/DAQ不匹配子IDUPLOAD子节点名称读取不匹配版本校验GET_CCP_Version通信协议版本兼容性校验读取失败读取初始参数GET_ACTIVE_CAL_PageSET_MAT&UPLOAD参数初始化设置失败设置会话状态SET_S_STATUS设置会话状态与标定参数操作初始化中断结束二、会话状态会话状态主要定义具体应用协议,接受具体代码,执行相关命令,返回结果数据。典型函数两条:ACTION_SERVICE:行动响应(ActionService)DIAG_SERVICE:诊断服务(DiagnosticService)都是先发送协议命令,从节点接收到命令信息后按照执行具体行动⒆远柚肕TA0到要返回的数据存储首地址,通过DTO带回要返回信息长度。信息量大时