我想将来自 MQTT 订阅的数据写入 excel 页面。问题是我只能一次打印来自 mqtt 主机的共享数据。在第一个数据之后,我的代码被停止并且需要再次运行。我无法理解这个问题
import paho.mqtt.client as mqttclient
import time
def on_connect(client, userdata, flags, rc):
if rc==0:
print("client is connected")
global connected
connected=True
else:
print("connection failed")
def on_message(client, userdata, msg):
global MessageReceived
print(msg.topic+" "+str(msg.payload.decode()))
MessageReceived = True
#mqtt broker codes:
connected=False
MessageReceived = False
mqtt_port = 1883
mqtt_broker = "onurgonullu.cloud.shiftr.io"
mqtt_username = "onurgonullu"
mqtt_password = "12345"
client = mqttclient.Client("MQTT")
client.username_pw_set(mqtt_username,password=mqtt_password)
client.on_connect=on_connect
client.on_message = on_message
client.connect(mqtt_broker,port=mqtt_port)
client.subscribe("ADC1")
client.loop_start()
while connected!=True:
time.sleep(0.2)
while MessageReceived!=True:
time.sleep(0.2)
当我运行代码后它第一次工作,它不工作,它停止了