中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

樹莓派如何實現mqtt通信

發布時間:2021-11-20 09:15:29 來源:億速云 閱讀:289 作者:小新 欄目:互聯網科技

這篇文章主要為大家展示了“樹莓派如何實現mqtt通信”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“樹莓派如何實現mqtt通信”這篇文章吧。

1、sudo pip install paho-mqtt

2、python代碼

# -*- coding: utf-8 -*- 
import paho.mqtt.client as mqtt
# import RPi.GPIO as GPIO
import json,sys


# if sys.version_info < (3, 0):
#     reload(sys)
#     sys.setdefaultencoding('utf8')
# else:
#     raw_input = input
username='public'
password='123456'
hostname='xxx.xxx.xxx.xxx'

# BCM GPIO編號
pins = [17,18,27,22,23,24,25,4]
def gpio_setup():
    # 采用BCM編號
    GPIO.setmode(GPIO.BCM)
    # 設置所有GPIO為輸出狀態,且輸出低電平
    for pin in pins:
        GPIO.setup(pin, GPIO.OUT)
        GPIO.output(pin, GPIO.LOW)
       
def gpio_destroy():
    for pin in pins:
        GPIO.output(pin, GPIO.LOW)
        GPIO.setup(pin, GPIO.IN)
       
# 連接成功回調函數
def on_connect(client, userdata, flags, rc):
    print("Connected with result code " + str(rc))
    # 連接完成之后訂閱gpio主題
    client.subscribe("gpio")

# 消息推送回調函數 .decode("utf-8")
def on_message(client, userdata, msg):

    print(msg.topic+""+str(msg.payload))
    #獲得負載中的pin 和 value
    # gpio = json.loads(str(msg.payload))

    # if gpio['pin'] in pins:
    #     if gpio['value'] == 0:
    #         GPIO.output(gpio['pin'], GPIO.LOW)
    #     else:
    #         GPIO.output(gpio['pin'], GPIO.HIGH)

if __name__ == '__main__':
    client = mqtt.Client()
    client.on_connect = on_connect
    client.on_message = on_message
    # gpio_setup()
   
    try:
        # 請根據實際情況改變MQTT代理服務器的IP地址及賬戶密碼認證
        #client.username_pw_set(username,password)
        client.connect("xxx.xxx.xxx.xxx", 1883, 60)
        client.loop_forever()
    except KeyboardInterrupt:
        client.disconnect()
        gpio_destroy()

發送數據為{"pin":12,"value":1}

以上是“樹莓派如何實現mqtt通信”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兰考县| 安庆市| 龙岩市| 涿州市| 武胜县| 芜湖县| 阿合奇县| 新晃| 兖州市| 金川县| 安丘市| 满洲里市| 西城区| 宁波市| 萨嘎县| 金阳县| 湖口县| 福泉市| 邯郸市| 涞源县| 额济纳旗| 嘉兴市| 沙洋县| 宝鸡市| 巴里| 阿克陶县| 长武县| 宜宾县| 乐安县| 崇明县| 汉沽区| 湾仔区| 来凤县| 铜山县| 康定县| 阿尔山市| 肇源县| 乐至县| 大新县| 定襄县| 乐业县|