原创 CAN的时钟精度

2010-1-4 22:26 5096 6 6 分类: 模拟
此文是参考同事ZH的一个计算文档而成的。这里主要介绍一下CAN的时钟精度的要求。
最近较忙,很多细致的整理和细化工作可能要留待以后了,抛砖引玉吧,把主要的参考文档和分析过程摘录出来了,一直也没有太多涉及这块,前面一直在看晶振方面的资料,把这个话题通过通讯总线的时钟精度的方式引出来。
点击看大图
我们知道一个CAN的位有四个段组成:
Sync_Seg:用于同步总线上的各种节点。
Prop_Seg:对物理延迟进行补偿(物理总线和内部CAN 节点上的传播延迟)。
Phase_Seg1,Phase_Seg2:用于补偿相位边缘误差。在在同步过程中,会缩短或加长这些段。
时钟和CAN的位时序的关系如下:
点击看大图
所有的CAN 位时序计算均基于时间量(TQ),它定义为固定的时间单位,由振荡器导出,取值介于8 和25 之间。按照时间方面的观点,1 个TQ 等效于1Mbps 总线速度下1 微秒位长度的1/25th 位或40 纳秒。
7242e77b-ac1b-482a-917a-87c71cdb3d3d.JPG
点击看大图
1.总线发生错误的时候【电气干扰】,位填充保证了在重新同步之间有最大10位的时间(5显性位+5隐性位后+1显性位)
2.来自错误节点的错误标志由6个显性位组成,在错误标志位之前可能最多有6个显性位。如果发生错误的时候,一个节点必须在重新同步后正确采样第13个位。
点击看大图
一般计算位定时参数有六个步骤:
第1步:确定
PROP_SEG的最低允许的时间。

第2步:选择的CAN系统时钟频率

第3步:计算PROP_SEG时间
如果结果大于8,回到第2步,然后选择一个较低的CAN系统时钟频率。

第4步:确定PHASE_SEG1,PHASE_SEG2

第5步:确定RJW

第6步:计算需要从方程振荡器宽容

a10fb4c8-0b63-47a5-8ee3-eda85008465b.JPG

以上过程的计算过程如下:
cc9bb075-6c64-414a-8051-17355f857761.JPG
可参考的文档:
The Configuration of the CAN Bit Timing

CAN Bit Timing Requirements


PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条