2016-11-04 3 views
1

간단한 코드 reisesPyDAQmx.Task는() RecursionError

def catch_error_default(f): 
    def mafunction(*arg): 
     error = f(*arg) 
     if error<0: 
      errBuff = create_string_buffer(2048) 
      DAQmxGetExtendedErrorInfo(errBuff,2048) # <<<--- error here <<<--- 
      raise DAQError(error,errBuff.value.decode("utf-8"), f.__name__) 
     elif error>0: 
      errBuff = create_string_buffer(2048) 
      DAQmxGetErrorString (error, errBuff, 2048); 
#   print "WARNING :",error, " ", errBuff.value.decode("utf-8") 
      raise DAQError(error,errBuff.value.decode("utf-8"), f.__name__) 
     return error 
    return mafunction 

내가 왜 아무 생각이 없습니다.

"instrumental-lib"와 "NiceLib"(http://instrumental-lib.readthedocs.io/en/latest/ni-daqs.html)을 설치하려고했지만 Anaconda, PyDAQmx 및 NIDAQmx 드라이버를 다시 설치해도 효과가 없습니다.

+0

"DAQmxGetErrorString (error, errBuff, 2048)"을 실행하고 다음을 가져옵니다. b 'MIG 소프트웨어에서 내부 소프트웨어 오류가 발생했습니다. 내쇼날 인스트루먼트 서포트에 문의하십시오. ' – ADR

+0

NI MAX >> Tools >> Reset Configuration Data를 클릭하십시오. 다른 오류가 있습니다 : "PyDAQmx.DAQmxFunctions.DAQError : MIG 소프트웨어에서 내부 소프트웨어 오류가 발생했습니다. 내쇼날 인스트루먼트 지원 센터에 문의하십시오." – ADR

+0

MAX에서 기기의 테스트 패널을 열고 사용할 수 있습니까? –

답변

1

먼저 당신이 명확 NI MAX 데이터베이스가 필요합니다 열기 NI MAX를 -> 도구 -> 모든 NI 소프트웨어를 (안 복원) 구성 데이터가

다음 제거 재설정합니다.

그런 다음 NI DAQmx를 다시 설치하십시오.

나는 또한 Anaconda를 다시 설치하지만, 제 생각에는 그렇게하지 않아도된다고 생각합니다.