获取的是ntp网络时间
import network, ntptime, time
from machine import RTC
# 1.连接WiFi
def do_connect():
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
if not wlan.isconnected():
print('connecting to network...')
wlan.connect('wifiname', 'password')
while not wlan.isconnected():
pass
# print('network config:', wlan.ipconfig())
do_connect()
# 2.获取ntp网络时间
def sync_ntp():
try:
ntptime.NTP_DELTA = 3155644800 # 设置时区UTC+8,可选
ntptime.host = 'ntp.aliyun.com' # 设置ntp服务器,可选,默认pool.ntp.org
ntptime.settime() # 同步时间
except Exception as e:
print('Synchronization NTP time error', repr(e))
sync_ntp()
print(time.localtime())
# 3.设置ESP32时间
rtc = RTC()
localtime = time.localtime()
# 调整成RTC时间格式,ntp的时间是12小时制
rtc_time = (localtime[0], localtime[1], localtime[2], localtime[6], localtime[3]+8, localtime[4], localtime[5], 0)
print(rtc_time)
rtc.datetime((2020, 1, 21, 2, 10, 32, 36, 0)) # 年 月 日 星期 时 分 秒 毫米
print(rtc.datetime())