首页 > 编程知识 正文

can总线接口定义,can总线通信故障

时间:2023-05-05 02:46:01 阅读:172572 作者:1027

CAN总线通信——介绍CAN通信的数据帧。

CAN总线作为“帧”进行通信。 顾名思义,“数据帧”用于传输数据。 CAN总线的数据帧有“标准格式”(Standard Format )和“扩展格式”(Extended Format )的区别,标准帧的格式如下图所示。

数据帧可以分为七个段。

http://www.Sina.com/: 1位、显性信号、表示数据帧(或远程帧)的开始。

1)帧起始(Start Of Frame-SOF):包括两个部分:标识符比特(Identifier field-ID )和远程传输请求比特(Remote Transfer Request-RTR )。

该标识符是功能地址,CAN接收器通过该标识符过滤数据帧。 标准格式的数据帧的标识符(CAN-ID )的长度为11比特(11比特),ID10至ID0,ID10为最高权重比特(MSB ),ID0为最低权重比特(LSB ),ID10至ID0的长度为2比特CAN协议还规定,前7位的最高权重位(ID10~ID4 )都不能是“隐藏”信号。

远程发送请求位,简称“RTR”,1位。 该位的名称很长,但其功能很简单,用于区分该帧是数据帧还是远程帧。 显性信号(0)表示数据帧。 “隐藏信号(1)”表示远程帧。

33558www.Sina.com/:6:包括6个比特(6 bits ),并且分别为扩展标识符比特(identifier extension bite,1比特); 位0 (resevedbit0- r0,1位); 数据长度编码位(Data Length Code-DLC,4 bits )如下图所示。

指示帧是标准格式还是扩展格式的扩展标识符比特;

预约位0(R0 ),以后使用;

由4比特表示的数据长度编码比特(DLC,4比特) )包括DLC3~DLC0,由字节表示帧实际传输的数据的长度; DLC的编码规则如下。

在此," d "表示显性信号," r "表示隐性信号

2)仲裁段(Arbitration Field):发送数据的内容,最多8字节。 数据段与DLC的对应关系如下图所示。

3)控制段(Control Field):包括循环校验序列(CRC Sequence )和限定符(DELimiter,Del )。

循环校验序列(CRC Sequence )、15 bits、为了校验传输是否正确;

表示规定符(DEL )、1比特、隐性信号、循环检查序列结束;

4) 数据段(Data Field):包括确认位(ACK SLOT )和修饰符(Delimiter,DEL ),表示确认是否正常接收。

当确认比特(ACK )、1比特并且每个节点接收到正确的CRC序列时,发送级的ACK比特被设置;

规定符(DEL ),1 bit,隐藏信号;

5)循环校验段(CRC Field):7位(7 bits ),隐藏信号表示帧的结束。

以上是标准格式的数据帧。 让我们看看扩展格式和标准格式的区别。 首先,请看下图。

仲裁段和控制段不同。

6) 确认段(ACK Field):扩展形式的仲裁段由以下五部分组成:

基本标识符位(Base identifier-Base ID )、11 bits、与标准格式标识符相同;

备用远程请求位(Substitute Remote Request Bit,SRR )、1 bit、隐藏信号;

扩展比特(ide(identifierextensionbit,1比特),识别是扩展帧还是标准帧;

存储扩展ID位(扩展标识符,扩展ID )、18位、扩展ID;

远程发送请求比特(Remote Transmission Request,RTR )、1比特,在数据帧中为显性信号,在远程帧中为隐性信号;

7) 帧结束(End of Frame-EOF)6 bits,不同于标准帧的是使用备用1(r1 )而不是标准帧的IDE。 r0和DLC是相同的。 也就是说,在扩展帧中有两个预约比特r1、r0,两个预约比特需要发送显性信号;

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。