快速了解CAN通讯原理及应用

描述

一张图看懂CAN总线的原理

CAN

图1 CAN通信原理

参考上图,简单来说CAN总线就如两根黄线,通信的原理就好比开一个电话会议,大家都同时拨进来,然后有各种不同的状态,比如:一个人说话,其他人听;或者多个人同时想发言,但也会让其中一个人先说,其他人听;还有一个人要求另一个人来说;还有些掉线了,卡顿了等等。

为了确保每次电话会议针对上述情况正确有效地进行,我们需要一些每个人都应该遵守的规则或协议。CAN总线通信与这种电话会议形式既有相似之处,也有不同之处。那究竟什么是CAN总线通信?

CAN总线架构简介

CAN总线是一种用于不同控制单元之间数据传输的导线。CAN总线协议是ISO国际标准化的串行通信协议,由两个系列组成:ISO-11898和ISO-11519。其定义有:

ISO-11898 定义了通信速率为 125 Kbps ~1Mbps 的高速 CAN 通信标准,属于闭环总线,传输速率可达1Mbps,总线长度≤ 40米,如图2。

ISO11519 定义了通信速率为 10~125 Kbps 的低速 CAN 通信标准,属于开环总线,传输速率为40kbps时,总线长度可达1000米,如图2。

CAN

图2

CAN的应用

CAN总线会有终端电阻,一般来说都是120欧姆,实际上在设计的时候,也是两个60欧姆的电阻串起来的,而总线上一般有两个120欧姆的节点。终端电阻的作用有三个:

①提高干扰防护能力,快速消除高频低能量信号。

②确保总线快速进入隐藏状态,这样寄生电容器的能量可以更快地耗散。

③通过将它们放置在总线两端以减少反射能量来提高信号质量。

CAN

图3

电信号的传输是通过区分高电压和低电压来进行的,就像CAN通信一样。CAN总线的两条信号线是CAN高(CAN_H)和CAN低(CAN_L)。关于CAN的逻辑0和逻辑1以及CAN总线的显式和隐式方面,编制了以下图表,以使每个人都能清楚地理解。

CAN

如下图 4 所示:

CAN

图4

注1:在实际开发中,两条线路的电压都以默认值波动,这也是使用差动传输减少误差和噪声干扰的优点;

注2:CAN总线采用“线路和”规则进行总线套利,即如果同时发送多个CAN信号,有些发送1,有些发送0,只要有0,则当前总线为0(1&0=0)。因此,总线上的显式平面由逻辑“0”表示,而隐式平面则由逻辑“1”表示;

虽然差分信号有较好的抗干扰能力,但是长距离信号传输时,我们通常会采用双绞线进行数据传输,以此来从物理上减弱噪声对信号传输过程中的耦合。

CAN

图 5 消除电容耦合

CAN

图 6 消除电感耦合

CAN

图 7 消除对外界的干扰

CAN信号传输

上述的电位差(差分电平)与逻辑电平是通过CAN收发器实现的。在传输过程中,CAN控制器将CPU传输的信号转换为逻辑电平。CAN收发器接收到逻辑电平后,将其转换为差分电平并输出到CAN总线。

CAN

图9 CAN信号发送

在接收过程中,CAN收发器发送CAN_H和CAN_L线路上传输的差电平被转换为逻辑电平并输出到CAN控制器,然后CAN控制器将逻辑电平转换为相应的信号并发送到CPU。

CAN

图10 CAN信号接收

简单地说,这意味着变送器通过CAN收发器改变总线电平,并将其信息传输到CAN总线。接收器通过监测总线电平将总线上的信息读取到自己的CAN收发器中。

如上所示,CAN总线有两种架构,两种形式的CAN信号,以及发送和接收CAN信号的两个过程。

-

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分