sta*_*One 5 timestamp ntp esp8266 arduino-esp8266
我想获得arduino-esp8266(https://github.com/esp8266/Arduino)的时间戳.
但我不知道如何做到这一点.
我想我们必须从互联网上得到时间,因为ESP8266没有时钟.我们是否只需要一次或每次需要时间戳时都这样做?
我已经通过wifi连接到互联网.
NTP是远程获取时间的可靠方法.像@Marcel这样的NTP库表示正在与服务器建立UDP间隔.因此,在使用之前,您无需对服务器进行任何轮询.以下是1小时偏移和1分钟刷新间隔的NTP库的用法:
#include <NTPClient.h>
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
#define NTP_OFFSET 60 * 60 // In seconds
#define NTP_INTERVAL 60 * 1000 // In miliseconds
#define NTP_ADDRESS "europe.pool.ntp.org"
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP, NTP_ADDRESS, NTP_OFFSET, NTP_INTERVAL);
void setup(){
timeClient.begin();
}
void loop() {
timeClient.update();
}
Run Code Online (Sandbox Code Playgroud)
要随时获取时间戳或格式化时间,请使用以下函数:
String formattedTime = timeClient.getFormattedTime();
unsigned long epcohTime = timeClient.getEpochTime();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15742 次 |
| 最近记录: |