关于CAN总线转接器的PCB板设计方案
一、题记
关于CAN总线网上的资料很多,什么《看不会你打死我》或者《有史以来最简单通俗的CAN的讲解!》诸如此类的标题党确实很多了,但总体来说写的都还不错,这里我就不再赘述了,笔者也是看别人的博客学习的,大家可以自行百度。
二、正文
一般来说CAN总线有两种接法:
1、闭环式
接120R的终端电阻,因为CAN总线的信号属于高频信号,所以接此电阻为了实现终端阻抗匹配,防止信号的反射。当然主要在高频的时候,低频就不太适用了。
终端匹配电阻值取决于电缆的阻抗特性,特别注意的是与电缆的长度无关。RS-485、RS-422 、CAN 总线一般采用双绞线(屏蔽或非屏蔽)连接,终端电阻一般介于100至140Ω之间,典型值为120Ω。在实际配置时,在电缆的两个终端节点上,即最近端和最远端,各接入一个终端电阻,而处于中间部分的节点则不能接入终端电阻,否则将导致通讯出错。
我这里也设计了相应的PCB硬件转接板:
【原理图】
【PCB】
经过测试,工作正常。转接板工作流程大抵如此。
2、开环式(我起的比较形象的名字嘿嘿)
这种就是环被打开了,信号的输入端CH和CL都接一个2.2K欧姆的电阻
这种通信速率就会比前一种要慢一些,所以我没设计这种对应的硬件PCB,然后负载顺序接到总线上
三、后记
不过要保证自己绘制PCB板时,尽量让两条总线差分等长,间距不要太大,各负载接到总线的支路也不要过长,不过支路两条线差一点长度也没问题,硬要等长也不是不行。
四、Acknowledge
感谢大佬们的分享!
[1] 秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4 CAN!
[2] [CAN].CAN总线详解