关于ZLG USBCAN-I 转换模块 使用的疑惑
硬件:USBCAN-Ⅰ智能CAN接口模块<br />软件:通用CAN测试工具ZLGCANTest V1.49 <br /><br />在设计测试过程中,用USBCAN-I监视CAN总线的数据.<br />测试条件: 1)USBCAN-I、被测节点 CAN总线物理长度不超过25米<br /> 2)波特率:250Kbps<br /><br />应用情况一:USBCAN-I模块 总线上共9个CAN节点(含USBCAN-I本身),测试对象为8个CAN节点,该待测对象以每 1秒钟 发送一帧的CAN标准数据帧(数据场为1字节)。ZLGCANTest软件显示:<br />序号 传输方向 第几路CAN 时间标识 帧ID 帧格式 帧类型 数据<br />0x00000001 接收 0 0x00707b9d 0x00000720 数据帧 标准帧 05 <br />0x00000002 接收 0 0x00707da8 0x00000722 数据帧 标准帧 05 <br />0x00000003 接收 0 0x007085be 0x00000729 数据帧 标准帧 05 <br />0x00000004 接收 0 0x0070863e 0x0000072e 数据帧 标准帧 05 <br />0x00000005 接收 0 0x007086f2 0x00000721 数据帧 标准帧 05 <br />0x00000006 接收 0 0x007089c7 0x00000728 数据帧 标准帧 05 <br />0x00000007 接收 0 0x00708da5 0x0000072d 数据帧 标准帧 05 <br />0x00000008 接收 0 0x00709a52 0x00000727 数据帧 标准帧 05 <br /><br />0x00000009 接收 0 0x0070a3de 0x00000720 数据帧 标准帧 05 <br />0x0000000a 接收 0 0x0070a5e0 0x00000722 数据帧 标准帧 05 <br />0x0000000b 接收 0 0x0070adff 0x00000729 数据帧 标准帧 05 <br />0x0000000c 接收 0 0x0070ae76 0x0000072e 数据帧 标准帧 05 <br />0x0000000d 接收 0 0x0070af33 0x00000721 数据帧 标准帧 05 <br />0x0000000e 接收 0 0x0070b1ff 0x00000728 数据帧 标准帧 05 <br />0x0000000f 接收 0 0x0070b5e7 0x0000072d 数据帧 标准帧 05 <br />0x00000010 接收 0 0x0070c28a 0x00000727 数据帧 标准帧 05 <br />由ID号 0x722可知,其发送时间周期: (0x0070A5E0-0x00707da8) = 0x283B<br />即10299 (时间单位为0.1mS)。也就是基本符合预期1秒钟。应用情况二
USBCAN-I模块 总线上共17个CAN节点(含USBCAN-I本身),测试对象为16个CAN节点,该待测对象以每10秒钟发送一帧的CAN标准数据帧(数据场为1字节)。<br />每一个测试对象上的MCU软件都相同(且与应用情况一相同),此处只是增加CAN总线上的节点。<br />(测试过程不关心CAN帧内数据值)<br />ZLGCANTest软件显示:<br />序号 传输方向 第几路CAN 时间标识 帧ID 帧格式 帧类型 数据<br />0x00000001 接收 0 0x01291f49 0x00000729 数据帧 标准帧 00 <br />0x00000002 接收 0 0x01292020 0x0000072b 数据帧 标准帧 00 <br />0x00000003 接收 0 0x0129206b 0x00000729 数据帧 标准帧 00 <br />0x00000004 接收 0 0x01292088 0x00000720 数据帧 标准帧 00 <br />0x00000005 接收 0 0x012920c8 0x00000724 数据帧 标准帧 00 <br />0x00000006 接收 0 0x012920ed 0x0000072f 数据帧 标准帧 00 <br />0x00000007 接收 0 0x0129219a 0x00000720 数据帧 标准帧 00 <br />0x00000008 接收 0 0x012921e0 0x0000072e 数据帧 标准帧 00 <br />0x00000009 接收 0 0x0129220e 0x00000728 数据帧 标准帧 00 <br />0x0000000a 接收 0 0x01292233 0x0000072d 数据帧 标准帧 00 <br />0x0000000b 接收 0 0x0129479e 0x0000072a 数据帧 标准帧 00 <br />0x0000000c 接收 0 0x012947bd 0x00000723 数据帧 标准帧 00 <br />0x0000000d 接收 0 0x012947d7 0x00000727 数据帧 标准帧 00 <br />0x0000000e 接收 0 0x01294841 0x0000072d 数据帧 标准帧 00 <br />0x0000000f 接收 0 0x0129484c 0x00000729 数据帧 标准帧 00 <br />0x00000010 接收 0 0x012948c5 0x00000725 数据帧 标准帧 00 <br /><br />以节点0x00000720为例,时间:0x0129219a-0x01292088= 0x112 (274mS)<br /><br />明显与《应用情况一》的结果不符。<br />疑问:产生2种情况,USBCAN-I监测数据(主要是每个节点的发送数据周期)的不同,是由于什么原因引起?<br /> 可能:1)节点的CAN驱动能力?但16个被测节点时,USBCAN-I也能收到16个不同的ID帧(当然,周期变得不是预期值)<br /> 2)USBCAN-I模块的处理能力?不清楚ZLG是否做过相关测试,有使用的同行指教一下。<br /> 3)ZLGCANTest软件的问题?应用前提: 被测节点 的 识别
被测CAN节点,以周期地发送自身ID号的CAN数据帧来识别<br /><br />一个CAN节点只发送其自身编号的ID帧。“时间标识”为CAN报文进入CAN控制器缓冲区时,由板载处理
为其增加的一个数值。此值可信。<br /><br /> 建议通过示波器判断是否是多个测试节点发生了仲裁丢失。
页:
[1]