?1、安裝umqtt,點擊菜單工具->管理包
2、搜索umqtt
3、在查找結果里面點擊按裝:
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'#設備訂閱的主題,客戶端推送消息的主題
topic_sta = b'led_sta'#客戶端訂閱的主題,設備推送消息的主題
client = None
wlan = None
led1=Pin(2, Pin.OUT, value=1)
led2=Pin(5, Pin.OUT, value=1)
def sub_callback(topic, msg):
"""
收到訂閱消息回調
"""
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網絡
"""
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、保存到開發板,然后執行:
6、打開mqttx發送消息:這樣連接到遠程的Mqtt就愉快的完成了,后面可以完成一些數據交換與控制了。
審核編輯:湯梓紅
?
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
服務器
+關注
關注
12文章
8183瀏覽量
82734 -
開發板
+關注
關注
25文章
4511瀏覽量
94495 -
MQTT
+關注
關注
5文章
546瀏覽量
22037
發布評論請先 登錄
相關推薦
【免費試用19期】BPI-Pico-RP2040 開發板
不同的開發板,現推出每周一期開發板免費試用活動。第十九期試用的樣品為 BPI-Pico-RP2040 開發板:開發板簡介:
發表于 02-21 17:11
【BPI-Pico-RP2040 開發板】CircuitPython環境介紹
首先感謝發燒友平臺提供的免費測試活動,拿到開發板后,第一時間開箱,就看到了黑色的板子,配合鍍金焊盤,看起來也挺漂亮。BPI-Pico-RP2040 是 Banana Pi 推出的一款搭載RP2040
發表于 03-15 22:49
【BPI-Pico-RP2040 開發板】+快速體驗MicroPython開發
下載固件https://micropython.org/download/rp2-pico/ 更新固件按住Boot按鍵,將Type-C USB線一端接開發板,一端接電腦(如果已經接入則重新插拔
發表于 03-16 23:00
【BPI-Pico-RP2040 開發板】+Thonny IDE體驗
本 連接串口Type-C USB線連接PC和開發板,看到枚舉的COM設備 運行->選擇解釋器... 選擇設備和串口 此時就可以在下面的命令行交互編程,也可以在上面文件中編
發表于 03-16 23:24
【BPI-Pico-RP2040 開發板】+ 開箱測評與Arduino開發點燈測試
BPI-Pico-RP2040 開發板收到了,感謝電子發燒友與Banana Pi提供的測評機會。BPI-Pico-RP2040 介紹BPI-Pico-RP2040是Banana Pi推
發表于 03-17 19:19
【BPI-Pico-RP2040 開發板】+ 板子硬件原理圖分享
使用BPI-Pico-RP2040編程時,需要了解一下板子硬件原理圖與引腳含義,這里將BPI-Pico-RP2040的原理圖分功能分享出來?!?b class='flag-5'>RP2040主芯片】【板子引腳排布】【電源與供電接口
發表于 03-17 20:07
【BPI-Pico-RP2040 開發板】與Banana BPI-Pico-RP2040的第一次親密接觸
,MicroPython的固件直接拿來用,直接在MicroPython - Python for microcontrollers下載固件,將其燒錄到BPI-Pico-RP2040開發板即可。(二
發表于 03-17 23:03
【BPI-Pico-RP2040 開發板】+MicroPython初體驗
rp2-pico-20230313-unstable-v1.19.1-966-g05bb26010.uf2拖到電腦識別的驅動中,開發板就會以MicroPython的方式啟動。使用過程軟件安裝,一直點擊下一步即可,安全完后如下界面選擇當前
發表于 03-18 18:42
【BPI-Pico-RP2040 開發板】+開發環境的搭建與測試
; Arduino Mbed OS RP2040 Boards > RaspberryPi Pico,見圖7所示。圖7 選取開發板由于是初次在BPI-Pico-RP2040
發表于 03-19 01:16
【BPI-Pico-RP2040 開發板】+GPIO口的使用
解決了開發環境的問題,下面就從GPIO口入手來掌握它的使用。BPI-Pico-RP2040的引腳使用情況如圖1所示,除了被占用的引腳,均可作為使用的資源。圖1 引腳使用狀況這里先選用引腳2和引腳13
發表于 03-20 11:00
【BPI-Pico-RP2040 開發板】+ 板載RGB-LED點亮不同顏色
本篇來測試BPI-Pico-RP2040板載的GRB LED。WS2812介紹BPI-Pico-RP2040板載的RGB LED不是普通的3個顏色用3個引腳單獨控制的LED,而是通過1個引腳進行
發表于 03-21 22:35
【BPI-Pico-RP2040 開發板】Banana BPI-Pico-RP2040 驅動WS2812 彩燈
一、WS2812 和NeoPixelBanana BPI-Pico-RP2040上的板載 WS2812 彩燈連接到GPIO 3引腳,由一個信號線控制。class NeoPixel
發表于 03-22 21:34
【BPI-Pico-RP2040 開發板】SSD1306 OLED顯示
本文主要使用BPI-Pico-RP2040開發板驅動SSD1306 OLED模塊。一、硬件(一)BPI-Pico-RP2040 開發板BPI-Pic
發表于 03-26 22:52
【BPI-Pico-RP2040 開發板】RP2040可編程 IO (PIO) 使用初探
BPI-Pico-RP2040 開發板所搭載的RP2040微處理器,相對于其他微處理,最吸引人的一點就是提供了可編程 IO,簡稱PIO。PIO的神奇之處在于,給PIO編程后,它可以自己
發表于 03-28 22:14
搭載RP2040雙核處理器芯片,BPI-Pico-RP2040 開發板開發實例展示
BPI-Pico-RP2040 是 Banana Pi 推出的一款搭載RP2040芯片的微控制器開發板,在盡量保留Raspberry Pi Pico的功能,外形尺寸,引腳布局的前提下,
評論