python gpio 제어



  • 질문내용을 수정하여 다시 질문드립니다.
    코드는 다음과 같습니다.

    import OPi.GPIO as GPIO
    import time
    import subprocess
    import atexit
    import collection
    
    def make_call():
        GPIO.output(led, True)
    
    def make_hangup():
        GPIO.output(led, False)
    
    input = 18
    led = 8
    counter = 0
    
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(input, GPIO.IN)
    GPIO.setup(led, GPIO.OUT)
    GPIO.setwrnings(False)
    
    while(True):
        if not GPIO.input(input):
            couner = counter +1
    
        if counter == 1:
            print ("press-1")
            make_call()
    
        if counter == 2:
            print ("press-2")
            make_hangup()
            counter = 0
    
        if counter == 3:
            print ("press-3")
            counter = 1
        contiue
        GPIO.cleanup()
    

    원하는 동작은 다음과 같습니다.

    1. 스위치를 처음 한번 누르면 led가 점등.
    2. 스위치를 다시 한번 누르면 led가 소등
    3. 스위치를 또다시 한번 누르면 led가 점등
      ===> 스위치를 한번 누르면 led가 점등, led가 점등 된 상태에서 스위치를 한번 누르면 led가 소등.
      어떻게 해야 할지 조언 부탁드립니다.
      참고로 보드는 Orange pi zero를 사용 하였으며, 라즈베리파이와 거의 동일합니다.
      OS는 라즈비안입니다.
      부탁합니다.

답글을 작성하기 위해 로그인
 

Rasplay Forum 사이트로의 연결이 끊어졌습니다. 다시 연결을 시도하는동안 잠시만 기다려 주십시오.