【问题标题】:microgear client is stuck on connectionmicrogear 客户端卡在连接上
【发布时间】:2021-05-03 14:45:22
【问题描述】:

使用https://github.com/netpieio/microgear-python

我的代码:

import microgear.client as microgear
import RPi.GPIO as gpio
import time
import logging

DT=27
SCK=17
m1=12
m2=16
HIGHT=1
LOW=0
sample=0
val=0

appid='Locacell'
gearkey='xxx'
gearsecret='xxx'

microgear.create(gearkey,gearsecret,appid,{"debugmode":True})

def connection():
    logging.debug("connect")
def subscription(topic,message):
    logging.debug(topic+" "+message)
def disconnect():
    logging.debug("disconnect")
microgear.setalias("can")
microgear.on_connect= connection
microgear.on_message= subscription
microgear.on_disconnect= disconnect
microgear.subscribe("/can")
microgear.connect(True)

gpio.setwarning(True)
gpio.setmode(gpio.BCM)
gpio.setup(m1, gpio.OUT)
gpio.setup(m2, gpio.OUT)
gpio.setup(SCK, gpio.OUT)
gpio.output(m1, 0)
gpio.output(m2, 0)

def readCount():
    i=0
    Count=0
print Count
time.sleep(1)

输出是:

...但后来它停止了。

【问题讨论】:

  • 要显示您的代码,请按 {} 并在“在此处输入代码”中粘贴您的代码
  • 或者,使用代码块来格式化您的代码 - 前后行上的三个反引号。请花一些时间阅读How to Askformatting help。您的问题目前无法阅读。
  • AFAICT 您的代码完全按预期工作,正在等待一些 gpio 或其他外部事件
  • 我修正了格式,但请添加一些描述和解释microgear是什么,也许我们可以找到或添加一些标签。
  • 我使用模块 hx711 中的树莓派 post 参数和 loadcell 到我的网站

标签: python iot gpio


【解决方案1】:

这似乎是某种类型的 MQTT 等价物。

您的代码订阅了一个主题,并故意挂起。需要有第二个应用程序负责将事件发送到服务器 (netpie.io),然后它将触发分配给您的 microgear.on_message 处理程序的 subscription 函数。就目前而言,readCount 没有做任何事情,您需要将 count 变量的范围限定在任何函数之外才能使用它。

There's docs here that you'll need to translate

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-06
相关资源
最近更新 更多