局域网远程控制 控制器局域网( 二 )


图3 典型CAN总线

局域网远程控制 控制器局域网


电源检查
在系统上电以前,应首先检查CAN收发器的一个或者多个电源 。根据所使用的收发器类型,VCC应为3.3V或者5V 。不管您相不相信,在一些情况下,丢失VCC确实为问题的根本原因 。因此,我们应确保VCC存在于收发器的VCC引脚上 。只需检查DMM,便可确认有电源存在 。必须注意电源短路接地(不幸的是,该引脚就在VCC引脚的旁边) 。
显性状态(60Ω总线负载时约为60mA)和隐性状态(10mA)之间所需电流(ICC)差约为50mA 。显性总线状态期间端接电阻差分电压的产生需要这50mA的电流差,并且其随总线负载变化而变化 。DMM还可用在电流模式下,以验证预计ICC电源电流 。由于CAN的开关性质,DMM测得的电流伪平均读取值 。
建议本地旁路电容器至少应为4.7μF,以确保总线状态转换期间有足够的电源缓冲 。否则,收发器的突入电流可能会引起明显的电压电源纹波 。我们可以使用一个示波器来验证电源电压是稳定,还是随着总线状态变化而变化 。转换期间,最好不要让收发器“饥饿” 。收发器受到其限流的保护,但是,当收发器试图驱动总线至显性状态时,如果其中一条总线短路至电源或者接地,则电源电流极高 。如果电压调节器无法提供这么多的电流,则电压电平降至收发器规格范围以下,甚至可能会低至触发收发器的欠压锁定状态 。
【局域网远程控制 控制器局域网】CAN物理层基础知识
一旦完成所有基础检查,就可以检查CAN物理层的核心CAN总线了 。收发器的两个关键组件便是接收器和发射器 。发射器被称作CAN的驱动器 。通过VCC/2共模点(约2.5V)对CAN物理层偏置,见图4 。
图4 简易CAN总线收发器
局域网远程控制 控制器局域网


发收器将单端数字逻辑信号、TXD(或者D)和RXD(或者R)转换为差分CAN总线所要求的电平 。当总线为显性时,在接收节点,其CAN标准定义的差分电压(Vdiff(D))大于1.2V,并且处于逻辑低状态 。当总线为隐性时,在接收节点,其CAN标准定义的差分电压(Vdiff(R))为-120mV≤(Vdiff(R))≤ 12 mV,并且处于逻辑高状态 。两种总线状态均通过收发器内共模网络偏置 。图5显示了典型的总线层级 。
图5 CAN总线状态
局域网远程控制 控制器局域网


对总线进行调试时,最为有用的工具之一便是示波器 。尽管单通道示波器便可看到信号,但最好还是用双或者四通道 。理想情况下,可同时看到TXD、RXD、CANH和CANL,以确保收发器和总线性能如预期 。进行初次调试时,只需一个低带宽示波器,因为标准CAN被限定在1Mbps 。(在不远的将来,在引入拥有灵活数据速率的CAN以后,这种情况将有所改变 。)如果该节点正发送数据比特流,则可在TXD输入端看到输入数据 。差分CAN总线引脚(CANH/CANL)存在传输延迟,同时还存在RXD输出传输延迟 。在CAN中,这些延迟均为循环时间,或者说循环延迟 。如果该节点正在接收,则TXD闲置;但是总线和RXD输出会显示CAN帧 。
为了演示基础CAN总线工作情况,图6显示了一个示波器,它拥有两个模拟通道和两个数字通道,以及一个函数生成器 。CAN总线由两个SN65HVD255D EVM组成,每个在总线上的端接电阻均为120Ω 。示波器函数生成器连接至顶部EVM的TXD输入引脚 。图7中,数字通道1显示了CANH信号(蓝色);模拟通道2显示了CANL信号(黄色);数字通道2显示了RXD信号(绿色) 。尽管该示波器的精确度很低,但这个简单的测试表明,该CAN物理层的表现在总体上符合我们的预期 。

推荐阅读