最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

can总线协议完全解析

来源:动视网 责编:小OO 时间:2025-09-27 21:50:32
文档

can总线协议完全解析

CAN总线协议解析李玉丽(吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021)摘要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(CAN)总线因其自身的特点被广泛应用于自动控制领域。本文对CAN总线协议作了详尽解析。关键词:CAN总线;隐性位;显性位;节点中图分类号:TU85文献标识码:ACAN(ControllerAreaNetwork)是分布式实时控制系统的串行通信局域网,称谓CAN总线。在数据实时传输中,设计独特、低成本,具有高可靠性,得到广泛应用。本文着重解
推荐度:
导读CAN总线协议解析李玉丽(吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021)摘要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(CAN)总线因其自身的特点被广泛应用于自动控制领域。本文对CAN总线协议作了详尽解析。关键词:CAN总线;隐性位;显性位;节点中图分类号:TU85文献标识码:ACAN(ControllerAreaNetwork)是分布式实时控制系统的串行通信局域网,称谓CAN总线。在数据实时传输中,设计独特、低成本,具有高可靠性,得到广泛应用。本文着重解
CAN总线协议解析

李玉丽

(吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021 )

摘 要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(C AN)总线因其自身的特点被广泛应用于

自动控制领域。本文对C AN总线协议作了详尽解析。

关键词:C AN总线;隐性位;显性位;节点

中图分类号:T U 85 文献标识码:A

CAN(Cont roll e r A rea N et work)是分布式实时控

制系统的串行通信局域网,称谓CAN总线。在数据

实时传输中,设计独特、低成本,具有高可靠性,得到

广泛应用。

本文着重解析 C AN 技术规范 2.0B 版的 CAN

的分层结构规范和 CAN 报文结构规范。重点在于

充分理解 CAN总线协议精髓,有助于CAN总线的

局网设计、软件编程、局网维护。

一、C AN的分层结构

CAN 遵从O SI

( Ope n Syste m I nte rc onnec ti on

Re fe re nce Mode l

) 模型,其分层结构由高到低如图1

所示。

图1 C AN的分层结构

对应 OSI 模型为两层,实际为三层,即 LLC、

MA C、PL S。由此而知,对应于CAN总线系统每个

节点都是三层结构。数据发送节点数据流为LLC→

MA C→P LS ,然后将数据发送到总线上;而对于挂在

总线上的所有节点(包括发送节点)的接收的数据流

为PL S→MA C→LLC。

这种分层结构的规范保证了 CAN 总线的多主

方式工作模式,即不分主从,非破坏性的仲裁工作模

式。而 LLC 层的报文滤波功能可实现点到点、一点

对多点、全局广播、多点对一点,多点对多点等数据

传递方式。

各分层主要功能如下:

LLC 层:接收滤波、超载通知、恢复管理;

MAC 层:控制帧结构、执行仲裁、错误检测、出

错标定、故障界定。该层是CAN的核心;

PL S 层:位编码/ 解码、位定时。

二、CAN总线的报文规范

CAN报文的传送有 4 种不同类型的帧结构,数

据帧、远程帧、出错帧、超载帧。CA B2.0B 有4 种帧

格式。

(一)数据帧

数据帧携带由发送节点到接收节点(或发送器

到接收器),由 7 个不同的位场组成:帧起始位、仲裁

场、控制场、数据场、CRC 场、应答场、帧结束。如图

2 所示。

图2 数据帧结构

CAN2.0B 中存在两种不同的帧格式。主要区别

在于标识符的长度。具有11 位标识符的帧称为标

准帧,具有29位标识符的帧称为扩展帧。本文只对

第3 卷第3 期

2008年9 月

长春理工大学学报(高教版)

J ourn a l o f C h a ngc hun U ni v e r s it y of S c i e n ce a ndT ec hno l ogy(H i ghe r E duca ti onE d iti on)

Vol. 3 No. 3

Sep. 2008

* 收稿日期:2008 05 14

作者简介:李玉丽(1973 ),女,本科,实验师,研究方向为智能建筑电气设备远程监控。

标准帧进行解析。

1.帧起始标志位(SOF)

由一个显性位构成,表明某个节点开始发送信

息,所有其它节点必须与此同步(硬同步),但只有在

总线空闲时才允许起始位的发送。

2.仲裁场

(1)仲裁场的组成

仲裁场如图3所示。

图3 仲裁场的组成

标识符为11位,远程发送请求RTR为一个显性

位。

(2)仲裁与优先级

CAN总线的通讯模式为:载波监测、多主掌控/

冲突(CSMA/CA)。这就使得总线上任一个节点向

总线发送信息的机会是均等的。只要总线空闲,谁

都可以发送。但如果在同一时刻有两上或两个以上

节点同时发送信息,这就发生冲突,这就需要仲裁,

而且获得仲裁的信息不受破坏。

CAN是按位进行仲裁。当节点向总线发送信息

同时,也在读取总线的电平。如果发送的电平与读

取的电平相同,则继续发送下一位,若不同则停止发

送,退出竞争。余下的节点继续重复上述过程,直到

总线上只剩下一个节点发送的电平。而在冲突中被

仲裁下的节点,待下一个总线空闲期再次尝试发送。

这种总裁技术明显可以看出,在仲裁帧中,标识

符的二进制数值小者有较高优先级。换句话在诸多

竞争节点中,如果报文标识符的值最小,则此报文的

优先级最高。

3.控制场

控制场如图4所示。

图4 控制场组成

IDE:在CAN2.0B标准格式IDE应为显性(隐性

用r表示)。

r0:保留位。

DLC3~DLC0:数据长度,最大数值为rddd(即隐

显显显)。通常“显性”表示传输0,“隐性”表示传输

