CAN总线的技术规范与控制器类型

时间:2013-02-22来源:网络


CAN协议介绍

CAN协议是参考ISO/OSI的7层协议模式而做定义的,但因它主要是用来传送简短且简单的信号,而且是一封闭性的系统,并不需要负责系统的安全、产生用户接口的数据,以及监控网络的登入等动作,因此只涉及了实体层和数据链接层的定义。

1、实体层规范特性

实体层负责的是网络中节点与节点之间的连结,以及在铜线、同轴缆线、光纤,甚至是无线信号的实际电性脉冲传送。传送器的实体层会把从数据链接层来的数据转换为电子信息,再传送出去;在接收端,实体层将这些电子信息传换为数据格式,再传送到数据链接层。

在一个网络系统中,要确保各个节点之间能够顺利地沟通,先决条件是每个节点的实体层特性必须是相同的,而CAN实体层的作用就在于规范位表示法、位时序及同步性,通常还包括脚位连接器和接线的型式。CAN由两条序列总线(CAN_H和CAN_L)实时传输数据,传输速率可高达1Mb/s。理论上,每个CAN总线最多可连结2032个节点,但受限于收发器的功能,实际运用上最多大约可连结100个节点,而在一般的运用上则大约是连结3~10个节点。CAN实体层示意图如图2所示。

newmaker.com
图2 CAN实体层架构示意图

2、数据链接层规范特性:总线仲裁

CAN数据链接层可以说是CAN功能的核心,其目的在于建立数据信框封包,在信框内包含数据和控制数据。数据链接层的主要功能之一,就是当系统中出现两个信号同时想使用网络中的相同资源时,如何防止冲突的发生。这就是所谓MAC(Medium Access Control)功能。在CAN协议中,MAC功能会让具有最高优先权的数据信框优先使用总线的网络资源,此机制对于网络效能的影响很大。

在网络的接取控制上有两大方向,即先决式和随机式。在先决式的接取控制中,总线的使用权必须在节点接取总线前就预先定义好了,以确保不会发生任何冲突。此类网络需要一个中央管控装置来进行网络管理,但一旦此装置失常,整个网络就无法运作;也有非中心化的架构,但相对会复杂许多。

在随机式接取控制中,当总线闲置时,每个节点都能够要求使用网络资源。最常见的随机式接取控制方式是载波侦测多重存取(Carrier Sense Multiple Access,CSMA),CSMA又分成限制或防止信号碰撞的CSMA/CA方式和允许碰撞再进行处置的CSMA/CD方式。由于CSMA/CD较浪费频宽资源及会产生较长的延迟性,因此CAN采用的是CSMA/CA的方式,此作法又称为非破坏性的按位仲裁机制。

CAN协议让优先权较高的信号先接取使用总线资源,在每个信号信框的一开始处就存在仲裁域,仲裁域中有一个识别码,识别码的数值越小,表示其优先权限越高。此作法能有效地利用总线资源,其具有最高优先权的信号,最大的延迟时间大约只有150ms。

在CAN的2.0A标准中,一开始定义识别码的长度为11位,后来因市场的需求又提出了延伸性的2.0B版本。2.0B的格式通常被称为延伸性CAN,它允许29位的识别码,而且有主动及被动式两种:2.0B主动,也就是能收、发延伸信框的节点;以及2.0B被动,它会放弃掉接收到的延伸信框。2.0B的29位识别码能够提供51200万个独特的信号及优先等级,足以满足来自越来越多节点的大量存取要求。

三、数据链接层规范特性:信框格式

所谓的信框即包含由传送器送出的完整信号的数据封包。在CAN协议中具有4种信框,即数据信框、远程信框、误码信框及额外负载信框。以下主要介绍数据信框的组成。

数据信框包含了识别码和各种控制信息,以及最多8字节的数据。其基本组成包括:信框开始、仲裁域(又包括识别码和RTR)、控制域(又包括IDE、r0和数据长度码)、数据域、循环冗余码检验域、确认域,以及信框终点等,如图3所示。

newmaker.com
图3 延伸型CAN的数据信框组成架构

其中控制信息是用来识别信框,决定对总线的使用,以及进行误码侦测。控制信息的另一项主要功能,就在于能够分辨出某一信号是否已损毁了。当数据在任何网络中传送时,随机性的误码是很常见的,所以数据链接层的重要任务之一,就是要限制这类错误的发生。
1 2 3

关键词: CAN总线 技术规范 控制器类型

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版