工具/软件:TI C/C++编译器
我正在尝试使用"SimpleLink_CC32xx_v2_10_00_04" SDK 以及 AWS - IOT FreeRTOS 来获取 CC3220SF-LAUNCHXL 器件的 NTP 时间。
我尝试按照2种方法进行同步、但方法1的方法为-100、方法2的方法为-102。
请查找我尝试过的以下错误和源代码、并帮助解决此问题。
方法#1:SNTP getTime (NULL、 0、 &timeval、 &ntpTimeStamp);
int32_t RetVal;
uint32_t 秒;
uint32_t secondsFraction;
slNetSock_Timeval_t timeval;
uint64_t ntpTimeStamp = 0;
timeval.tv_sec = 5;
timeval.tv_usec = 0;
RetVal = SNTP getTime (NULL、0、&timeval、&ntpTimeStamp);
IF (RetVal = 0){
//秒值存储在高32位中
秒=(0xFFFF00000000和 ntpTimeStamp)>>32;
//秒分次存储在低32位中
secondsFraction = ntpTimeStamp;
IotLogInfo ("NTP 时间:%d\n"、辅助帧);
}
否则
{
IotLogInfo ("NTP 时间错误:%d\n"、RetVal);
}
方法#2:ntp_getTimeByAddr ((SlNetSock_Addr_t *)&ipv4addr、 &timeval、 &ntpTimeStamp);
uint32_t DestIP[1];
int32_t RetVal;
uint32_t 秒;
uint32_t secondsFraction;
slNetSock_Timeval_t timeval;
uint64_t ntpTimeStamp = 0;
SlNetSock_AddrIn_t ipv4addr;
ipv4addr.sin 系列= SLNETSOCK_AF_iNet;
ipv4addr.sin 端口= SlNetUtil_htons (80);
ipv4addr.sin addr.s_addr = SlNetUtil_htonl (DestIP[0]);
timeval.tv_sec = 5;
timeval.tv_usec = 0;
RetVal = SNTP_getTimeByAddr ((SlNetSock_Addr_t *)&ipv4addr、&timeval、&ntpTimeStamp);
if (RetVal = 0){
//秒值存储在高32位中
秒=(0xFFFF00000000和 ntpTimeStamp)>>32;
//秒分次存储在低32位中
secondsFraction = ntpTimeStamp;
IotLogInfo ("NTP 时间:%d\n"、辅助帧);
}
其他
{
IotLogInfo ("NTP 时间错误:%d\n"、RetVal);
}