CAN标定协议(基于.ccp标准)_第1页
CAN标定协议(基于.ccp标准)_第2页
CAN标定协议(基于.ccp标准)_第3页
CAN标定协议(基于.ccp标准)_第4页
CAN标定协议(基于.ccp标准)_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 . CAN通信标定协议(基于ccp协议)一、协议简介该通信协议采用主-从式通信方式,主设备通过CAN总线与多台从设备相连接,主设备是测量标定系统,从设备是需要标定的ECU,主设备首先与其中一个从设备建立逻辑, 建立逻辑连接后,主、从设备之间所有的数据传递均由主机控制,从设备执行主设备命令后返回包含命令响应值或错误代码等信息的报文,同时从设备可以根据主设备通过控制命令所设置的列表信息,来定时地向主设备传送变量信息,数据的传递是由主设备初始化并且由从设备来执行的,并且是由固定的循环采样频率或者事件触发的。主设备通过USB-CAN接口与从设备连接,符合CAN2.0协议。通信过程中,所有报文均为8个

2、字节,它可以包含命令、数据、数据长度、地址等信息。 该通信协议参照ccp协议,可以与INCA,CANape等标定软件接口。 二、通信数据对象CAN通信采用了两个报文数据对象CRO(命令接收对象)和DTO(命令发送对象),每个对象根据其数据流向,都有一个唯一的ID标志符进行标识,ID标识符可以由用户自行设定。1命令接收对象 (CRO)命令接收对象(CRO)用于传递指令代码和部功能码或主、从设备之间交换的存储区数据,对应的报文帧如图1所示,表1位场说明: Parameter and Data FieldByte 0 1234567CMDCTR图1 CRO数据格式表1CMD (1 Byte):命令代

3、码。CTR (1 Byte):命令计数器。Parameter and Data(6 Byte):参数和数据场,命令相关的数据或参数2数据传输对象(DTO)数据传输对象(DTO)指由从设备反馈的报文。DTO根据报文首字节PID的值可以由三种形式,见表2:表2:PID值数据传输类型备注0xFFCRM(CommandReturn Message)由从设备发送,反馈CRO命令的报文0xFEEvent Message当从设备检测到部发生错误机制时,由从设备自行向主设备发送,报告其当前的运行状态,并请求主设备暂停当前工作进程以处理发生的错误0-0xFDDAQ-DTO(Data Acquisition-DT

4、O)用于DAQ模式,由从设备定期向主设备发送。根据对象描述表(ODT),确定需要上传的变量(1). CRM和Event Message的报文帧如图2所示:Byte 0 1234567Parameter and Data FieldPIDERRCTR图2 CRM-Event Message报文帧格式表3:场说明PID(1 Byte)其值代表了DTO的类型ERR(1 Byte)命令返回错误代码CTR(1 Byte)命令计数器,与接收的相等。Parameter and Data Field参数和数据场,命令相关的数据或参数 (2). DAQ-DTO(Data Acquisition-DTO)的报文帧

5、:Byte 0 1234567Data Field(DAQ Values)PID3. 协议命令列表与说明(标注绿色字体部分逐步补充完整)3.1 命令列表:命令名称代码说明CONNECT0x01创建一个ECU的连接SET_MTA0x02设置MTA地址DNLOAD0x03下载最多5个字节数据到ECUDNLOAD_60x23下载6个字节数据到ECUUPLOAD0x04从ECU上载最多5个字节数据SHORT_UP0x0F从ECU上载最多5个数据(不用MTA)DISCONNECT0x07断开到该ECU的连接GET_DAQ_SIZE0x14得到指定DAQ列表大小SET_DAQ_PTR0x15选中某指定DA

6、Q列表中某ODT的某元素WRITE_DAQ0x16设定该元素指定的地址START_STOP0x06开始/停止采集指定的DAQ列表EXCHANGE_ID0x17得到该ECU的标识符GET_SEED0x12得到计算密钥的种子(SEED)UNLOCK0x13要求ECU释放某种功能SET_S_STATUS0x0C设置当前会话状态GET_S_STATUS0x0D得到当前会话状态BUILD_CHKSUM0x0E计算指定区域的校验和CLEAR_MEMORY0x10清除某存区域PROGRAM0x18FLASH编程(最多5个字节)PROGRAM_60x22FLASH编程(6个字节)MOVE0x19从MTA0处拷

