基于例程中SNTP接口实现获取网络时间戳后,发现精度只能到秒级,SNTP是否有获取毫秒级时间的办法呢?
// update 'now' variable with current time
time(&now);
// Set timezone to China Standard Time
setenv("TZ", "CST-8", 1);
tzset();
localtime_r(&now, &timeinfo);
strftime(strftime_buf, sizeof(strftime_buf), "%c", &timeinfo);
ESP_LOGI(TAG, "The current date/time in Shanghai is: %s", strftime_buf);
ESP_LOGI(TAG, "timestamp = %ld", now);
【已解决】IDF4.4 的SNTP接口是否有获取毫秒级别时间的方法
Re: IDF4.4 的SNTP接口是否有获取毫秒级别时间的方法
long long platform_tick_get_ms(void)
{
struct timeval te;
gettimeofday(&te, NULL); // get current time
long long milliseconds = te.tv_sec * 1000LL + te.tv_usec / 1000; // calculate milliseconds
// printf("milliseconds: %lld\n", milliseconds);
return milliseconds;
}
{
struct timeval te;
gettimeofday(&te, NULL); // get current time
long long milliseconds = te.tv_sec * 1000LL + te.tv_usec / 1000; // calculate milliseconds
// printf("milliseconds: %lld\n", milliseconds);
return milliseconds;
}
Re: IDF4.4 的SNTP接口是否有获取毫秒级别时间的方法
感谢,已解决,原来是类型长度没定义好。
Who is online
Users browsing this forum: No registered users and 60 guests