我怎么能用覆盆子派把3号针调高,然后再调2号针?

2024-05-29 02:49:08 发布

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

我在修车库门。到目前为止,我已经编写了基本代码,但我希望再添加一个内容,但我不确定如何添加。对于那些不知道的人,Raspberry Pi有可以使用Python脚本设置的GPIO pin。我使用的脚本将GPIO引脚设置为高(5伏输出),保持0.5秒,然后再设置为低。输出连接到一个继电器,然后连接到我的车库门。在

我要做的是使用另一个GPIO引脚触发警报2秒,然后将第一个GPIO引脚的状态设置为high,从而打开门。这是我到目前为止的情况。在

#!/usr/bin/python

# Import required Python libraries
import RPi.GPIO as GPIO
import time

# Use BCM GPIO references instead of physical pin numbers
GPIO.setmode(GPIO.BCM)

# init list with pin numbers
pinList = [2]

# loop through pins and set mode and state to 'low'
for i in pinList:
    GPIO.setup(i, GPIO.OUT)
    GPIO.output(i, GPIO.HIGH)

def trigger() :
    for i in pinList:
      GPIO.output(i, GPIO.LOW)
      time.sleep(0.5)
      GPIO.output(i, GPIO.HIGH)
      GPIO.cleanup()

try:
    trigger()
except keyboardInterrupt:
    print "  Quit"

# Reset GPIO settings
GPIO.cleanup()

有谁能帮我想出如何添加另一个GPIO引脚触发2秒,然后触发主继电器开门?在


Tags: andinimport脚本foroutputgpiotime
1条回答
网友
1楼 · 发布于 2024-05-29 02:49:08

我用WiringPi和Raspberry Pi来直接控制GPIO,也用它通过SPI和I2C连接其他设备

这是python库的link。在

一旦库启动并运行,只需使用以下代码的变体:

import wiringpi
import time
wiringpi.pinMode(1,1)       #Set GPIO 1 to Output
wiringpi.pinMode(2,1)       #Set GPIO 1 to Output
wiringpi.digitalWrite(1,1)  #Write HIGH to pin1
time.sleep(2)               #2 sec delay
wiringpi.digitalWrite(2,1)  #Write HIGH to pin2

只需小心输出和输入,因为树莓皮GPIO的运行电压为3.3v,而不是5v,如果你用它来驾驶大型车(GPIO的额定电流为16mA)或连接有故障,你可能会破坏你的覆盆子Pi。在

相关问题 更多 >

    热门问题