微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > CC2530数据包timestamp是用什么单位记录时间的?

CC2530数据包timestamp是用什么单位记录时间的?

时间:10-02 整理:3721RD 点击:

CC2530数据包timestamp是用什么单位记录时间的?


cc2530 Z-stack中收到的数据包格式为afIncomingMSGPacket_t ,我想知道其中uint32 timestamp; /* receipt timestamp from MAC */  所记录的mac层时间具体在哪里产生并在什么情况下记录的?并且我查看了所记录的时间,其单位不是1ms 也不是1μs,那么到底是什么时间单位记录的。
另外这个时间能否作为节点的本地时间?又该如何调整更改呢?因为我要做节点时间同步的问题。数据结构如下
typedef struct
{
  osal_event_hdr_t hdr; /* OSAL Message header */
  uint16 groupId; /* Message's group ID - 0 if not set */
  uint16 clusterId; /* Message's cluster ID */
  afAddrType_t srcAddr; /* Source Address, if endpoint is STUBAPS_INTER_PAN_EP,
  it's an InterPAN message */
  uint16 macDestAddr; /* MAC header destination short address */
  uint8 endPoint; /* destination endpoint */
  uint8 wasBroadcast; /* TRUE if network destination was a broadcast address */
  uint8 LinkQuality; /* The link quality of the received data frame */
  uint8 correlation; /* The raw correlation value of the received data frame */
  int8 rssi; /* The received RF power in units dBm */
  uint8 SecurityUse; /* deprecated */
  uint32 timestamp; /* receipt timestamp from MAC */
  uint8 nwkSeqNum; /* network header frame sequence number */
  afMSGCommandFormat_t cmd; /* Application Data */
} afIncomingMSGPacket_t;

我最近也在做时间同步的项目,zstack数据包中的timestamp应该是接收到包的MAC层的时间。具体时间单位如下:
timestamp unit is based on a basic time unit called Backoff Period(BP)
a Unit Backoff Period = the transmission time of 80bits(0.32ms)
如果精度要求比较高的话,个人觉得需要使用timer2来做本地时钟。

你好,我也在做时间同步的问题,请问系统占用的time2怎么使用呢?刚接触,不太懂,我就是想提取当前时间,有时间的话可以回复吗?不胜感激

你好,我也在做时间同步的问题,请问系统占用的time2怎么使用呢?刚接触,不太懂,我就是想提取当前时间,有时间的话可以回复吗?不胜感激

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top