有没有示例如何使用google aiy语音板上的GPIO的数字输入或模拟输入? [英] Is there any example of how to use the digital input or analog input of GPIO on google aiy voice board?

查看:68
本文介绍了有没有示例如何使用google aiy语音板上的GPIO的数字输入或模拟输入?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法读取来自运动传感器(HC-SR501)的输入,该传感器连接到我的语音套件的语音引擎盖上扩展引脚的PIN_A.

I can not read the input from the motion sensor (HC-SR501) which connects to PIN_A of the expansion pins on the voice bonnet of my aiy voice kit.

下面是代码和错误消息,请说明一下.

Below are the code and the error message, please shed some light.

代码:

from gpiozero import MotionSensor
from aiy.pins import (PIN_A, PIN_B, PIN_C, PIN_D)
pir = MotionSensor(PIN_A)
pir.wait_for_motion()
print("Motion detected!")

错误消息:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 51, in __init__
    self.pin.pull = pull
  File "/usr/lib/python3/dist-packages/gpiozero/pins/__init__.py", line 279, in <lambda>
    lambda self, value: self._set_pull(value),
  File "/opt/aiy/projects-python/src/aiy/pins.py", line 569, in _set_pull
    'Only pull up is supported right now (%s)' % pull)
gpiozero.exc.PinFixedPull: Only pull up is supported right now (down)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "motion_sensor.py", line 4, in <module>
    pir = MotionSensor(PIN_A)
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 95, in __call__
    self = super(GPIOMeta, cls).__call__(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 451, in __init__
    pin_factory=pin_factory
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 163, in __init__
    pin, pull_up, pin_factory=pin_factory
  File "/usr/lib/python3/dist-packages/gpiozero/mixins.py", line 164, in __init__
    super(EventsMixin, self).__init__(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 53, in __init__
    self.close()
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 185, in close
    super(SmoothedInputDevice, self).close()
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 393, in close
    self.pin_factory.release_pins(self, self._pin.number)
AttributeError: 'HatPin' object has no attribute 'number'
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 483, in _shutdown
    _devices_shutdown()
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 476, in _devices_shutdown
    dev.close()
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 185, in close
    super(SmoothedInputDevice, self).close()
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 393, in close
    self.pin_factory.release_pins(self, self._pin.number)
AttributeError: 'HatPin' object has no attribute 'number'
Exception ignored in: <object repr() failed>
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 122, in __del__
    self.close()
  File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 185, in close
    super(SmoothedInputDevice, self).close()
  File "/usr/lib/python3/dist-packages/gpiozero/devices.py", line 393, in close
    self.pin_factory.release_pins(self, self._pin.number)
AttributeError: 'HatPin' object has no attribute 'number'

推荐答案

您解决了吗?

通过查看 API 和您的错误消息,请尝试更改代码的第3行

By looking at the API and your error message, try changing line 3 of your code

发件人:

pir = MotionSensor(PIN_A)

收件人:

pir = MotionSensor(PIN_A, pull_up=True)

这篇关于有没有示例如何使用google aiy语音板上的GPIO的数字输入或模拟输入?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