Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Can';t连接到本地主机(8888)上的pigpio Can';不要创建回调线程。可能有太多同时的pigpio连接_Python_Python 3.x_Raspberry Pi_Raspbian_Pigpio - Fatal编程技术网

Python Can';t连接到本地主机(8888)上的pigpio Can';不要创建回调线程。可能有太多同时的pigpio连接

Python Can';t连接到本地主机(8888)上的pigpio Can';不要创建回调线程。可能有太多同时的pigpio连接,python,python-3.x,raspberry-pi,raspbian,pigpio,Python,Python 3.x,Raspberry Pi,Raspbian,Pigpio,已将DHT11连接到Rpi4 VCC--引脚1 datapin--gpio4 接地针脚--针脚6 它工作得很好,但是在给出了几次结果之后,我得到了这个错误。 pigpio新手请帮我找出问题所在 import time from pigpio_dht import DHT11, DHT22 while True: gpio = 4 # BCM Numbering sensor = DHT11(gpio) #sensor = DHT22(gpio)

已将DHT11连接到Rpi4

VCC--引脚1

datapin--gpio4

接地针脚--针脚6

它工作得很好,但是在给出了几次结果之后,我得到了这个错误。 pigpio新手请帮我找出问题所在

import time
from pigpio_dht import DHT11, DHT22
while True:
        gpio = 4 # BCM Numbering

        sensor = DHT11(gpio)
#sensor = DHT22(gpio)

        result = sensor.read()

        temperature=([value for value in result.values()][0])
        print(temperature)

        humidity=([value for value in result.values()][2])
        print(humidity)
        time.sleep(10)
输出:

28
46

28
46

28
46

28
46

28
46
然后我得到以下结果:


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Can't connect to pigpio at localhost(8888)

Can't create callback thread.
Perhaps too many simultaneous pigpio connections.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Traceback (most recent call last):
  File "dht8.py", line 9, in <module>
    sensor = DHT11(gpio)
  File "/home/pi/.local/lib/python3.7/site-packages/pigpio_dht/dht11.py", line 24, in __init__
    super(DHT11, self).__init__(gpio, pi=pi, timeout_secs=timeout_secs, use_internal_pullup=True, max_read_rate_secs=1, datum_byte_count=1)
  File "/home/pi/.local/lib/python3.7/site-packages/pigpio_dht/dhtxx.py", line 47, in __init__
    self._pi.set_pull_up_down(gpio, pigpio.PUD_UP)
  File "/usr/lib/python3/dist-packages/pigpio.py", line 1385, in set_pull_up_down
    return _u2i(_pigpio_command(self.sl, _PI_CMD_PUD, gpio, pud))
  File "/usr/lib/python3/dist-packages/pigpio.py", line 993, in _pigpio_command
    sl.s.send(struct.pack('IIII', cmd, p1, p2, 0))
AttributeError: 'NoneType' object has no attribute 'send'

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
无法连接到本地主机上的pigpio(8888)
无法创建回调线程。
可能有太多同时的pigpio连接。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
回溯(最近一次呼叫最后一次):
文件“dht8.py”,第9行,在
传感器=DHT11(gpio)
文件“/home/pi/.local/lib/python3.7/site packages/pigpio_dht/dht11.py”,第24行,在u_init中__
super(DHT11,self)。\uuuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu(gpio,pi=pi,timeout\u secs=timeout\u secs,use\u internal\u pullup=True,max\u read\u secs=
文件“/home/pi/.local/lib/python3.7/site packages/pigpio_dht/dhtxx.py”,第47行,在u_init中__
自我设置向上拉向下(gpio、pigpio、PUD向上)
文件“/usr/lib/python3/dist packages/pigpio.py”,第1385行,在set\u pull\u up\u down中
返回u2i(_pigpio_命令(self.sl,_PI_CMD_PUD,gpio,PUD))
文件“/usr/lib/python3/dist packages/pigpio.py”,第993行,在_pigpio_命令中
sl.s.send(结构包('IIII',命令,p1,p2,0))
AttributeError:“非类型”对象没有属性“发送”

提前感谢

您正在
while
循环中设置设备,因此它会创建同一设备的多个实例,从而产生错误代码

Can't create callback thread.
Perhaps too many simultaneous pigpio connections.
您需要创建一个设备实例并从传感器中长期读取信息。类似这样的方法会奏效:

import time
from pigpio_dht import DHT11, DHT22

gpio = 4 # BCM Numbering

sensor = DHT11(gpio)
   
while True:
       
        result = sensor.read()

        temperature=([value for value in result.values()][0])
        print(temperature)

        humidity=([value for value in result.values()][2])
        print(humidity)
        time.sleep(10)

您必须在while循环之外进行设置,因为它会创建一个新的连接实例。将您的
gpio=4#BCM编号
sensor=DHT11(gpio)
移动到while之外loop@BijayRegmi是的..你的权利..现在起作用了..谢谢你为将来寻找这个的人创造了一个答案