0. 时间戳简介
时间戳表示的是收到该CAN消息的时刻,通过连续多帧的时间戳,可以计算出CAN消息的发送周期,也可以用于判断CAN消息是否被持续收到。
1. 使用步骤
注意分别是发送和接收的功能:
2. 现象分析_接收时间戳
看下寄存器的情况:
使用时间戳功能,首先得把初始化的时间戳打开
我们接收寄存器里面就存了接收时间戳
通过对2帧数据的值来计算
上位机每帧间隔1000ms,计算结果如下,差值g_RTS大概在7600000
上位机每帧间隔500ms,计算结果如下,差值g_RTS大概在3900000
上位机每帧间隔100ms,计算结果如下,差值g_RTS大概在830000
上位机每帧间隔50ms,计算结果如下,差值g_RTS大概在470000
通过以上计算,暂时无法得出差值和时间之间的关系,但能看的出来接收时间戳的值是差值。
3. 现象分析_发送时间戳
通过计算得出时间戳地址在
cpp
Can0起始地址 0x40007000
+0x50到发送Tbuff寄存器起始地址 0x40007000+0x50=0x40007050
+72到时间戳地址 72=0x48 0x40007050+0x48 = 0x40007098
先看下数据寄存器是否OK,读取数据正常
再看时间戳的寄存器
发送时间戳貌似没法测试