代码中的GPIO状态改变了,但机械继电器没有改变

2024-10-06 12:28:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个树莓皮3模型B连接到一个塞恩斯马特16通道机械继电器。我有一个python脚本来更改中继的状态,虽然程序中的状态针对不同的GPIO通道而改变,但是机械中继永远不会改变状态。在

有人有什么想法吗?在

我的python脚本

#!/usr/bin/python
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
sleepTime = 0.5

pinList = [4, 17, 27, 22, 10, 9, 11, 5, 6, 13, 19, 26, 21, 20, 16, 12]

for i in pinList:
    GPIO.setup(i, GPIO.OUT)

for i in pinList:
    time.sleep(sleepTime);
    GPIO.output(i, GPIO.HIGH)
    print (str(i) + " high")
    print ("state: " + str(GPIO.input(i)))

for i in pinList:
    time.sleep(sleepTime);
    GPIO.output(i, GPIO.LOW)
    print(str(i) + " low")
    print ("state: " + str(GPIO.input(i)))

GPIO.cleanup()

脚本的输出

^{pr2}$

谢谢你的阅读。在


Tags: inimport脚本foroutputgpiotime状态
1条回答
网友
1楼 · 发布于 2024-10-06 12:28:46

Raspberry Pi 3 GPIO diagram

根据上面的图表,我最初将两个5v引脚(引脚2和4)连接到继电器模块上相应的引脚上。然后我开始连接GPIO引脚,从GPIO4(引脚7)开始,向下移动GPIO引脚的左列,然后向上移动右侧。我用了6号和9号针。当我问这个问题时,我就是这样安排的。在

但通过将5v电缆从引脚2移动到引脚1(3.3v),解决了我的问题。

注意:我从https://www.element14.com/community/docs/DOC-73950/l/raspberry-pi-3-model-b-gpio-40-pin-block-pinout得到了图表

相关问题 更多 >