关于测控系统的CAN通讯协议总结

1.CAN:Controller Area Network,控制器局域网

一种能有效支持分布式控制和实时控制的串行通讯网络。

在这里插入图片描述

2. CANopen

1.基本数据类型

NIL:类似于高级语言里的NULL,但是NULL表示值为0,NIL表示无值
BOOLEAN: 布尔类型,0和1
VOID:无类型,常用在函数的参数类型,返回值,函数中的指针类型进行声明
USIGNED INT: 无符号整型
SIGNED INT: 有符号整型
FLOAT: 浮点数

2.复合类型

ARRAY[length] : 字符串数组类型,由多个字符组成,length就是字符串的长度
VISIBLE CHAR: 多个可见字符组成的字符串
时间类型:其中ms是记录数据返回的时间差
STRUCT OF
UNSIGNED28 ms
VOID4 reserved
UNSIGNED16 days
TIME_OF_DAY

3. CANopen通讯对象

(1)服务数据对象(SDO)
用户用SDO可以访问其他设备对象字典。一共有三种机制:快速传输,段传输,块传输。快速传输主要用来做一些对象字典的访问,比如读/写相关设备的对象字典。启动报文最多带4字节的数据。
(2)过程数据对象(PDO)
PDO用来传输实时数据,一次是8字节的数据。
用来发送数据的叫TPDO,接收数据的叫RPDO

3. J1939

J1939协议一般用在以CAN为基础的交通工具的嵌入式网络中,报文格式遵循CAN2.0B规范

1. J1939通讯对象

J1939定义了协议数据单元(PDU),一个PDU被封装在一个或多个CAN数据帧中传给其它设备

2. J1939协议规范中的专有名词解释

(1)参数组:在一个消息中传送参数的集合,包括命令,数据,请求,应答和否定应答
(2)报文:指一个或多个相同参数编号的CAN数据帧。

猜你喜欢

转载自blog.csdn.net/smile001isme/article/details/105959269