1、CAN-bus帧转换模式.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1、CAN-bus帧转换模式

CAN数据包模式编程说明 CAN-bus帧转换模式 设备CAN-bus端口支持流传输模式和CAN数据包两种转换模式 CAN数据包采用特定的数据报文的形式,实现CAN-bus与以太网或串口之间的数据传输,此模式采用20字节定长数据报文传输数据,封装了所有的CAN-bus 2.0A/B报文信息,并且采用帧对帧转换传输模式,符合CAN-bus工作特性,实时性极好。 流传输模式从以太网或串口接收到的任意格式的原始数据,将自动以8个字节为单位,自动打包成CAN-bus 2.0B数据帧发送到CAN-bus,CAN ID由设备配置参数决定,如果不足8个字节,则按照实际数据长度填充CAN-bus帧。 从CAN-bus接收到的数据,只传输1-8字节的CAN-bus数据区数据到以太网或串口,不传输CAN ID等其他数据。此模式用于传输RS232/RS485通讯协议。 用户可以通过Telnet或RS232管理口,将CAN-bus端口设置为CAN包传输模式。管理口参数为:9600bps,8数据位,1停止位,无校验,无流控。可以使用超级终端直接打开并登录到设备进行管理。 通讯接口 CAN-bus转以太网通讯方式 上位机软件通过Socket规范与设备直接建立TCP/IP连接,在成功建立TCP/IP连接后,上位机与设备就可以进行双向数据通讯。 设备支持TCP/IP Server、Client两种工作模式,默认工作在Server模式,设备监听TCP/IP 6020-6023端口,等待连接。 使用Socket TCP/IP方式时,建议开启KeepAlive功能,并设置断线检测为10秒,这样就可以快速检测出线路的物理中断。 CAN-bus转串口通讯方式 CAN-bus转串口设备(或模式)直接使用设备的硬件串口实现CAN-bus与串口之间的数据交换。 在CAN-bus端口使用CAN包传输模式时,采用20字节定长数据报文传输数据,数据传输采用存储转发方式工作,设备收到一帧或几帧串口数据后,在达到指定超时而没有新数据到来时,将数据转发到CAN-bus。 用户可以一次发送一帧或几帧数据到串口,然后等待一个超时时间,设备就会将存储的数据转发到CAN-bus。此超时时间可以根据需要进行设置。 设备最多可存储50帧1000个字节的串口至CAN-bus报文数据。 虚拟串口通讯方式 在使用CAN-bus转TCP/IP产品(或模式)时,可以使用VSPM虚拟串口软件,将设备CAN-bus端口对应的TCP/IP端口映射成本机的虚拟COM口,使用传统串口调试工具,就可以进行CAN-bus总线通讯调试。 也可以使用传统的串口编程方式进行应用开发,可以避免编写复杂的网络通讯代码。 其通讯方式与CAN-bus转串口通讯方式相同。 通讯报文 通过TCP/IP或串口发送数据到CAN-bus 发送报文:[00] [08] [0001020304050607] [01] [00] 报文说明: [00]:CAN端口索引,报文的第1个发送字节,发送时忽略。 [01 00 00 00]:发送的CAN ID,低位字节在前首先发送,此处为01。 [08]:此CAN数据包中的CAN数据区长度(最大8个字节),此处为8个字节。 [01 02 03 04 05 06 07 08]:8个字节的CAN数据区数据,如果上面的数据长度不足8个字节,可以用任意数据填充剩余字节,确保整帧报文为20字节。 [01]:1为扩展帧(CAN2.0B)01000000080001020304050607010000000000][000100000008A0A1A2A3A4A5A6A7010000000000] 通过TCP/IP或串口接收CAN-bus数据 收到报文:[01] [08] [0001020304050607] [01] [00] 报文说明: [01]:从B口收到的数据,0-3对应A-D四个CAN-bus端口,为报文接收到的第1个字节,如果是单口CAN-bus转以太网设备,或CAN-bus转串口设备,一直为00。此处为01,说明从B口收到数据。 [01 00 00 00]:接收到的CAN ID(低位字节在前,高位在后)。此处为01。 [08]:此CAN数据包中的CAN数据区长度(最大8个字节),此处为8个字节。 [01 02 03 04 05 06 07 08]:8个字节的CAN数据区数据。 [01]:1为扩展帧(CAN2.0B) CAN ID详解 CAN ID为4个字节的无符号长整型数据(32位),遵循无符号长整型数据类型内存布局,即低位字节在前,高位字节在后。CAN2.0A使用id的低11位,CAN2.

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档