当前位置:首页 > 技术 > Python > 正文内容

micropython连接到wifi上面

Watrt7年前 (2019-12-31)Python29130
import network,time,ujson,urequests,ntptime
from machine import RTC
nic=network.WLAN(network.STA_IF)
nic.active(True)
#nic.connect('ZCWH','00004157')
nic.connect('028sd.com','88884444')
nic.connect('028sd.com','88884444')
connecti=10
while not(nic.isconnected() or connecti==0):
  print("正在连接",connecti)
  time.sleep(1)
  connecti-=1
if(nic.isconnected()):
  print("连接成功")
  gettext=urequests.get('http://apikey.net')
  #print(gettext.text[1:])
  parsed = ujson.loads(gettext.text[1:])
  #处理IP地址和时间
  IPadd=parsed['data']['IP_Address']
  nowtime=parsed['data']['Current-Time']
  rtc = RTC()
  rtcdate=list(map(int, str.split(str.split(nowtime,' ')[0],'-'))) 
  rtctime=list(map(int, str.split(str.split(nowtime,' ')[1],':'))) 
  print(IPadd)
  print(nowtime)
  print(rtcdate+[5]+rtctime+[0])
  rtc.datetime((rtcdate+[5]+rtctime+[0])) # set a specific date and time
  print(rtc.datetime())
  exec(open('./oled.py').read(),globals())
else:
  print("连接超时..")

我写的比较多一些。就是连接到wifi后从网络读取时间写到rtc里面然后在切换到oled上面显示出来 。


打赏 支付宝打赏 微信打赏

相关文章

micropython 使用oled显示前面设置的时间。

micropython 使用oled显示前面设置的时间。

from machine import I2C, Pin import ssd1306,time    #这里引用的是官方的ssd1306库。可以在github上下载下来放入库中。 i2c = I2C(-1, Pin(14), Pin(2)) display = ssd1306.SSD1306_I2C(128, 64, i...

python利用pyinstaller打包简明教程

python利用pyinstaller打包简明教程

在创建了独立应用(自包含该应用的依赖包)之后,还可以使用 PyInstaller 将 Python 程序生成可直接运行的程序,这个程序就可以被分发到对应的 Windows 或 Mac OS X 平台上运行。安装 PyInstallePython 默认并不包含 PyInstaller 模块,因此需要自行安装 PyInstaller 模块。安装 PyInstaller 模块与安装其他 Python 模块一样,使用 pip 命令安装即可。在命令行输入如下命令:pip install ...

pyqt5 开发入门

pyqt5 开发入门

使用:pyqt5-tools designer 进行窗口设计使用命令:pyuic5 -o textedit.py textedit.ui  把设计的UI文件转换成py文件注意:使用对话框的话要继承于class Ui_MainWindow(QtWidgets.QMainWindow):使用信号的方法:self.actionnew.triggered.connect(self.new_btn)    self.new_btn 为当前类下的方法下面示例:#&nb...

micropython 1.17编译出现FAILED: esp-idf/mbedtls/x509_crt_bundle

micropython 1.17编译出现FAILED: esp-idf/mbedtls/x509_crt_bundle

micropython 1.17编译出现FAILED: esp-idf/mbedtls/x509_crt_bundle 错误解决方法。出现错误的原因是ssl中的证书过期了。解决办法:1:(Top) > Component config > mbedTLS > Certificate Bundle->Enable trusted root certificate bundle   禁用2:修改配置文件 :sdkconfig.base  中添加入...

micropython 清除flash磁盘内容

micropython 清除flash磁盘内容

对于ESP32,一般是在命令行中使用esptool.py清除flash,如果是在程序中想清除flash内容,或者更换文件系统格式,可以用下面方法:import uos uos.VfsFat.mkfs(bdev)如果使用 LFS2 文件系统,命令是import uos uos.VfsLfs2.mkfs(bdev)对于STM32,默认没有bdev设备,需要使用下面方法:import uos flash = pyb.Flash(start=0)u...

word转换服务python版本

word转换服务python版本

网页无法打开word文档。但是可以转换为pdf来在网页上找开。用python实现在线转换服务。from flask import Flask, request, jsonify,redirect,send_from_directory from win32com.client import constants,gencache import requests import os impor...

python使用requests库下载文件

python使用requests库下载文件

import os import requests def downfile(url): try: url=url.split("@")[0].split("?")[0] urlfile=url.split("/")[-1] print(urlfile) except Exception as e: print("地址不正确...

使用 tqdm 库在控制台中实现进度条

使用 tqdm 库在控制台中实现进度条

简单用法:from tqdm import tqdm  for i in tqdm(range(2)):   pass100%|███████████████████| 2/2 [00:00<00:00, 1998.72it/s]  从上面可以看到生成一个长度为2的列表传入tqdm中,在for中迭代,此时输出了进度条,这里tqdm全部使用了默认参数,默认进度条样式就是如上所示;通常默认进度条所输出...