2014-09-16 3 views
0

안녕하세요, RPI B +에서 파이썬으로 시작하겠습니다. 단순한 while 루프를 만들었지 만 이상한 결과를 얻고 있습니다. GPIO3가 낮은 경우간단한 파이썬 스크립트에서 원하지 않는 결과가 있습니다.

#!/usr/bin/python 
import time 
import RPi.GPIO as GPIO 
GPIO.setmode(GPIO.BCM) 
GPIO.setwarnings(False) 
GPIO.setup(3,GPIO.OUT) 
while 1: 
    print "LED OFF" 
    GPIO.output(3,GPIO.LOW) 
    time.sleep(1) 
    print "LED ON" 
    GPIO.output(3,GPIO.HIGH) 
    time.sleep(1) 

는 반복적으로 출력한다 ^[다시 HIGH의 B까지. 문자 B는 사용하는 핀에 따라 달라집니다.

왜 이런 일이 발생합니까? 버튼 인쇄기를 등록하는 것처럼 보이지만 버튼을 누르지 않았거나 GPIO에 대한 입력이 없습니다.

다른 키보드를 사용해 보았지만 차이가 없었습니다.

LED OFF 
^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[BLED ON 
^[[BLED OFF 
^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[BLED ON 
^[[BLED OFF 
^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[BLED ON 
^[[BLED OFF 

나는 LED의가 제대로 깜박 않도록주의해야한다 :

내가이에서지고있어 출력입니다.

편집 :

프로그램이 실행되는 동안 내가 텍스트 편집기에 포커스를 전환 할 때, 출력은 정상이지만 아래 버튼을 아래로 이동하려면 텍스트 편집기 내부의 커서를 일으키는 누르면됩니다. 이것이 OS 문제라고 생각하기 시작했습니다. Porta Pi 이미지를 사용하고 있습니다. 내 아케이드 캐비닛 용 img를 사용하므로이 용도로 사용할 수도 있습니다.

+0

매우 이상한 것 같다 알려줘. 이것은 아마도 변경 사항이 없지만 항상 "높음/낮음"대신 "참/거짓"또는 "1/0"을 사용했습니다. 또한 모든 gpio 코드를 주석 처리하면 어떻게됩니까? 그냥 이상한 OS가 아닌지 확인하고 문제를 줄이십시오. –

+0

GPIO.output (3, GPIO.LOW) 및 GPIO.output (3, GPIO.HIGH)을 주석 처리 할 때 이상한 출력이 사라집니다. 나는 또한^[[D는 아래쪽 화살표 키입니다. true/flase 0/1을 시도했지만 작동하지 않습니다. 아마도 다른 구문이 필요합니다. – user3305776

답변

0

저는 RPI B ++에서 파이썬으로 시작하고 있습니다. 많은 재미!! 그러나 어쨌든 : 이것은 당신의 문제를 해결하지 못할 것입니다. 그러나 스크립트를 보면서 자신에게 묻고있었습니다. 잠시 후 모든 라인 앞에 탭을 두어서는 안됩니까?

+0

예, 원본 스크립트에 여기에 추가하는 것을 잊어 버렸습니다. – user3305776

0

다시 RPi 용 스크립트 몇 개를 살펴보면 출력 구문이 꺼져 있다고 생각합니다. 마찬가지로 :

GPIO.output(3,GPIO.LOW) 

가되어야한다

GPIO.output(3,LOW) 

나는 진정한 1,0, 내 제안은, 거짓이 작동하지 않는 이유라고 생각합니다. 여기에는 "GPIO"가 없어야합니다. 그들 앞에서.

-Cheers 작동

+0

GPIO.output (3, LOW)이 작동하지 않습니다 (오류). GPIO.output (3,0)이 작동합니다. GPIO.output (3, GPIO.LOW)가 작동합니다. 여전히 인쇄 할 수있는 것들^[[B. – user3305776

+0

온라인에서 찾은 B + 예제에서 코드가 약간 다르게 보입니다. (저는 B +가 없습니다). 죄송합니다. 잘못된 정보 :( –