侵权投诉
搜索
更多>> 热门搜索:
当前位置:

OFweek通信网

线缆

正文

bet36体育在线投注

导读: CAN总线一直以来以稳定、容错性高而著称。要想达到这样的效果,其独特的同步机制是非常重要的一点,本文将为大家讲解一下CAN总线的同步机制以及SJW的作用所在。

CAN总线一直以来以稳定、容错性高而著称。要想达到这样的效果,其独特的同步机制是非常重要的一点,本文将为大家讲解一下CAN总线的同步机制以及SJW的作用所在。

CAN总线的同步共有两种方式:硬同步和重同步。

硬同步

在总线刚刚从空闲状态中走出来的时候,在帧头的位置都会进行一次同步。此时所有的节点位时间重新开始,就像所有的运动员都再一次回到了起跑线上。这种同步方式被称作硬同步。

重同步

硬同步时只是在有帧起始信号时起作用,无法确保后续一连串的位时序都是同步的,这个时候重同步就到了发挥作用的时候。具体来说,CAN总线的一个位时间中包含两个缓冲段BS1和BS2:

在两个缓冲段中间的位置,即是读取总线电平的采样点位置,当检测到总线上存在相位差的时候,通过延长BS1段或缩短BS2段来获得同步,这样的方式称为重新同步。

这两个相位缓冲段的延长时间或缩短时间上限由再同步跳转宽度(SJW)给定。采样点是接收节点判断信号逻辑的位置,CAN通讯属于异步通讯,需要通过不断的重新同步才能保证收发节点的采样准确,所以SJW(同步跳转宽度)决定了接收节点是否能有比较好的兼容性。如下图,即是某CAN总线中利用ZLG CANscope进行的采样点与位宽度容忍的快速测试结果:

因此,使用CAN总线的时候,发现位宽度有偏差,则需要对其程序中的位定时寄存器或者晶振进行修正。比如不要使用带小数点的晶振,如11.0592HZ。这样算出来的波特率肯定不准。不要使用陶瓷晶振,会有偏差超过1%的概率,即使重同步也会失败。

波特率计算时,提高适应范围,需要保证12-20(特征16)个的位时间因子,然后通过提高正常节点波特率寄存器中的同步跳转宽度SJW值(加大到2-3个单位时间)来实现。比如使用ZLG两款波特率计算工具,可以计算出良好的波特率寄存器值。

声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

我来说两句

(共0条评论,0人参与)

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

  • 光通讯
  • 射频bet36体育在线网
  • 硬件bet36体育在线网
  • 猎头职位
更多
文章纠错
x
*文字标题:
*纠错内容:
联系邮箱:
*验 证 码:

粤公网安备 44030502002758号