单片机CAN通信中波特率和采样点设置技巧
一、涉及参数
二、相关公式
- 时间份额TQ(us) = (2*(BRP+1))/Fosc(MHz);
- 标称位时间 = TQ * (Sync_Seg + Prop_Seg + Phase_Seg1 + Phase_Seg2);
- 采样点 = (1 + Prop_Seg +Phase_Seg1 )/(1|+Prop_Seg + Phase_Seg1 + Phase_Seg2)
- 波特率 Tbit(Kbps)= 1/标称位时间。
PS:波特率为250Kbps时最佳采样点>82.5%;波特率为500Kbps时最佳采样点为>80%
三、计算实例
- 已知晶振大小为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%
- 已知晶振大小为X,如果BRP为0(此时TQ最小,波特率最大)CNF2和CNF3同上,TQ=2*(0+1)/X=2/X, Tbit=8TQ=16/X,波特率为X/16Hz,当波特率最大为1000KHz,则X必须为16M晶振。
作者:0xEA6D5