This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2652R:在配置为休眠终端设备(SED)的 CC2652R 器件上使用网络时间同步 OpenThread API

Guru**** 2905430 points

Other Parts Discussed in Thread: CC2652R

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/907914/cc2652r-using-network-time-synchronization-openthread-api-on-cc2652r-device-configured-as-sleepy-end-device-sed

器件型号:CC2652R

您好!

我目前将 CC2652R 用于其中一个 OpenThread 应用、作为休眠终端设备。 我目前正在探索同步器件时间的选项、并发现 Open Thread 确实有一个 API 可用于在节点之间同步时间。 使用此信息、我对 SDK 库执行了以下操作:

1.将 "OPENTHREAD_CONFIG_ENABLE_TIME_SYNC"宏配置为"1"以启用该功能

2.当我使用 network_time.h 中的"otNetworkTimeGet"函数时、OpenThread MTD 库无法编译

修复了此函数的编译问题、现在我一直无法找到"time.c"文件。 由于这个原因、编译失败、这是因为它无法找到 在"time.h"文件下声明的函数"otPlatformTimeGet"。  

问题如下:

TI OpenThread SDK 是否支持此功能? 如果是、我可以在哪里找到我要查找的文件? 或有关此内容的任何详细信息将很有帮助...

谢谢、

Sanket

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    从最新的 SDK (4.10)开始、不支持此功能。

    time.h 中的函数需要在某些文件中实现、例如 time.c

    例如、这与使用函数 PlatformAlarmMicroGetNow 的 openthread 平台文件 timer.cpp 类似、后者在 alarm_micro.c 中定义(例如、在导入的 CCS 工程 temp_sensor_CC26X2R1_LAUNCHXL_tirtos_ccs\platform\中)。
    实际上 、PlatformAlarmMicroGetNow 可能会用作创建 otPlatTimeGet 的参考、因为两个函数都具有相同的描述("当前时间、以微秒为单位。")。

    此致、
    Toby

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的回答!

    只是想知道这个函数必须使用哪个时钟、它是 RTC 还是任何其他系统时钟? 换句话说、网络时间同步功能将获取/修改哪些时钟的任何信息等。

    谢谢、

    Sanket

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、这将是 RTC。

    您可以使用与 alarm_micro.c 中所示相同的函数调用

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢!