1011|6

1万

帖子

16

TA的资源

版主

楼主
 

【得捷电子Follow me第1期】第七贴:曲折的同步网络时间 [复制链接]

 

这个贴早就应该发了,只不过经过了一段不平常的弯路终于搞定了。

首先,同步网络时间必须得连上网:

import network
import time

wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect('TPLINK555', '12345678')
while not wlan.isconnected() and wlan.status() >= 0:
    print("Waiting to connect:")
    time.sleep(1)

print(wlan.ifconfig())

再联上WIFI的前提下可以手动同步了,也就是把程序上载到板子,然后用SHELL来运行程序。

import time
import utime
import machine
import ntptime
ntptime.NTP_DELTA = 3155644800  
ntptime.host = 'ntp1.aliyun.com'
ntptime.settime()  

print( time.localtime(time.time()))
rtc = machine.RTC()
while True:
    t = rtc.datetime()
    print(t)
    time.sleep(5)

但到了这里,我的TONNY确提示找不到ntptime.py我又是在模块管理搜又是安装可是没有,于是我就用老办法直接找。也从网上找到了两个。但是上载到板子之后确时间总是不对。

我又把程序整合了一下:

import time
import network

ssid = 'TPLINK555'
password = '12345678'

wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect(ssid, password)

# Wait for connect or fail
max_wait = 10
while max_wait > 0:
    if wlan.status() < 0 or wlan.status() >= 3:
        break
    max_wait -= 1
    print('waiting for connection...')
    time.sleep(1)

# Handle connection error
if wlan.status() != 3:
    raise RuntimeError('network connection failed')
else:
    print('connected')
    status = wlan.ifconfig()
    print( 'ip = ' + status[0] )
    
import ntptime
def sync_ntp():
     ntptime.NTP_DELTA = 3155644800#3155673600#3155644800   # 可选 UTC+8偏移时间(秒),不设置就是UTC0
     ntptime.host = 'ntp1.aliyun.com'  # 可选,ntp服务器,默认是"pool.ntp.org"
     ntptime.settime()   # 修改设备时间,到这就已经设置好了
    
sync_ntp()
# 已经设置好了,随便用
from machine import RTC
rtc = RTC()
print(rtc.datetime())

显示的时间还是不对。

 

。。。。。。。。。。。。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。。。。。。。。。。。。。。

愁死我了。。。。。。正当我想就这样在贴子说明一下得了。这时我看到了一个贴子:

micropython实现ntp获取网络时间(UTC+8)

https://blog.csdn.net/zld_555/article/details/106238482

 

上面有ntptime的原码。

我下来之后直接用它的ntptime.py,正常了,以下是结果:

得感谢发表那篇文章的网友。否则糊弄过去十年八年的都是它。

最新回复

thonny是没有,是micropython的源码:   https://github.com/micropython/micropython   详情 回复 发表于 2023-5-18 15:05
点赞 关注
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复
举报

7244

帖子

2

TA的资源

版主

沙发
 

看了一下ntptime.py感觉并不复杂,我也保存一下,后面说不定能用上。

 
 
 

回复

6565

帖子

10

TA的资源

版主

板凳
 

同步时间都是统一和哪里要时间?  

点评

东八区区时  详情 回复 发表于 2023-5-17 14:14
个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

回复

1万

帖子

16

TA的资源

版主

4
 
秦天qintian0303 发表于 2023-5-17 11:38 同步时间都是统一和哪里要时间?  

东八区区时

个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 
 

回复

1万

帖子

25

TA的资源

版主

5
 

在 micropython 的源码中,已经包含很多相关的模块,包括 ntptime。

点评

我的TONNY没有,是不是有点见鬼了  详情 回复 发表于 2023-5-18 14:58
 
 
 

回复

1万

帖子

16

TA的资源

版主

6
 
dcexpert 发表于 2023-5-17 14:18 在 micropython 的源码中,已经包含很多相关的模块,包括 ntptime。

我的TONNY没有,是不是有点见鬼了

点评

thonny是没有,是micropython的源码:   https://github.com/micropython/micropython  详情 回复 发表于 2023-5-18 15:05
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 
 

回复

1万

帖子

25

TA的资源

版主

7
 
ddllxxrr 发表于 2023-5-18 14:58 我的TONNY没有,是不是有点见鬼了

thonny是没有,是micropython的源码:

 

https://github.com/micropython/micropython

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表