7、贝指定长度的字节到MTA1处TEST0x05测试当前在线的从设备GET_ACTIVE_CAL_PAGE0x09得到当前标定页(RAM or FLASH)DIAG_SERVICE0x20ACTION_SERVICE0x213.2命令返回错误代码代码描述种类状态改变0x00正确接收,无错误0x01DAQ处理器过载0x10命令处理器忙0x11DAQ处理器忙。待续3.3命令详细说明3.3.1CONNECT命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x01)1字节命令计数器2字站地址4-7字节填0(不关心)数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xF

8、F)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.2SET_MTA命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x02)1字节命令计数器2字节存贮器传输地址(MTA0,MTA1)3字节地址扩展4-7无符号长整形地址数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.3DNLOAD命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x03)1字节命令计数器2字节需下传的数据长度3-7字节数据数据传送对象(DTO):位(bit)数据类型描述0字节

9、命令代码(0xFF)1字节命令返回代码2字节命令计数器3字节MTA0扩展位4-7字节执行后MTA0地址(即地址加上长度)3.3.4UPLOAD命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x04)1字节命令计数器2字节需上传的数据长度3-7字节填0数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节上传的数据3.3.5 SHORT UPLOAD命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x0F)1字节命令计数器2字节需上传的数据长度3字节地址扩展4-7字节地址数据传送对象(D

10、TO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节上传的数据3.3.6 DISCONNECT命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x07)1字节命令计数器2字节0x00 暂时断开, 0x01 断开3字节不关心4-5字节站地址(低位在前)6-7字节填0(不关心)数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.7 GET_DAQ_SIZE命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x14)1字节

11、命令计数器2字节DAQ表号(0,1)3字节填0(不关心)4-7字节CAN 识别号(可选,暂不使用)数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3字节该DAQ列表中ODT的数目4字节该列表中第一个ODT表PID值5-7字节填0(不关心)3.3.8 SET_DAQ_PTR命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x15)1字节命令计数器2字节DAQ表号(0,1)3字节QDT表号(0,1)4字节ODT表里的元素(0,1)5-7字节填0(不关心)数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(

12、0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.9 WTITE_DAQ命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x16)1字节命令计数器2字节DAQ表中元素的长度(1,2,4)3字节表中元素的扩展地址4-7字节表中元素的地址数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.10 START-STOP命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x06)1字节命令计数器2字节停止:0x00;启动:0x01;准备:0x023字

13、节DAQ 列表数4字节该DAQ列表中最后一ODT表数5字节触发事件数6-7字发送速率分频系数数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.11CLEAR_MEMORY命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x10)1-7字节填0(不关心)数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)3.3.12PROGRAM命令:命令接收对象(CRO):位(bit)数据类型描述0字节命令代码(0x18

14、)1-7字节填0(不关心)数据传送对象(DTO):位(bit)数据类型描述0字节命令代码(0xFF)1字节命令返回代码2字节命令计数器3-7字节填0(不关心)4、标定实现(举例)建立完善的匹配标定具体流程为:与底层ECU进行连接,监控、在线标定,上载和下载map图,断开连接等操作。对于匹配标定的2个最主要的任务,就是在线标定和实时监控,它是通过协议命令的组合,来实现的,下面举例说明如何实现:4.1 监控命令解析:(假设有nDAQ列表,每列表中有mODT表)序号上位机CCPCAN备注1设置监控变量列表,选择采样速率(.A2L)2GET_DAQ_SIZE发送重复n次3CRM-DTO接收重复n次4SET_DAQ_PTR发送list0list m-15CRM-DTO接收list0list m-16WRITE_DAQ发送list0list m-17CRM-DTO接收list0list m-18START_STO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论