繁体   English   中英

Raspberry pi gpio引脚卡在“ in”和“ high”模式下

[英]Raspberry pi gpio pins are stuck in the “in” and “high” mode

我在Raspberry Pi 2上运行Raspbian Stretch。我试图构建一个基本的避障漫游车,但遇到了电动机问题。 原理图在这里找到:

我没有DC-DC转换器,而LED上有一个330欧姆电阻连接到引脚17。

我正在使用以下代码运行它:

from gpiozero import LED
from gpiozero import Motor
import RPi.GPIO as GPIO
from time import sleep

# prereqs
GPIO.setmode(GPIO.BCM)
Motorbin = 5
Motorbout = 6
GPIO.setup(Motor2in,GPIO.OUT)
GPIO.setup(Motor2out,GPIO.OUT)

led = LED(17)

for i in range(2):
    led.on()
    sleep(0.5)
    led.off()
    sleep(0.5)



# motors are going to start running now

motora = Motor(27, 22)
motora.forward()
sleep(5)
motora.backward()
sleep(5)
motora.stop()

for i in range(2):
    led.on()
    sleep(0.5)
    led.off()
    sleep(0.5)

motorb = (5, 6)
motorb.forward()
sleep(5)
motorb.backward()
sleep(5)
motorb.stop()

GPIO.cleanup

我运行了代码,我的LED闪烁了两次,第一个马达(马达)向前和向后移动,但是第二个马达(马达)完全没有移动。 我运行了终端命令“ gpio readall”,发现第二个电动机正在运行的引脚(BCM 5、6)被设置为“ IN”,并且都被设置为“ 1”。

gpio readall的终端输出

我尝试使用GPIO.setup命令将引脚5和6更改为输出引脚,但仍然保持不变。 我还尝试使用terminal命令将引脚的输出从高电平更改为低电平,但没有任何反应。 GPIO引脚似乎卡在此模式下。

有什么办法可以解决这些卡住的GPIO引脚吗? 在这种情况下,我做对了吗?

任何协助将不胜感激!

您的代码通过以下方式设置了Motor A

motora = Motor(27, 22)

但是马达B是由

motorb = (5, 6).

它是否应该由

motorb = Motor(5, 6)?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM