CAN总线波特率配置与位时间详解

需积分: 44 141 下载量 111 浏览量 更新于2024-08-10 收藏 9.9MB PDF 举报
"波特率设置-点云预处理" 在CAN(Controller Area Network)通信中,波特率设置是一项关键参数,确保总线上的所有节点能够正确地同步和交换数据。波特率指的是每秒钟传输的位数,它决定了数据的传输速度。在点云预处理过程中,波特率的设置至关重要,因为它直接影响到数据的实时性和准确性。 27.9 波特率设置部分解释了CAN协议使用非归零(NRZ)编码,不包含时钟信息,接收端必须自行恢复时钟以保持同步。为此,接收节点配备了数字锁相环(DPLL),它能调整接收时钟以匹配发送器的时钟,即使存在节点间的时钟差异和发送时间变化。 PIC18F66K80系列微控制器利用DPLL实现位时序,将位时间划分为若干时间份额(TQ),这些小时间周期由振荡器周期决定。位时间由四个主要时间段组成:同步段(Sync_Seg)、传播时间段(Prop_Seg)、相位缓冲段1(Phase_Seg1)和相位缓冲段2(Phase_Seg2)。每个时间段都是TQ的整数倍,位时间的最小值为8个TQ,最大值为25个TQ,对应不同的波特率。 标称比特率是理想条件下的比特率,不受硬件限制,最大值为1 Mbps。标称位时间则由公式27-1定义,它可以根据需要配置的时间段进行调整。时间份额TQ与振荡器周期、波特率预分频比(BRP)相关,公式27-3展示了这种关系。FOSC是实际使用的时钟频率,BRP是可编程的预分频比,取值范围为1到64。 举例来说,如果使用10 MHz的晶振,FOSC可以是10 MHz或在HS-PLL模式下的40 MHz,这将影响TQ的计算。通过调整BRP值,可以改变波特率,以适应不同时钟频率的设备之间的通信。 在实际应用中,CAN总线上的器件并不需要相同的主要振荡器时钟频率,但必须有相同的比特率。这就要求通过适当配置波特率预分频比和时间份额来调整每个节点的比特率,以确保所有设备的数据同步。 总结来说,波特率设置在点云预处理中起到关键作用,因为它保证了CAN总线上的数据通信准确无误。通过精细调节PIC18F66K80系列微控制器的DPLL和位时序参数,可以实现不同频率时钟下的波特率匹配,从而确保点云数据的有效传输和处理。