2016-06-09 5 views
-1

DietPi와 함께 라즈베리 파이 2를 사용 중이며 경보 모듈을 GPIO 14 (핀 08)에 연결했습니다.기본적으로 GPIO를 비활성화하고 파이썬 스크립트를 통해 일시적으로 활성화하십시오.

이제이 핀을 기본적으로 사용하지 않도록 설정하고 파이썬 스크립트 내에서 일시적으로 사용하도록 설정하려고합니다.

지금까지 RPi.GPIO를 사용해 보았습니다. 작동하지 않았고 반출/반출하지 못했습니다.하지만이 방법은 OS를 손상 시켜서 다시 설치해야하는 곳까지 손상 시켰습니다.

분명히 뭔가 잘못하고 있습니다. 누구든지이 경험을 갖고 올바른 방향으로 나를 가리킬 수 있습니까?

+0

GPIO를 "비활성화"하면 * 문제를 명확하게 정의하지 않았습니다. 이 GPIO는 입력 또는 출력에 사용됩니까? 장치가 연결되어 있고 GPIO가 출력으로 사용되면 * GPIO를 "사용 불가능하게"하는 것은 잘못된 행동입니다. I.E. 출력이 정의되지 않은 상태가되도록 허용하므로 장치의 제어가 손실됩니다. – sawdust

답변

0

나와 함께 내 rpi가 없지만 이것을 사용해 볼 수 있습니다. 검사 시간

import time 
import sys 

def unexport(gpio): 
    value = open("/sys/class/gpio/unexport","w") 
    value.write(gpio) 
    value.close() 

def checkHours: 
    return int(time.strftime("%l")) 

def checkMinutes: 
    return int(time.strftime("%M")) 

def checkAMorPM: 
    return time.strftime("%p") 

def disableGpio3AM46: 
    if (checkHours == 3) and (checkMinutes == 46) and (checkAMorPM == 'PM'): 
     print 'amazing' 
     unexport(gpio) 
0

다음 첫 번째 기능 수출, 3 년 이후 나는 파이썬을 통해 핀/GPIO를 비활성화하고 활성화하려면이 방법을 알아 냈어요이 질문에 게시 :

import RPi.GPIO as GPIO 
import time 

GPIO.setmode(GPIO.BOARD) 
GPIO.setup(8, GPIO.OUT) 

try: 
    while True: 
    GPIO.output(8,1) 
    time.sleep(0.5) 
    GPIO.output(8,0) 
    time.sleep(0.5) 

except KeyboardInterrupt: 
    GPIO.cleanup() 
    print "Bye" 

모든이가 나를 위해 남아를 이제는 코드가 실행될 때까지 알람이 재생되지 않도록 핀비 기본값을 비활성화하는 방법입니다.