您好,欢迎访问三七文档
CAN基本通讯协议培训CAN的基本介绍CAN是ControllerAreaNetwork的缩写(以下称为CAN),它是一种国际标准化的串行通信协议。出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。在这种背景下,提出了CAN总线。CAN总线在汽车上的应用CAN总线的特点多主控制在总线空闲时,所有的单元都可开始发送消息(多主控制)。系统的柔软性总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变。通信速度根据整个网络的规模,可设定适合的通信速度。通讯波特率5K——1MBPS实时性好,CSMA采用无时间损耗总线仲裁方式;采用发送帧优先权方式;可靠性好,采用CRC校验等容错方式,如果接受出现错误,则自动重发。CAN信号的传输CAN信号在总线上的传输是采用差分电压作为数字信号进行传输的。差分电压状态有两种,当总线的两根线有2V的压差时,这时总线称为显性状态,当总线的两根线电压相等时称为隐性状态。一般CAN协议定义显性定义为数字0,而隐性定义为数字1。CAN分为:高速CAN(125K—1MBPS)低速CAN(40K—125KBPS)RT120ΩRT120ΩECU2ECUn...CANHCANLStubs0.3m终端电阻可以放在ECU内部Twisted-pairmedia•波特率最高1M,汽车常用500K•总线长度最大40m•最多16个节点•总线两端各有2个120欧姆电阻3.5V2.5V1.5VrecessivedominantrecessiveCANHCANLGndVccRxTxECU1101•CANH通过MOS管接高•CANL通过MOS管接低•隐性状态时,总线差分电压为0v•显性状态时,总线差分电压为2v•共模电压2.5v3.5V2.5V1.5VrecessivedominantrecessiveCANHCANL101ECU2ECUn...CANHCANLTwisted-pairmedia•波特率125kbps•总线错误时,自动切换到单线模式•总线最大总长度40m•节点最多32个3.5V1.5VrecessivedominantrecessiveCANHCANLGndVccRxTxECU10VVccRHRL1013.5V1.5VrecessivedominantrecessiveCANHCANL0VVcc101•CANH通过终端电阻RH接地•CANL通过终端电阻RL接Vcc•隐性状态时,总线差分电压为-5v•显性状态时,总线差分电压为2v•差分电压阀值通常设为-3.2v•强抗干扰性CAN消息帧数据帧遥控帧错误帧过载帧帧间隔数据帧用于发送单元向接收单元传送数据的帧。帧起始标志一个数据帧或者远程帧的开始。仲裁段包括报文标识位和远程发送申请位(RTR)。识别符主要的高7位不能全部为隐性控制段由6个位组成,主要表示数字段的字节数。其中前两位保留。数字段最多可以发送8个字节的数字量。CRC段检查帧是否传输错误的帧。ACK段用来接收是否正常接收的。帧结束表示该帧的结束段,由7个隐性位组成。遥控帧接收单元向发送单元请求发送数据所用的帧。和数据帧结构相比,主要是少了数据段这一块。遥控帧的CRC位是隐性位,没有数据的数据帧和遥控帧可以通过CRC位来进行区分。遥控帧的数据长度码以所请求数据帧的数据长度码表示。错误帧用于在接收和发送消息时检测出错误通知错误的帧。错误帧由错误标志和错误界定符构成。错误界定符主要由八个隐性位组成。错误标志主要包括两种方式:主动错误标志,主要由六个显性位组成被动错误标志,主要由六个隐性位组成。过载帧过载帧是用于接收单元通知尚未完成接收准备的帧。其结构主要也是由过载标志和过载界定符组成。帧间隔用于分隔数据帧和遥控帧的帧。延迟传送,8个隐性位组成。只有在处于被动错误状态的单元刚发送一个消息后的帧才包括此段。优先级(仲裁)在总线空闲的时候,最先开始发送消息的单元获得发送优先。多个单元同时开始发送时,各发送单元从仲裁段的第一位开始进行仲裁。连续输出显性电平最多的单元可继续发送。仲裁的过程如下图:具有相同ID的数据帧和遥控帧进行竞争时,由于数据帧的CRC位为隐性位,因此在竞争的时候获胜,数据帧具有优先权。相同ID的标准数据帧和扩展数据帧在一起竞争的时候,标准数据帧具有优先权。位填充位填充是为防止突发错误而设定的功能。当同样的电平持续5位时则添加一个位的反型数据。CAN总线的层结构CAN遵从OSI模型,按照OSI基准模型,CAN结构划分为两层:数据链路层和物理层。数据链层主要分为两个部分:逻辑链路控制(LLC-logiclinkcontrol)媒体访问控制层(MAC-mediumaccesscontrol)LLC子层提供的功能主要包括:帧接收滤波、超载通告和恢复管理。MAC层的功能:1.发送功能包括:①发送数据封装包括接收LLC帧,并接口控制信息;CRC循环计算;通过向LLC帧附加SQF,RTR位,保留位,CRC位,ACK和EOF构造MAC帧。②发送媒体访问管理包括确认总线空闲之后开始发送过程;MAC帧串行化;插入填充位;在丢失仲裁的情况下,退出仲裁并转入接收方式;错误检测(监控和格式校验);应答校验;确认超载条件;构造超载帧,并发送;构造出错帧并发送;输出串行位流至物理层并准备发送。2.接收功能包括:①接收媒体访问管理包括由物理层接收串行位流,解除串行结构并重新构筑帧结构,检测填充位,带误检测,发送应答,构造错误帧并开始发送,确认超载条件,重激活超载帧结构并开始发送。②接收数据卸载包括:由接收帧中去除MAC特定信息,输出LLC帧和接口控制信息至LLC子层。CAN网络的应用实例:CAN网络应用框图谢谢大家!
本文标题:CAN总线协议.
链接地址:https://www.777doc.com/doc-5077908 .html