找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

M452系列CAN总线在高速率下的波特率采样点配置

[复制链接]
跳转到指定楼层
楼主
匿名  发表于 昨天 09:45 回帖奖励 |正序浏览 |阅读模式
在使用M452VLI6AE开发车载网关时,CAN通信速率设定为1Mbps。在长距离测试中发现偶尔会出现CRC错误。分析波形发现位宽虽然正确,但采样点似乎有些靠前,处于信号边沿不稳定的区域。查阅手册发现M452的CAN控制器波特率分频器精度有限。请问大家在配置1Mbps CAN时,通常如何选择SJW、Prop_Seg和Phase_Seg的参数组合?有没有推荐的工具或者计算公式来确保采样点落在75%-87.5%的最佳区间内?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具

沙发
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中的较小值






回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU