单片机CAN通信中波特率和采样点设置技巧

一、涉及参数

  • 预分频比位(BRP)
  • 同步段 (Sync_Seg)
  • 传播时间段 (Prop_Seg)
  • 相位缓冲段 1 (Phase_Seg1)
  • 相位缓冲段 2 (Phase_Seg2)
  • 二、相关公式

    1. 时间份额TQ(us) = (2*(BRP+1))/Fosc(MHz);
    2. 标称位时间 = TQ * (Sync_Seg + Prop_Seg  + Phase_Seg1 + Phase_Seg2);
    3. 采样点 = (1 + Prop_Seg  +Phase_Seg1 )/(1|+Prop_Seg  + Phase_Seg1 + Phase_Seg2)
    4. 波特率 Tbit(Kbps)= 1/标称位时间。

    PS:波特率为250Kbps时最佳采样点>82.5%;波特率为500Kbps时最佳采样点为>80%

    三、计算实例

    1. 已知晶振大小为8M,则当BRP=0 时,TQ最小,TQ=2/8=0.25us; 若设置波特率为250KbPS,则标称位时间应为4(16*TQ = 1+7+6+2) ,                                                     采样点=(1+7+6)/(1+7+6+2)*100%=87.5%
    2. 已知晶振大小为X,如果BRP为0(此时TQ最小,波特率最大)CNF2和CNF3同上,TQ=2*(0+1)/X=2/X, Tbit=8TQ=16/X,波特率为X/16Hz,当波特率最大为1000KHz,则X必须为16M晶振。

    作者:0xEA6D5

    物联沃分享整理
    物联沃-IOTWORD物联网 » 单片机CAN通信中波特率和采样点设置技巧

    发表回复