CAN编程接口说明.doc

上传人:天*** 文档编号:1341127 上传时间:2019-02-09 格式:DOC 页数:3 大小:52KB
下载 相关 举报
CAN编程接口说明.doc_第1页
第1页 / 共3页
CAN编程接口说明.doc_第2页
第2页 / 共3页
CAN编程接口说明.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、京金华(北京)科技有限公司 Tel:010-62568703 Fax:010-62568570网址:http:/1CAN数据包模式编程说明1、 CAN-bus 帧转换模式设备 CAN-bus端口支持和两种转换模式 采用特定的数据报文的形式,实现 CAN-bus与以太网或串口之间的数据传输,此模式采用 20字节定长数据报文传输数据,封装了所有的 CAN-bus 2.0A/B报文信息,并且采用帧对帧转换传输模式,符合 CAN-bus工作特性,实时性极好。 从以太网或串口接收到的任意格式的原始数据,将自动以 8个字节为单位,自动打包成 CAN-bus 2.0B数据帧发送到 CAN-bus,CAN I

2、D由设备配置参数决定,如果不足 8个字节,则按照实际数据长度填充 CAN-bus帧。从 CAN-bus接收到的数据,只传输 1-8字节的 CAN-bus数据区数据到以太网或串口,不传输 CAN ID等其他数据。此模式用于传输 RS232/RS485通讯协议。用户可以通过 Telnet或 RS232管理口,将 CAN-bus端口设置为模式。管理口参数为:9600bps,8 数据位,1 停止位,无校验,无流控。可以使用超级终端直接打开并登录到设备进行管理。2、 通讯接口 1) CAN-bus转以太网通讯方式上位机软件通过 Socket规范与设备直接建立 TCP/IP连接,在成功建立 TCP/IP连

3、接后,上位机与设备就可以进行双向数据通讯。设备支持 TCP/IP Server、Client 两种工作模式,默认工作在 Server模式,设备监听 TCP/IP 6020-6023端口,等待连接。使用 Socket TCP/IP方式时,建议开启 KeepAlive 功能,并设置断线检测为 10秒,这样就可以快速检测出线路的物理中断。2) CAN-bus转串口通讯方式CAN-bus转串口设备(或模式)直接使用设备的硬件串口实现 CAN-bus与串口之间的数据交换。在 CAN-bus端口使用时,采用 20字节定长数据报文传输数据,数据传输采用存储转发方式工作,设备收到一帧或几帧串口数据后,在达到指

4、定超时而没有新数据到来时,将数据转发到 CAN-bus。用户可以一次发送一帧或几帧数据到串口,然后等待一个超时时间,设备就会将存储的数据转发到 CAN-bus。此超时时间可以根据需要进行设置。设备最多可存储 50帧 1000个字节的串口至 CAN-bus报文数据。3) 虚拟串口通讯方式在使用 CAN-bus转 TCP/IP产品(或模式)时,可以使用 VSPM虚拟串口软件,将设备 CAN-bus端口对应的 TCP/IP端口映射成本机的虚拟 COM口,使用传统串口调试工具,就可以进行 CAN-bus总线通讯调试。也可以使用传统的串口编程方式进行应用开发,可以避免编写复杂的网络通讯代码。其通讯方式与

5、相同。3、 通讯报文1) 通过 TCP/IP或串口发送数据到 CAN-bus发送报文:00 01000000 08 0001020304050607 01 00 00000000报文说明:京金华(北京)科技有限公司 Tel:010-62568703 Fax:010-62568570网址:http:/200:CAN 端口索引,报文的第 1个发送字节,发送时忽略。01 00 00 00:发送的 CAN ID,低位字节在前首先发送,此处为 01。08:此 CAN数据包中的 CAN数据区长度(最大 8个字节) ,此处为 8个字节。01 02 03 04 05 06 07 08:8 个字节的 CAN数据

6、区数据,如果上面的数据长度不足 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帧报文0001000000080001020304050607010000000000000100000008A0A1A2A3A4A5A6A7010000

7、0000002) 通过 TCP/IP或串口接收 CAN-bus数据收到报文:01 01000000 08 0001020304050607 01 00 00000000报文说明: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

8、06 07 08:8 个字节的 CAN数据区数据。01:1 为扩展帧(CAN2.0B)格式,0 为标准帧(CAN2.0A) 。此处为扩展帧。00:远程传输位,0-非 RTR数据包,1-为 RTR数据包。此处为非 RTR包。00 00 00 00:保留的 4个数据字节,报文最后发送字节,在 CAN-bus转串口时,后两个字节可以作为CRC16校验字节。此处未使用。4、 CAN-bus 至串口数据帧传输从串口接收 CAN-bus数据时,应用软件收到数据后,如果在一个等待时间内没有数据,就可以认为收全数据,可以进行数据处理。这个等待时间由设备收到的 CAN-bus数据帧间隔决定。5、 CAN ID详

9、解CAN ID 为 4个字节的无符号长整型数据(32 位) ,遵循无符号长整型数据类型内存布局,即低位字节在前,高位字节在后。CAN2.0A 使用 id的低 11位,CAN2.0B 使用 id的低 29位。下表为 CAN2.0B的 CAN ID对应表,2.0A 使用 2个低位字节。例如 CAN ID=100000=0x0186A0,对应的发送顺序为:A0 86 01 000xA0 0x86 0x01 0x00CAN ID0-7位CAN ID 8-15位CAN ID 16-23位CAN ID 24-28位低位字节 1首先发送 低位字节 2 高位字节 1高位字节 2最后发送例如发送的 id=0x0

10、1,产生的发送报文如下(16 进制):CAN-bus至串口数据帧 CAN-bus至串口数据帧 CAN-bus至串口数据帧第一条报文 第二条报文(2 帧数据)京金华(北京)科技有限公司 Tel:010-62568703 Fax:010-62568570网址:http:/300 01000000 08 0001020304050607 01 00 00000000例如发送的 id=0x88,产生的发送报文如下(16 进制):00 88000000 08 0001020304050607 01 00 00000000例如发送的 id=0x186A0,产生的发送报文如下(16 进制):00 A0860

11、100 08 0001020304050607 01 00 000000006、 通讯数据结构typedef struct _attribute_ (packed) _NETWORK_CANFRAME unsigned char candevindex; / 1个字节长度,CAN 端口,0-3 对应最多四个 CAN端口,接收效发送时忽略。unsigned long id; / 4个字节长度,CAN 包 IDunsigned char len; / 1个字节长度,数据长度,1-8 字节unsigned char byte8; / 8个字节长度,CAN 包数据unsigned char ext;

12、/ 1个字节长度,1-为扩展消息格式,0-标准消息格式unsigned char rtr; / 1个字节长度,远程传输位unsigned long param1; / 4个字节长度,备用参数 NETWORK_CANFRAME;上述为 C定义,单字节对齐,sizeof(NETWORK_CANFRAME)为 20个字节。TNetwork_CANFrame=packed recordcandevindex:byte; / CAN端口,0-3 对应 A-D四 CAN端口,上位机接收有效,发送忽略。id:LongWord; / CAN包 IDlen:byte; / 数据长度,1-8 字节candata:array1.8 of Byte; / CAN包数据ext:byte; / 1-为扩展消息格式,0-标准消息格式rtr:byte; / 远程传输位param1:LongWord; / 备用参数end; 上述结构为 Delphi定义,单字节对齐,sizeof 为 20个字节。

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。