1、2数据传输对象(DTO)数据传输对象(DTO)指由从设备反馈的报文。DTO根据报文首字节PID的值可以由三种形式,见表2:表2:PID值数据传输类型备注0xFFCRM(Command Return Message)由从设备发送,反馈CRO命令的报文0xFEEvent Message当从设备检测到部发生错误机制时,由从设备自行向主设备发送,报告其当前的运行状态,并请求主设备暂停当前工作进程以处理发生的错误0-0xFDDAQ-DTO(Data Acquisition-DTO)用于DAQ模式,由从设备定期向主设备发送。根据对象描述表(ODT),确定需要上传的变量(1). CRM和Event Mess
2、age的报文帧如图2所示:图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)的报文帧:3. 协议命令列表及说明(标注绿色字体部分逐步补充完整)3.1 命令列表:命令名称代码说明CONNECT0x01创建一个ECU的连接SET_MTA0x02设置MTA地址DNLOAD0x03下载最多5个字节数据到ECUDNLOAD_60x23下载6个字节数
3、据到ECUUPLOAD0x04从ECU上载最多5个字节数据SHORT_UP0x0F从ECU上载最多5个数据(不用MTA)DISCONNECT0x07断开到该ECU的连接GET_DAQ_SIZE0x14得到指定DAQ列表大小SET_DAQ_PTR0x15选中某指定DAQ列表中某ODT的某元素WRITE_DAQ0x16设定该元素指定的地址START_STOP0x06开始/停止采集指定的DAQ列表EXCHANGE_ID0x17得到该ECU的标识符GET_SEED0x12得到计算密钥的种子(SEED)UNLOCK0x13要求ECU释放某种功能SET_S_STATUS0x0C设置当前会话状态GET_S_
4、STATUS0x0D得到当前会话状态BUILD_CHKSUM0x0E计算指定区域的校验和CLEAR_MEMORY0x10清除某存区域PROGRAM0x18FLASH编程(最多5个字节)PROGRAM_60x22FLASH编程(6个字节)MOVE0x19从MTA0处拷贝指定长度的字节到MTA1处TEST0x05测试当前在线的从设备GET_ACTIVE_CAL_PAGE0x09得到当前标定页(RAM or FLASH)DIAG_SERVICE0x20ACTION_SERVICE0x213.2命令返回错误代码描述种类状态改变0x00正确接收,无错误DAQ处理器过载命令处理器忙0x11DAQ处理器忙。
5、待续3.3命令详细说明3.3.1 CONNECT命令:命令接收对象(CRO):位(bit)数据类型字节命令代码(0x01)1命令计数器2字站地址4-7填0(不关心)数据传送对象(DTO):命令代码(0xFF)命令返回代码3-73.3.2 SET_MTA命令:命令代码(0x02)存贮器传输地址(MTA0,MTA1)3地址扩展无符号长整形地址3.3.3 DNLOAD命令:命令代码(0x03)需下传的数据长度数据MTA0扩展位执行后MTA0地址(即地址加上长度)3.3.4 UPLOAD命令:命令代码(0x04)需上传的数据长度填0上传的数据3.3.5 SHORT UPLOAD命令:命令代码(0x0F
6、)3.3.6 DISCONNECT命令:命令代码(0x07)0x00 暂时断开, 0x01 断开不关心4-5站地址(低位在前)6-73.3.7 GET_DAQ_SIZE命令:命令代码(0x14)DAQ表号(0,1)CAN 识别号(可选,暂不使用)该DAQ列表中ODT的数目4该列表中第一个ODT表PID值5-73.3.8 SET_DAQ_PTR命令:命令代码(0x15)QDT表号(0,1)ODT表里的元素(0,1)3.3.9 WTITE_DAQ命令:命令代码(0x16)DAQ表中元素的长度(1,2,4)表中元素的扩展地址表中元素的地址3.3.10 START-STOP命令:命令代码(0x06)停止:0x00;启动:0x01;准备:DAQ 列表数该DAQ列表中最后一ODT表数5触发事件数发送速率分频系数3.3.11 CLEAR_MEMORY命令:命令代码(0x10)1-7命令返回
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1