2016-11-16 16 views
-1

내 코드에서 LIRC 작동을 얻으려고합니다. 나는 몇 가지 테스트 코드를 작성했지만이 오류 메시지가 표시됨 :LIRC on Raspberry pi가 초기화되지 않았습니다. 오류

Traceback (most recent call last): 
    File "ir_remote.py", line 5, in <module> 
    config = lirc.nextcode() 
    File "lirc.pyx", line 183, in lirc.nextcode (lirc/lirc.c:2983) 
    File "lirc.pyx", line 217, in lirc._is_init_or_error (lirc/lirc.c:3472) 
lirc.InitError: lirc has not been initialised. 

내가 만든 코드 :

config = lirc.nextcode() 
sockid = lirc.init(blocking = False) 

:

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

config = lirc.nextcode() 

sockid = lirc.init(blocking = False) 

if config == 'KEY_DOWN': 
    print 'Red OFF' 
if config == 'KEY_UP': 
    print 'Light Red' 
if config == 'KEY_LEFT': 
    print 'Red' 
if config == 'KEY_RIGHT': 
    print 'Green OFF' 
if config == 'KEY_OK': 
    print 'Light Green' 
if config == 'KEY_1': 
    print 'Green' 
if config == 'KEY_2': 
    print 'Blue OFF' 
if config == 'KEY_3': 
    print 'Light Blue' 
if config == 'KEY_4': 
    print 'BLUE' 
+3

'lirc'에 대해서는 아무 것도 모르지만 코드와 오류 메시지를 보면'lirc.nextcode'를 호출하기 전에'lirc.init'을 호출해야하는 것처럼 보입니다. – larsks

+0

아마도 다음에 SO로 점프하기 전에 오류 메시지를 읽으십니까? – barny

답변

1

당신은 주변이 두 줄을 교체 할 필요를 사용을 시작하기 전에 lirc을 초기화해야하기 때문에.
은 다음과 같아야합니다

sockid = lirc.init(blocking = False) 
config = lirc.nextcode() 

는 적어도 모든 문서에 따르면, 단지 발견 @larsks는 같은 일을했다 내가 해도를 말한다. 나는 전에이 라이브러리로 작업 한 적이 없지만 documentation과 오류 메시지를 확인하는 것은 합리적인 가정입니다.