ESP32 使用内部RTC 和网络NTP网络授时

#include "Arduino.h"
#include "ztf_esp32_time.h"

ZtfEsp32Time m_time;
void setup()
{
  Serial.begin(115200);
  m_time.update_sys_time(1635148850);//更新系统时间
}
void loop()
{
  Serial.println(m_time.get_sys_stamp());//获取当前时间戳
  ztfTimeInfo m_timeInfo;//获取日期信息
  m_time.get_time_info(&m_timeInfo);
  String date = "当前时间:";
  date = date + m_timeInfo.year + "年" + m_timeInfo.mon + "月" + m_timeInfo.mday + "日 " + m_timeInfo.hour + ":" + m_timeInfo.min + ":" + m_timeInfo.sec + "秒 星期" + m_timeInfo.wday;
  Serial.println(date);
  delay(1000);
}

在这里插入图片描述


https://download.youkuaiyun.com/download/qq_33593411/34208931

使用NTP网络授时


#include "Arduino.h"
#include <WiFi.h>
#include "time.h"
#include "ztf_time.h"


const char* ssid       = "TP-LINK_9E7E";
const char* password   = "ABST123456789";
 
const char* ntpServer = "pool.ntp.org";
const long  gmtOffset_sec = 28800;
const int   daylightOffset_sec = 0;
 
void printLocalTime()
{
  struct tm timeinfo;
  if(!getLocalTime(&timeinfo)){
    Serial.println("Failed to obtain time");
    return;
  }
  Serial.println(&timeinfo, "%A, %Y-%m-%d %H:%M:%S");
}
 
void setup()
{
  Serial.begin(115200);

  Serial.printf("Connecting to %s ", ssid);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
      delay(500);
      Serial.print(".");
  }
  Serial.println(" CONNECTED");
  

  configTime(gmtOffset_sec, daylightOffset_sec, ntpServer);
  printLocalTime();


  WiFi.disconnect(true);
  WiFi.mode(WIFI_OFF);
  
}
 
void loop()
{
  printLocalTime();
  delay(1000);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值