本文主要是介绍【Linux】CAN根据时钟频率、波特率计算采样点详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、采样点知识回顾
参考博客:【CAN】知识点:帧类型、数据帧结构、传输速率、位时间、采样点
CAN 采样点是指在一个数据位的传输周期内,接收器实际采样数据的时间点。这个时间点是以百分比来表示的,它决定了在数据位的传输周期中,何时读取数据位的值。
正确设置采样点对于确保在不同节点间的数据同步和减少误差非常重要。
数据同步:在 CAN 网络中,所有节点必须在相同的时间点采样数据,以确保数据的一致性。
抗干扰能力:合适的采样点可以帮助系统更好地抵抗电气噪声和其他干扰。
采样点的计算公式为:
采样点设置在 75% 到 90% 之间,以确保数据的稳定性和准确性。
SJW (Resynchronization jump width)
SJW是延长或减少时间段的长度,以补偿由于相位误差引起的相位误差。
采样点推荐设置:
当波特率大于800Kbps时,使用75%;
当波特率大于500Kbp
这篇关于【Linux】CAN根据时钟频率、波特率计算采样点详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!