CANProtv3.docVIP

  • 1
  • 0
  • 约 10页
  • 2018-04-01 发布于北京
  • 举报
CANProtv3.docCANProtv3.docCANProtv3.doc

京金华(北京)科技有限公司 Tel:010 Fax:010PAGE PAGE 1 网址: 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)格式,0为标准帧(CAN2.0A),此处为扩展帧。 [00]:远程传输位,0-非RTR数据包,1-为RTR数据包,此处为非RTR包。 [00 00 00 00]:保留的4个数据字节,报文最后发送字节,在CAN-bus转串口时后两个字节可以作为CRC16校验字节。此处未使用。 一次发送40字节,就可以连续发送2帧报文 [0001000000080001020304050607010000000000][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口收到数据。

文档评论(0)

1亿VIP精品文档

相关文档