Arduino 网络时间同步:使用NTP库实现实时时间获取
要在Arduino上实现网络同步时间,可以使用NTP(网络时间协议)库。以下是一个简单的示例代码:
#include <WiFi.h>
#include <NTPClient.h>
#include <WiFiUdp.h>
const char* ssid = 'Your WiFi SSID';
const char* password = 'Your WiFi Password';
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP);
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println('Connecting to WiFi...');
}
timeClient.begin();
timeClient.setTimeOffset(0); // 设置时区,单位为秒
}
void loop() {
timeClient.update();
Serial.println(timeClient.getFormattedTime());
delay(1000);
}
首先,你需要包含WiFi、NTPClient和WiFiUdp库。
然后,定义你的WiFi SSID和密码。
在setup()函数中,启动串口通信,并连接到WiFi网络。
然后,初始化NTPClient,并设置时区(以秒为单位)。
在loop()函数中,调用timeClient.update()来获取最新的时间信息。
最后,使用Serial.println()将时间打印到串口,并使用delay()函数延迟1秒。
请确保你的Arduino连接到了互联网,并且正确设置了WiFi SSID和密码。
原文地址: https://www.cveoy.top/t/topic/pOfh 著作权归作者所有。请勿转载和采集!