c++ 获取时间戳_esp32系列教程05:时间同步 SNTP 介绍和使用

本文介绍了如何在ESP32设备上使用SNTP协议同步时间到UNIX时间戳,包括SNTP的工作原理、参考代码、使用说明和调试方法。通过设置SNTP服务器地址和配置LWIP参数,实现时间同步,并提供了SNTP请求和回复报文的抓包展示。
摘要由CSDN通过智能技术生成

简介

SNTP 协议是用来同步本地的时间到 unix 时间戳. 通常嵌入式设备上电, 连接 AP(access point), 获取 IP 地址后, 就需要使用 SNTP 协议获取全球时间. 以便于下一步的应用交互和使用.

SNTP 工作原理比较简单, 通俗来说, 就是设备向 SNTP server 发送一包 SNTP 请求, 服务器收到请求后回复一包 SNTP reply. 其中 SNTP reply 中就含有 unix 时间戳.

参考代码

#include 
#include
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "lwip/apps/sntp.h"
#include "esp_log.h"

static const char *TAG = "sntp";

static void esp_initialize_sntp(void)
{
ESP_LOGI(TAG, "Initializing SNTP");
sntp_setoperatingmode(SNTP_OPMODE_POLL);
sntp_setservername(0, "ntp1.aliyun.com");
sntp_init();
}
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值