에러 조건 : 드라이버 에러.
설명 : GPIB 하드웨어가 제대로 구성되지 않았거나 ibfind 함수에 전달된 인터페이스 이름 또는 디바이스 이름이 올바르지 않으면 EDVR이 반환됩니다.
가능한 원인 : 보드의 인터페이스 이름이나 계측기의 디바이스 이름을 잘못 입력하면 종종 EDVR 에러가 발생합니다. 예를 들어, NI 보드의 기본 인터페이스 이름은 GPIB0이지만 GPIBO로 잘못 표기할 수 있습니다 (숫자 0 대신 알파벳 "O" 표시). 이 에러는 ibdev 함수에 전달된 보드 인덱스가 올바르지 않은 경우에도 발생할 수 있습니다. 보드 인덱스는 GPIB 보드의 인터페이스 이름의 번호 부분임에도 불구하고, 보드 인덱스가 보드의 1차 주소를 의미한다고 착각하는 경우가 많습니다. 예를 들어 컴퓨터에 PCI-GPIB 보드를 설치하고 1차 주소를 2로 지정할 수 있습니다. 보드의 기본 인터페이스 이름은 GPIB0이므로 보드 인덱스는 2가 아닌 0입니다.
솔루션
에러 조건 : 함수에서 GPIB 보드가 Controller-In-Charge (CIC)일 것을 요구하는 경우
설명 : 특정 함수는 GPIB 보드가 CIC일 것을 요구합니다. 이에 해당하는 함수 목록은 NI-488.2 함수 참고 매뉴얼(Function Reference Manual)을 참고하시기 바랍니다. (아래 관련 링크 참조). 기본적으로 GPIB 보드는 시스템 컨트롤러가 되지만, 그렇다고 모두 CIC가 되는 것은 아닙니다. 시스템 컨트롤러는 언제든지 CIC가 될 수 있습니다 (주어진 범용 인터페이스 버스에는 하나의 시스템 컨트롤러가 있을 수 있습니다).
가능한 원인 : 흔히 ECIC 에러는 프로그램 시작시 GPIB 보드가 CIC인지 여부를 확인하는 인터페이스 클리어 메시지를 전송하지 않으면 발생합니다.
솔루션
에러 조건 : 함수가 Listener를 감지하지 못함.
설명 : GPIB 통신에는 하나의 Talker(데이터 메시지 작성용)와 하나 이상의 Listener(데이터 메시지 읽기용)가 필요합니다. ENOL은 일반적으로 쓰기 작업이 시도될 때 발생하는 것이 맞지만, 현재 Listener가 지정되지 않았거나 지정된 주소에 Listener가 없습니다. 디바이스 쓰기의 경우 ENOL은 통신하려는 GPIB 주소가 버스에 연결된 디바이스의 GPIB 주소와 일치하지 않음을 보여줍니다.
가능한 원인 : 통신하려는 계측기가 예상 1차 주소에 있지 않거나, 계측기의 전원이 꺼지 있거나, 계측기 케이블이 연결되지 않았거나 끊겼습니다.
솔루션
에러 조건 : GPIB 보드(GPIB0 또는 GPIB1)의 주소가 올바르게 지정되지 않았습니다.
설명 : GPIB 보드가 Controller-In-Charge (CIC)이고 읽기 및 쓰기 기능을 수행하기 전에 제대로 주소 지정이 되지 않은 경우 EADR이 발생합니다. 섀도우 핸드셰이크 기능이 요청되고 GPIB ATN 라인이 이미 지정 해제된 경우 EADR은 ibgts 함수에 의해 반환됩니다. 이 경우 새도우 핸드셰이크를 수행할 수 없으며 이를 알리기 위해 에러가 반환됩니다.
가능한 원인 : GPIB 보드가 통신하려는 계측기와 같은 1차 주소로 설정되었습니다.
솔루션
에러 조건 : 함수 호출에 대한 인수가 잘못되었습니다.
설명 : 유효하지 않은 인수가 함수 호출에 전달되면 EARG가 발생합니다.
가능한 원인 : 다음은 몇 가지 예입니다. 0~17 범위에 속하지 않는 값을 갖는 ibtmo를 호출하는 경우 (가능한 타임아웃 값은 0~17 범위의 테이블에 해당함. 기본값은 13이며 10초 타임아웃), 두 번째 파라미터의 상위 바이트에 의미없는 비트가 설정된 ibeos를 호출하는 경우, 또는 잘못된 주소로 ibpad (또는 ibsad)를 호출하는 경우
솔루션
에러 조건 : GPIB 보드가 시스템 컨트롤러가 아닙니다.
설명 : GPIB 보드에 시스템 컨트롤러 기능이 없을 때 ibsic, ibsre, SendIFC 또는 EnableRemote가 호출되면 ESAC 결과가 표시됩니다.
가능한 원인 : GPIB 보드가 시스템 컨트롤러로 구성되지 않았습니다.
솔루션
에러 조건 : I/O 작업이 중단되었습니다.
설명 : EABO에서 특정 사유로 I/O 작업이 취소되었다고 표시합니다.
가능한 원인 : EABO 에러는 일반적으로 읽기 또는 쓰기 작업 중 타임아웃으로 인해 발생하지만 I/O 작업이 진행되는 동안 ibstop 함수, ibclr 함수 또는 이와 유사한 함수를 호출하여 발생할 수도 있습니다. PCI 버스 마스터링(컴퓨터 BIOS의 옵션)이 활성화되어 있지 않으면 PCI-GPIB 보드로 쓰기 작업 중에 타임아웃이 발생할 수 있습니다. 리딩(Reading) 중인 계측기가 이전 명령을 이해할 수 없는 경우, 읽기 작업 중에 타임아웃이 발생할 수 있으므로 사용자에게 표시할 내용이 없습니다. 계측기에 아무 메시지도 표시되지 않는 경우가 있습니다.
솔루션
에러 조건 : 존재하지 않는 GPIB 보드.
설명 : GPIB 구성 유틸리티에 지정된 I/O 주소에 GPIB 보드가 없는 경우 ENEB가 발생합니다. 이러한 문제는 보드가 실제로 시스템에 연결되어 있지 않거나, 설정 중에 지정된 I/O 주소가 실제 보드 설정과 일치하지 않거나, 기본 I/O 주소와의 시스템 충돌이 있거나 보드의 인터페이스 이름이 디바이스와 연결된 보드의 인터페이스 이름과 다를 경우 발생합니다.
솔루션
본 문제 해결에 대한 내용은 GPIB 에러 코드 및 공통 솔루션 (2부) 및 GPIB 에러 코드 및 공통 솔루션 (3부)에서 계속됩니다.