MicroPython自带MQTT
以下代码使用MicroPython(2024.12最新固件)自带MQTT库 umqtt.simple 实现了连接巴法云,订阅巴法云上的 esp32led 这个 topic ,经过测试,在一段事件后回自动断开连接,导致服务不可用。经过多次测试,应该是 umqtt.simple 这个库本身的问题。
from umqtt.simple import MQTTClient
import time,json
from machine import Timer
import machine,network
led = machine.Pin(2, machine.Pin.OUT)
class Connect_wifi:
def __init__(self,ssid,passwd):
self.ssid=ssid
self.passwd=passwd
self.wlan= network.WLAN(network.STA_IF)
self.wlan.active(True)
def wifi_status(self):
self.status=self.wlan.ifconfig()
print(f"获取网络状态:{self.status}")
return self.status
def wifi_disconnect(self):
self.wlan.disconnect()
print("正在断开网络……",end='')
self.wifi_status()
time.sleep(2)
def do_connect(self):
self.wlan.scan()
while True:
status=self.wif