1,则最大数据为1000H,即8。

4.数据场

数据场即为被发送的数据,长度为0~8个字节,

取决于控制场中数据长度DL3~DL0。首先发送的

最高有效位。

5.CRC场

CRC场结构如图5所示。

图5 CRC场结构

CRC场由CRC序列和CRC界定符组成,CRC

序列为16位CRC检验码,CRC界定符用于标注

CRC序列的结束,为一位位。CRC检验范围从

帧起始位开始直到数据场结束。其生成多项式为

15

+

14

+

10

+

8

+

7

+

4

+

3

+1。

6.应答场(ACK)

应答场为两位,如图6所示。

图6 应答场组成

在应答场中发送节点送出2个隐性位,所有接

收到匹配CRC序列的节点,在应答间隙发送一个显

示位,以报告发送器接收无误。应答界定符为一个

隐性位。

7.帧结束

由7个隐性位构成,表示一帧内容结束。

(二)远程帧

节点A如果索取B节点的数据时,则由A发送

远程帧,其A节点在仲裁场的标识符应为B节点的

标识符相同。

远程帧由帧起始位、仲裁场、控制场、CRC场、应

答场、帧结束6个场组成。它与数据帧的区别有:①

仲裁场的RTR位为隐性,标识此帧为远程帧;②无数

据场;③控制场中的PLC可为0~8的任意数值,但无

意义。

说明:对于仲裁场、控制场、数据场、CRC场、帧

间空间使用填充技术进行编码,即每5个同状态电

平插入一位与它相补的电平,还原时再予以删除。

(三)出错帧

1.出错帧格式

出错帧由2场组成,如图7所示。

图7 出错帧结构

长春理工大学学报(高教版) 182 第3卷

错误标志具有两种形式:活动错误标识(由6个

显位组成)、认可错误标识(由6个隐位组成)。

当一个节点发出错误帧时,其出错标识为连续6

个显性位或连续6个隐性位。CAN总线规定使用填

充技术的编码不允许连续出现6个同状态电平,某

一节点标识传送后,其它节点由于总线上的连续电

平的出现,破坏帧格式,补发送错误标识,因此错误

标识叠加后占6~12位。各节点在发出错误标识之

后,都在监视总线,当检测到一个隐性位后,再发送7

个隐性位,故错误界定符为8个隐性位。

2.CAN总线的错误类型

CAN总线有5种错误类型、它们互不排斥。

位错误:总线检测出某一位出错。

填充错误:使用填充方法进行编码为报文中,出

现6个连续相同的电平。

CRC错误:CRC值不匹配。

形式错误:固定的位场中出现非法位。

应答错误:在应答间隙,发送节点未检测到显性

位。

当一个节点检测到一个CRC错误时,标识在应

答界定符之后发送,而其它错误在检测出错误的下

一位发送错误标识。

3.CAN总线故障界定及处理

每个CAN总线节点都设有发送出错记数器和

接收出错计数器。发送器送出一个错误标识时,发

送错误计数器加8,接收器检测出一个错误,接收错

误记数器加1或加8,报文成功发送后,发送错误计

数器减1,接报文成功接收后,接收错误计数器减1,

有了如上规定之后,即可定义故障界定:一个节点如

果其错误计数值在1~127(含1、127)则为错误激活

节点;在128~255(含128、255)则为错误认可节点。

错误激活节点检测出错误时,发送活动错误标识。错

误认可节点检测出错误时,发送认可错误标识;当错

误读数值大于或等于256时,总线关闭。错误计数

值大于96时,说明总线被严重干扰。

对于总线关闭的节点,在监测总线上11个连续

隐性位发生128次,则此节点总线启动,成为错误计

数器为零值的错误激活节点。

(四)超载帧

超载帧用于在接收节点未准备好的情况下请求

对数据帧或远程帧延时,由2个位场组成,见图8。

图8 超载帧结构

超载标志及超载界定符与出错帧标识相同,其

引发和处理过程也是一样的。

(五)帧间空间

不管何种帧,均以称之为帧间空间的位场分开,

但超载帧、出错帧之前无帧间空间,如图9所示。

图9 帧间空间结构

间歇场为3个隐位,在此期间不允许启动数据

帧和远程帧。总线空闲周期可以任意长。

参考文献:

[1]李正军.现场总线与工业以太网及其应用系统设计[M].

人民邮电出版社,2006.

[2]史久根,张培仁,陈真勇.CAN现场总线系统设计技术

[M].国防工业出版社,2004.

[3]求是科技.单片机通讯技术与工程实践[M].人民邮电出

版社,2005.

TheAnalysisofCANProtocol

Li Yuli

(ElectronicSchool ofJilinArchitectural andCivil EngineeringInstitute,Changchun130021,China)

Abstract:Thedevelopment andapplicationoffieldbuscausedthechangesforthetraditional control system.

Control LAN(CAN)busarewidelyusedinthefieldofautomaticcontrol .becauseoftheirowncharacteristicsThis

papergivesadetailedexplanationtoCANbusprotocol works.

Keywords:CANbus;recessivebit;dominant bit;node

183 李玉丽:CAN总线协议解析 第3期

文档

can总线协议完全解析

CAN总线协议解析李玉丽(吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021)摘要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(CAN)总线因其自身的特点被广泛应用于自动控制领域。本文对CAN总线协议作了详尽解析。关键词:CAN总线;隐性位;显性位;节点中图分类号:TU85文献标识码:ACAN(ControllerAreaNetwork)是分布式实时控制系统的串行通信局域网,称谓CAN总线。在数据实时传输中,设计独特、低成本,具有高可靠性,得到广泛应用。本文着重解
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top