?1、安裝umqtt,點(diǎn)擊菜單工具->管理包
2、搜索umqtt
3、在查找結(jié)果里面點(diǎn)擊按裝:
4、然后在已安裝的包里就看到umqtt了。
5、書如程序代碼如下:
from umqtt.simple import MQTTClient
from machine import Pin
import network
import time
ssid='ssid'
passwd='wifipwd'
client_id = "po20t"
mserver = 'ip'
port=1883
mqttuser = "user"
mqttpwd = "pwd"
topic_ctl = b'led_ctl'#設(shè)備訂閱的主題,客戶端推送消息的主題
topic_sta = b'led_sta'#客戶端訂閱的主題,設(shè)備推送消息的主題
client = None
wlan = None
led1=Pin(2, Pin.OUT, value=1)
led2=Pin(5, Pin.OUT, value=1)
def sub_callback(topic, msg):
"""
收到訂閱消息回調(diào)
"""
global client
print((topic_ctl, msg))
if msg == b'led1 ON' or msg == b'led1 on':
pub_msg = 'LED1: ON-state'
led1.value(0)
elif msg == b'led1 OFF' or msg == b'led1 off':
pub_msg = 'LED1: OFF-state'
led1.value(1)
elif msg == b'led2 ON' or msg == b'led2 on':
pub_msg = 'LED2: ON-state'
led2.value(0)
elif msg == b'led2 OFF' or msg == b'led2 off':
pub_msg = 'LED2: OFF-state'
led2.value(1)
else:
pub_msg = 'other msg'
client.publish(topic_sta, pub_msg, retain=True)
def connectWiFi():
"""
連接到WiFi網(wǎng)絡(luò)
"""
global wlan
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.disconnect()
wlan.connect('HUAWEI-H10R9U', "18977381885@")
while(wlan.ifconfig()[0]=='0.0.0.0'):
time.sleep(1)
print(wlan.ifconfig())
try:
connectWiFi()
client = MQTTClient(client_id, mserver, port=1883,user=mqttuser,password=mqttpwd)
client.set_callback(sub_callback)
client.connect()
client.subscribe(topic_ctl)
client.publish(topic_sta, 'ESP32 Device online', retain=True)
print("Connected to %s, subscribed to %s topic" % (mserver, topic_ctl))
while True:
client.wait_msg()
finally:
if client is not None:
print('off line')
client.disconnect()
wlan.disconnect()
wlan.active(False)
5、保存到開發(fā)板,然后執(zhí)行:
6、打開mqttx發(fā)送消息:這樣連接到遠(yuǎn)程的Mqtt就愉快的完成了,后面可以完成一些數(shù)據(jù)交換與控制了。
審核編輯:湯梓紅
?
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
服務(wù)器
+關(guān)注
關(guān)注
13文章
9826瀏覽量
88210 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5725瀏覽量
105570 -
MQTT
+關(guān)注
關(guān)注
5文章
690瀏覽量
23775
發(fā)布評論請先 登錄
相關(guān)推薦
熱點(diǎn)推薦
【免費(fèi)試用19期】BPI-Pico-RP2040 開發(fā)板
不同的開發(fā)板,現(xiàn)推出每周一期開發(fā)板免費(fèi)試用活動。第十九期試用的樣品為 BPI-Pico-RP2040 開發(fā)板:開發(fā)板簡介:
發(fā)表于 02-21 17:11
【BPI-Pico-RP2040 開發(fā)板】CircuitPython環(huán)境介紹
首先感謝發(fā)燒友平臺提供的免費(fèi)測試活動,拿到開發(fā)板后,第一時間開箱,就看到了黑色的板子,配合鍍金焊盤,看起來也挺漂亮。BPI-Pico-RP2040 是 Banana Pi 推出的一款搭載RP2040
發(fā)表于 03-15 22:49
【BPI-Pico-RP2040 開發(fā)板】+快速體驗(yàn)MicroPython開發(fā)
下載固件https://micropython.org/download/rp2-pico/ 更新固件按住Boot按鍵,將Type-C USB線一端接開發(fā)板,一端接電腦(如果已經(jīng)接入則重新插拔
發(fā)表于 03-16 23:00
【BPI-Pico-RP2040 開發(fā)板】+Thonny IDE體驗(yàn)
本 連接串口Type-C USB線連接PC和開發(fā)板,看到枚舉的COM設(shè)備 運(yùn)行->選擇解釋器... 選擇設(shè)備和串口 此時就可以在下面的命令行交互編程,也可以在上面文件中編
發(fā)表于 03-16 23:24
【BPI-Pico-RP2040 開發(fā)板】+ 開箱測評與Arduino開發(fā)點(diǎn)燈測試
BPI-Pico-RP2040 開發(fā)板收到了,感謝電子發(fā)燒友與Banana Pi提供的測評機(jī)會。BPI-Pico-RP2040 介紹BPI-Pico-RP2040是Banana Pi推
發(fā)表于 03-17 19:19
【BPI-Pico-RP2040 開發(fā)板】+ 板子硬件原理圖分享
使用BPI-Pico-RP2040編程時,需要了解一下板子硬件原理圖與引腳含義,這里將BPI-Pico-RP2040的原理圖分功能分享出來。【RP2040主芯片】【板子引腳排布】【電源與供電接口
發(fā)表于 03-17 20:07
【BPI-Pico-RP2040 開發(fā)板】與Banana BPI-Pico-RP2040的第一次親密接觸
,MicroPython的固件直接拿來用,直接在MicroPython - Python for microcontrollers下載固件,將其燒錄到BPI-Pico-RP2040開發(fā)板即可。(二
發(fā)表于 03-17 23:03
【BPI-Pico-RP2040 開發(fā)板】+MicroPython初體驗(yàn)
rp2-pico-20230313-unstable-v1.19.1-966-g05bb26010.uf2拖到電腦識別的驅(qū)動中,開發(fā)板就會以MicroPython的方式啟動。使用過程軟件安裝,一直點(diǎn)擊下一步即可,安全完后如下界面選擇當(dāng)前
發(fā)表于 03-18 18:42
【BPI-Pico-RP2040 開發(fā)板】+開發(fā)環(huán)境的搭建與測試
; Arduino Mbed OS RP2040 Boards > RaspberryPi Pico,見圖7所示。圖7 選取開發(fā)板由于是初次在BPI-Pico-RP2040
發(fā)表于 03-19 01:16
【BPI-Pico-RP2040 開發(fā)板】+GPIO口的使用
解決了開發(fā)環(huán)境的問題,下面就從GPIO口入手來掌握它的使用。BPI-Pico-RP2040的引腳使用情況如圖1所示,除了被占用的引腳,均可作為使用的資源。圖1 引腳使用狀況這里先選用引腳2和引腳13
發(fā)表于 03-20 11:00
【BPI-Pico-RP2040 開發(fā)板】+ 板載RGB-LED點(diǎn)亮不同顏色
本篇來測試BPI-Pico-RP2040板載的GRB LED。WS2812介紹BPI-Pico-RP2040板載的RGB LED不是普通的3個顏色用3個引腳單獨(dú)控制的LED,而是通過1個引腳進(jìn)行
發(fā)表于 03-21 22:35
【BPI-Pico-RP2040 開發(fā)板】Banana BPI-Pico-RP2040 驅(qū)動WS2812 彩燈
一、WS2812 和NeoPixelBanana BPI-Pico-RP2040上的板載 WS2812 彩燈連接到GPIO 3引腳,由一個信號線控制。class NeoPixel
發(fā)表于 03-22 21:34
【BPI-Pico-RP2040 開發(fā)板】SSD1306 OLED顯示
本文主要使用BPI-Pico-RP2040開發(fā)板驅(qū)動SSD1306 OLED模塊。一、硬件(一)BPI-Pico-RP2040 開發(fā)板BPI-Pic
發(fā)表于 03-26 22:52
【BPI-Pico-RP2040 開發(fā)板】RP2040可編程 IO (PIO) 使用初探
BPI-Pico-RP2040 開發(fā)板所搭載的RP2040微處理器,相對于其他微處理,最吸引人的一點(diǎn)就是提供了可編程 IO,簡稱PIO。PIO的神奇之處在于,給PIO編程后,它可以自己
發(fā)表于 03-28 22:14
搭載RP2040雙核處理器芯片,BPI-Pico-RP2040 開發(fā)板開發(fā)實(shí)例展示
BPI-Pico-RP2040 是 Banana Pi 推出的一款搭載RP2040芯片的微控制器開發(fā)板,在盡量保留Raspberry Pi Pico

評論