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

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

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

硬同步

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

 

 

重同步

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

 

 

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

 

 

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

 

 

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

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

未来,随着 5G、物联网、人工智能等技术的发展,可编程波特率产生器将面临更高的性能要求和更复杂的应用场景。通过不断创新和技术进步,可编程波特率产生器将在更广泛的领域发挥重要作用,推动数字通信技术的发展和应用。

关键字: 波特率

在现代汽车电子、工业自动化以及嵌入式系统领域,CAN(Controller Area Network)总线作为一种高效、可靠的串行通信协议,得到了广泛应用。然而,在实际应用中,我们有时会遇到需要确定未知CAN总线波特率的...

关键字: CAN总线 波特率 汽车电子

UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器)是一种广泛使用的异步串行通信协议。它允许数据在发送端和接收端之间通过单根或多根线进行传输,是许多嵌入式...

关键字: UART协议 波特率

在下述的内容中,小编将会对手把手教大家如何去实现RA UART实现串口波特率自适应,如果串口波特率自适应内容是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。

关键字: 串口 波特率 UART

以下内容中,小编将对波特率的相关内容进行着重介绍和阐述,希望本文能帮您增进对波特率的了解,和小编一起来看看吧。

关键字: 波特率 码元

波特率9600的传输速率为每秒9600个比特,而波特率115200的传输速率为每秒115200个比特,因此,115200的传输速度比9600快得多。

关键字: 波特率 传输速度 MCU

比特率:在数字信道中,比特率是数字信号的传输速率,它用单位时间内传输的二进制代码的有效位(bit)数来表示,其单位为每秒比特数bit/s(bps)。

关键字: 波特率 比特率 信道

在通信领域中,波特率与数据传输速率是两个关键的性能指标。波特率通常用于描述模拟通信系统中的信号调制速率,而数据传输速率则用于描述数字通信系统中的数据传输效率。了解波特率与数据传输速率的关系对于正确选择和配置通信系统至关重...

关键字: 波特率 数据传输速率 模拟通信

串行通信是一种通信方式,其中数据按顺序一位一位地传输。与并行通信不同,串行通信在一条线路上传输数据,因此需要较少的数据线。串行通信主要用于长距离通信,因为它的功耗低、成本低、简单易实现。

关键字: 串行通信 波特率
关闭