在ESP32上用ntptime同步时间发现怎么改都是UTC0 暂时利用time进行+8*3600解决问题
def do_connect():
import network
print('connecting to network...')
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
if not wlan.isconnected():
print('connecting to network...')
wlan.connect('WiFi', '******')
while not wlan.isconnected():
pass
print('network config:', wlan.ifconfig())
def sync_ntp():
print("开始同步网络时间")
import ntptime
import time
from machine import RTC
rtc = RTC()
try:
ntptime.NTP_DELTA = 3155644800 # 可选 UTC+8偏移时间(秒),不设置就是UTC0
ntptime.host = 'ntp1.aliyun.com' # 可选,ntp服务器,默认是"pool.ntp.org" 这里使用阿里服务器
#npttime.
ntptime.settime() # 修改设备时间,到这就已经设置好了
localtime_now=time.time()+8*3600
localtime_now=time.localtime(localtime_now)
rtc.datetime((localtime_now[0],localtime_now[1],localtime_now[2],localtime_now[6],localtime_now[3],localtime_now[4],localtime_now[5],localtime_now[7]))
except Exception as e:
print("同步ntp时间错误",repr(e))
localtime_now=time.localtime()
print("localtime_now",localtime_now)
do_connect()
sync_ntp()