ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

CCP协议

CCP协议 CCP协议2021-11-12标定流程将标定数据保存在Flash中。在程序初始化过程中标定数据映射至RAM当中程序从RAM中调取数据。标定过程开始时在上位机中建立Flash存储区镜像并保存至HEX文件。标定过程中通过DNLOADDNLOAD_6等命令修改RAM中数据实现在线标定更新上位机Hex。标定结束后将更新后的数据一次性写入Flash。重启控制器将新的标定数据映射值RAM中。数据CCP协议是在应用层也就是使用CAN的数据帧来传递命令分为CRO(主设备向从设备发送)和DTO(从设备向主设备发送)CRO数据帧CRO命令的第一个字节为CMD命令代码命令表一共有28条命令CRO命令的第二个字节为CTR命令计数器由上位机计数CRO命令的剩余六个字节为命令参数每个命令有不同参数DTO数据帧CRM类型用于反馈CRO命令的报文第一个字节为PID表示类型CRM类型为0xff第二个ERR字节表示错误类别命令返回码表一共有18条命令0x00是无错误CRM类型就对应0x00第三个CTR字节表示回答的哪条CRO命令两者的CTR要对应起来剩余的五个字节为参数Event Message类型用于反馈错误的报文第一个字节为PID表示类型EM类型为0xfe第二个ERR字节表示错误类别命令返回码表一共有18条命令0x00是无错误EM类型对应命令返回码表除0x00的剩余17条命令第三个CTR字节表示回答的哪条CRO命令两者的CTR要对应起来剩余的五个字节为参数DAQ类型用于定期反馈数据第一个字节为PID0≤ PID ≤253PID的值与ODT的编号值有关系剩余的七个字节为数据工作模式Polling模式查询主设备与从设备间每一次通信都由主设备发送命令来起始从设备收到主设备命令后执行相应操作并反馈一帧报文处理过程获取并解读主设备的CCP命令并执行该命令命令执行完后向主设备发送应答若执行出错应答中应包含向主设备报错的信息若主设备命令要求对DAQ进行操作则该操作传送给DAQ处理器处理由DAQ处理器完成DAQ操作。DAQ模式固定上报主设备首先发送一条请求DAQ命令从设备收到后按命令中参数自行配置并组织需要上传数据然后按一定周期自主向主设备上传数据处理过程DAQ传送的数据由一系列的表来组织这些表称为ODT。ODT作用是将存储器中的数据元素被分配到列表中。 该表保存每个元素的地址、地址扩展和长度ODT是有顺序的。当DAQ机制启动后按设定的周期将每个ODT表描述的参数当前的值顺次放入相应的DAQ-DTO帧中然后发送给上位机ODT创建方法清除 ECU 中的当前列表并通过发送命令 GET_DAQ_SIZE 让 ECU 为一个 DAQ 列表分配内存。在 GET_DAQ_SIZE 命令之后ECU 报告当前 DAQ 列表中 ODT 的可用内存。循环发送SET_DAQ_PTR 命令参数为 DAQ 列表号、ODT 号、ODT 中的元素号WRITE_DAQ命令参数为元素大小、地址扩展、32 位基地址直到 ODT 完成初始化 DAQ-DTO 的传输发出 START_STOP 命令。错误句柄错误处理框图错误类别及处理示例工作流程会话登陆(Session log-in )连接-确认版本-交换标识-获取密钥-解锁-设置会话状态下载块(Block DownLoad )连接-将块的内存地址传入-下载块上载块(Block UpLoad )连接-将块的内存地址传入-上载块校准数据初始化(Calibration Data Initialization )DAQ列表初始化(DAQ List Initialization )代码升级(Code Update )命令说明ConnectCRO数据帧DTO数据帧EXCHANGE_ID(Exchange Station Identifications)CRO数据帧DTO数据帧GET_SEED (Get Seed for Key )CRO数据帧DTO数据帧UNLOCK(Unlock Protection)CRO数据帧DTO数据帧SET_MTA(Set Memory Transfer Address )CRO数据帧DTO数据帧DNLOAD(Data Download )CRO数据帧DTO数据帧DNLOAD_6(Data Download 6 Bytes)CRO数据帧DTO数据帧UPLOAD(Data Upload )CRO数据帧DTO数据帧SHORT_UP(Short Upload)CRO数据帧DTO数据帧SELECT_CAL_PAGE(Select Calibration Data Page)CRO数据帧DTO数据帧GET_DAQ_SIZE(Get Size of DAQ list)CRO数据帧DTO数据帧SET_DAQ_PTR(Set DAQ list pointer)CRO数据帧DTO数据帧WRITE_DAQ(Write DAQ list entry)CRO数据帧DTO数据帧START_STOP (Start / Stop Data transmission )CRO数据帧DTO数据帧DISCONNECT (Disconnect)CRO数据帧DTO数据帧SET_S_STATUS(Set Session Status)CRO数据帧DTO数据帧状态GET_S_STATUS (Get Session Status )CRO数据帧DTO数据帧BUILD_CHKSUM (Build Checksum )CRO数据帧DTO数据帧CLEAR_MEMORY (Clear Memory)CRO数据帧DTO数据帧PROGRAM (Program)CRO数据帧DTO数据帧PROGRAM_6 (Program 6 Bytes )CRO数据帧DTO数据帧MOVE (Move memory block )CRO数据帧DTO数据帧DIAG_SERVICE (Diagnostic Service )CRO数据帧DTO数据帧ACTION_SERVICE (Action Service )CRO数据帧DTO数据帧TEST (Test Availability )CRO数据帧DTO数据帧START_STOP_ALL (Start / Stop Synchronised Data transmission )CRO数据帧DTO数据帧GET_ACTIVE_CAL_PAGE (Get currently active Calibration Page )CRO数据帧DTO数据帧GET_CCP_VERSION (Get implemented Version of CCP )CRO数据帧DTO数据帧
返回列表