牛卧堂MCU技术交流

标题: M452系列CAN总线在高速率下的波特率采样点配置 [打印本页]

作者: 匿名    时间: 昨天 09:45
标题: M452系列CAN总线在高速率下的波特率采样点配置
在使用M452VLI6AE开发车载网关时,CAN通信速率设定为1Mbps。在长距离测试中发现偶尔会出现CRC错误。分析波形发现位宽虽然正确,但采样点似乎有些靠前,处于信号边沿不稳定的区域。查阅手册发现M452的CAN控制器波特率分频器精度有限。请问大家在配置1Mbps CAN时,通常如何选择SJW、Prop_Seg和Phase_Seg的参数组合?有没有推荐的工具或者计算公式来确保采样点落在75%-87.5%的最佳区间内?

作者: chrishu    时间: 昨天 14:29
可以按照下面的规则去设置
时间片Tq= BRP+1/时钟  
位时间 = 传输速率/时钟 = n x Tq  =  Sync_Seg+Prop_Seg+Phase_Seg1+Phase_Seg2=1+(Tseg1+1)+(Tsg2+1)=Tseg1+Tsg2+3     16~20Tq左右比较合理
公式中 同步段 = 1
    Tseg1 + 1 =  传播段 + 相位缓冲1
     Tseg2 +1 = 相位缓冲段2
注意:
同步段:Sync_Seg=tq
传播时间段Prop_seg:取决于传输线路的延时时间,需要测量
相位缓冲段1+相位缓冲段2:= 位时间-同步段-传播时间段 = 偶数:Phase_Seg2= Phase_Seg1
                                  = 奇数:Phase_Seg2= Phase_Seg1+1                                  
                              SJW:同步跳转宽度的长度要设为4 和Phase_Seg1中的较小值











欢迎光临 牛卧堂MCU技术交流 (https://nuvoton-mcu.com/) Powered by Discuz! X3.2