4. 控制器区域网络 控制器区域网络(CAN)是一个多主异步串行总线。由于它具有优良的错误处理机制及可靠的数据传送性能,该总线在汽车工业中非常普遍,在高安全系数要求的医疗行业中也正在得到普及。 CAN最初由德国的Robert Bosch公司开发,提供给汽车电子系统所用的低成本通信总线,现在已经成为国际标准,被采用为高速应用的ISO11898标准和用于低速应用的ISO11519标准。 4-1、CAN通信 当总线空闲时,任何CAN节点都可以开始数据发送。如果两个或更多的节点同时开始发送,就使用标识符来进行按位仲裁以解决访问冲突。CAN是一个广播类型的总线,所有节点都接收总线上的数据,硬件上的过滤机制决定消息是否提供给该接点用。 4-2、四种消息帧的类型 数据帧:该帧从一个发送器承载数据到一个接收器。根据CAN规范有两种数据帧格式,它们的唯一本质区别在于标识符的长度:CAN标准帧,也称为CAN2.0A,支持11位长度的标识符;另一个是CAN扩展帧,也称为CAN2.0B,支持29位长度的标识符。图2显示了两种规范的CAN数据帧。 远程帧:此帧由一个接收CAN节点发送,用来请求带有远程帧中规定的标识符的数据帧。 错误帧:此帧将任何总线错误通知其它单元,在接收到这个帧时发送器会自动进行消息重发。 超载帧:超载帧由一个忙的CAN节点送出,以请求在前后数据帧之间增加一个额外的延迟。 4-3、CAN硬件术语 基本CAN(Basic CAN)控制器:这是一种廉价的CAN控制器,具有有限的发送/接收消息缓冲器,以及有限的CAN消息过滤机制。 完全CAN(Full CAN)控制器:完全CAN是一个高成本、高性能的CAN控制器,具有能缓冲8个或更多消息的缓冲器用于接收和发送。例如,富士通的集成CAN微控制器能提供16个消息缓冲器用于接收和发送。此外,富士通的MB90443微控制器能灵活地将两个CAN控制器的消息缓冲器组合在一个中,以形成能缓冲32个消息的缓冲器。 标准CAN控制器:该CAN控制器能够处理仅有11位标识符的消息。 扩展CAN控制器:该控制器能够处理含有11位和29位标识符的消息。 时间触发CAN(TTCAN)控制器:该CAN控制器根据时间和事件的触发来安排CAN消息,增强了CAN网络的总体性能和行为的确定性。 4-4、数据方向和通信速度 数据字节的传输首先从最高位开始。一个8位的数据字节能在一次发送中进行传输,最大的CAN总线速度是1Mbps。 4-6、物理接口 大多数CAN微控制器需要一个外部收发器来连接物理总线。目前市场上提供以下一些收发器:
5.本地互连网络 本地互连网络(LIN)是一个低成本、单线串行总线,能执行全双工串行通信。LIN用在汽车的分布式电子系统中,例如与智能传感器和传动器的通信。LIN协议能采用低成本的UART/SCI接口来实现,几乎所有的微控制器都提供这些接口。 5-1、LIN通信 LIN网络由一个主控和多个从器件组成,主控器件发起所有的通信。 所有节点执行包括发送和接收任务在内的从属通信任务。此外,主节点执行主控发送任务,主控任务能决定什么时候、哪一个帧将在总线上传输。在该方式中,没有总线仲裁,并且在最坏情况下每个消息的时间很容易计算。当一个消息帧发送时,在接收和过滤标识符后,仅有一个从器件得到激活。 总线上的所有消息以帧的形式发送,帧由一个帧头和响应字段(response field)组成。主控器件始终在总线上发送帧头,帧头至少由一个13位字段、一个同步字节和一个6位标识符组成,该标识符的范围为0到63。响应字段由两个、四个和八个数据字节和具有倒置8位和的校验和字段,以及所有的数据字节和标识符组成。 5-2、数据方向和通信速度 数据字节的传送首先从LSB开始,LIN总线的最大速度是20kbps。 5-3、物理接口 只有很少微控制器集成有专用的LIN硬件,大多数供应商用SCI或UART来提供支持。因为LIN物理层是一个从汽车自诊断用 ISO9141标准引出的单线12V总线,所以需要一个外部LIN收发器来转换电平。 5-4、CAN与LIN的比较 CAN和LIN两者都使用在汽车工业中。CAN用于汽车中的高速和低速网络,而LIN仅用于低速网络,如门控制单元。在很多方面,CAN比LIN更贵也更可靠,必需在可靠性和为设计硬件与软件支付额外成本之间进行权衡。由于LIN的成本较低且容易在UART中实现,故在低速网络应用方面LIN有望替代CAN
lin和can协议在车身应用中的主要特性比较
———————————————————————————————— lin can
媒体访问控制 单主机 多主机
总线速度 2.4---19.6kh/s 62.5---500kh/s
多点传送信息路由 6位标示符 11/29位标示符
网络节点数 2---10节点 4---20节点
编码方式 nrz 8ni (uart) nrz w/位添充
每帧数据字节 2.4.8字节 4---8字节
4字节数据传输时间 3.5ms/(20kb/s) 0.8ms/(125kh/s)
错误检测 8位校验和 15位循环冗余码校验
物理层 单线,12v 双绞线,5v
石英/陶瓷震荡器 无(主机除外) 有
总线最大长度 40m 40m
每个接点成本 0.5美元 1美元
--------------------------------------------------------------------------
|