can总线第二讲

一 CAN总线拓扑结构
CAN是一种分布式的控制总线,总线上的每一个节点一般来说都比较简单,使用MCU控制器处理CAN总线数据,完成特定的功能;通过CAN总线将各节点连接只需较少的线缆(两根线:CAN_H和CAN_L),可靠性也较高。
ISO11898定义了一个总线结构的拓扑:采用干线和支线的连接方式;干线的两个终端都端接一个120欧姆终端电阻;节点通过没有端接的支线连接到总线;对干线与支线的参数都进行了说明。


 
 
在实际应用中可以通过CAN中继器(增加信号强度)将分支网络连接到干线网络上,每条分支网络都符合ISO11898标准,这样可以扩大CAN总线通讯距离,增加CAN总线工作节点的数量。

 

二 CAN总线的节点构成


 
CAN总线节点的硬件构成方案有两种:
(1)、MCU控制器+独立CAN控制器+CAN收发器。独立CAN控制器如SJA10000、MCP2515,其中MCP2515通过SPI总线和MCU连接,SJA1000通过数据总线和MCU连接。
(2)、带有CAN控制器的MCU+CAN收发器。目前,市场上带有CAN控制器的MCU有许多种,如P87C591、LPC2294、C8051F340等。
两种方案的节点构成都需要通过CAN收发器同CAN总线相连,常用的CAN收发器有PCA82C250、PCA82C251、TJA1050、TJA1040等。
两种方案的节点构成各有利弊:
第一种方案编写的CAN程序是针对独立CAN控制器的,程序可移植性好,编写好的程序可以方便的移植到任意的MCU。但是,由于采用了独立的CAN控制器,占用了MCU的I/O资源,并且电路变得复杂。
第二种方案编写的CAN程序是针对特定选用的MCU,例如LPC2294。程序编写好后,不可以移植。但是,MCU控制器中集成了CAN控制器单元,硬件电路变得简单些。



原文地址:https://www.cnblogs.com/zhj868/p/12496130.html