文档详情

can总线通讯协议.doc

发布:2016-12-23约1.62万字共43页下载文档
文本预览下载声明
can总线通讯协议 篇一:史上最全can总线协议规则 一、CAN总线简介 CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO11898)。是国际上应用最广泛的现场总线之一。在建立之初,CAN总线就定位于汽车内部的现场总线,具有传输速度快、可靠性高、灵活性强等优点。上世纪90年代CAN总线开始在汽车电子行业内逐步推广,目前已成为汽车电子行业首选的通信协议,并且在医疗设备、工业生产、楼宇设施、交通运输等领域中取得了广泛的应用。 二、CAN总线技术及其规范 2.1性能特点 (1) 数据通信没有主从之分,任意一个节点可以向任何其他(一个或多个)节点发起数据通信,通信方式灵活,且无需站地址等节点信息; (2) CAN网络上的节点信息分成不停的优先级,可满足不同的实时要求,高优先级节点信息最快可在134μs内得到传输; (3) 采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动退出发送,而高优先级的节点可不受影响的继续发送数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪的情况; (3) 通信距离最远可达10KM(速率低于5Kbps)速率可达到1Mbps(通信距离小于40M); (4) 通信的硬件接口简单,通信线少,传输介质可以是双绞线,同轴电缆或光缆。CAN总线适用于大数据量短距离通信或者长距离小数据量,实时性要求比较高,多主多从或者各个节点平等的现场中使用。 (5) 采用短帧结构,传输时间短,受干扰概率低,每帧信息都有CRC校验及其他检验措施,数据出错率极低; (6) 节点在严重错误的情况下具有自动关闭输出的功能,以使总线上其他节点的操作不受影响。 (7) CAN总线使用两根信号线上的差分电压传递信号,显性电平可以覆盖隐形电平。 2.2技术规范 2.2.1CAN的分层结构 图1 CAN的分层结构 逻辑链路控制子层(LLC)的功能:为数据传送和远程数据请求提供服务,确认由LLC子层接收的报文实际上已被接收,为恢复管理和通知超载提供信息。在定义目标处理时,存在许多灵活性。 介质访问控制子层(MAC)的功能:主要是传送规则,即控制帧结构、执行仲裁、错误检测、出错标定和故障界定。MAC子层也要确定当开始一次新的传送时,总线是否开放或者是否马上开始接收。位定时特性也是MAC子层的一部分。 2.2.2CAN的报文传送和帧结构 报文传送由以下四种不同的帧类型所表示和控制。 ·数据帧:数据帧携带数据从发送器至接收器; ·远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧; ·错误帧:任何单元检测到一总线错误时发出的错误帧; ·超载帧:超载帧用来在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。 数据帧或远程帧通过帧空间与前述的各种帧分开。 数据帧 数据械是用来传输数据的帧,由7个位场组成:1.帧起始位场、2.仲裁场、 3.控制场、4.数据场、5.CRC场、6.应答场、7帧结尾。数据帧的组成如图2所示。 CAN2.0B中存在两种不同的帧格式,其主要区别在于仲裁场的标示符长度。具有11位标示符的帧称为标准帧,包括29位标示符的帧称为扩展帧。标准帧和扩展帧的仲裁场格式如图3所示。 图3 标准帧和扩展帧的仲裁场格式 ·帧起始 帧的起始场仅仅包含一个显性位,当CAN总线空闲时,总线保持隐性位,出现一个显性位即表示总线开始数据传输。CAN总线上的节点只能在总线空闲时发送数据,而检测到起始位之后节点就进入接收状态。 ·仲裁场 仲裁场由标识符和远程发送请求位(RTR位)组成。RTR位在数据帧中为显性,在远程帧中为隐性。其结构如图4所示。 图4 CAN总线数据帧仲裁场结构 对于CAN2.0B标准,标准格式帧与扩展格式帧的仲裁场标识符格式不同。标准格式里,仲裁场由11位识别符和RTR(RTR=0)位组成。识别符位由ID.28~ID.18组成。而在扩展格式里,仲裁场包括29位识别符、替代远程请求位SRR、标识位IDE、远程发送请求位RTR(RTR=1)。其识别符由ID.28~ID.0组成,其格式包含两个部分:11位(ID.28~ID.18)基本ID、18位(ID.17~ID.0)扩展ID。扩展格式里,基本ID首先发送,其次是SRR位和IDE位。扩展ID的发送位于SRR位和IDE位之后。 SRR的全称是“替代远程请求位(Substitute Remote Request BIT)”,SRR 是一隐性位。它在扩展格式的标准帧RTR位上被发送,并代替标准帧的RTR位。因此,如果扩展帧的基本ID和标准帧的识
显示全部
相似文档