Skip to content

범용 입출력 관련 기능

Function Description
AxcSignalWriteOutput 지정 CNT 채널에 포함된 범용 출력 포트 값을 설정한다.
AxcSignalReadOutput 지정 CNT 채널에 포함된 범용 출력 포트 값을 확인한다.
AxcSignalWriteOutputBit 지정 CNT 채널의 범용 출력 중 지정한 비트의 On/Off 상태를 설정한다.
AxcSignalReadOutputBit 지정 CNT 채널의 범용 출력 중 지정한 비트의 On/Off 상태를 확인한다.
AxcSignalReadInput 지정 CNT 채널에 포함된 범용 입력 포트 값을 확인한다.
AxcSignalReadInputBit 지정 CNT 채널의 범용 입력 중 지정한 비트의 On/Off 상태를 확인한다.

AxcSignalWriteOutput

Purpose

지정 CNT 채널에 포함된 범용 출력 포트 값을 설정한다.

Format

C++
DWORD AxcSignalWriteOutput(long lChannelNo, DWORD uOutput);
C#
uint AxcSignalWriteOutput(int lChannelNo, uint uOutput);

Parameters

[in/out] Name [Init Value] Explanation
[in]lChannelNo 모듈 번호 (0 ~ N-1), N : 전체 CNT 채널 개수
[in]uOutput 범용 출력 포트 값(각 비트에 할당된 출력 포트 값)

Return Values

[0000] AXT_RT_SUCCESS : AXL 라이브러리 초기화 성공, 연결 상태 정상
[1053] AXT_RT_NOT_OPEN : 라이브러리 초기화 실패
[3251] AXT_RT_CNT_NOT_MODULE : CNT 모듈 없음
[3302] AXT_RT_CNT_INVALID_CHANNEL_NO : 유효하지 않은 CNT 채널 번호
[1152] AXT_RT_NETWORK_ERROR : network slave 타입 CNT 모듈 연결 상태 문제 발생

Description

지정 CNT 채널에 포함된 범용 출력 포트 값을 설정한다. 설정 값의 각 비트 값이 해당 범용 출력 포트에 출력된다. 제품별 범용 출력 포트는 다음과 같다.

모듈 ID 범용 출력 및 설정 값 할당 내용
AXT_SIO_CN2CH
(VER: 0xB0)
범용 출력 포트 개수: 8EA
CNT 모듈 내 낮은 채널 번호 : UOUT0~UOUT3번 포트
CNT 모듈 내 높은 채널 번호 : UOUT4~UOUT7번 포트
Ex) AxcSignalWriteOutput(0, 0x4);
-> UOUT0: 0, UOUT1: 0, UOUT2: 1, UOUT3: 0
AXT_SIO_CN2CH
(VER: 0xA6)
AXT_SIO_HPC4
(VER < 0xB0)
범용 출력 포트 개수: 4EA
CNT 채널이 속한 모듈 내 속한 모든 출력 포트가 설정된다. 즉 CNT 모듈에 속한 모든 채널 번호를 사용하여 모듈 전체의 범용 출력 포트를 제어한다.
Ex) AxcSignalWriteOutput(0, 0xE);
-> UOUT0: 0, UOUT1: 1, UOUT2: 1, UOUT3: 1
AXT_SIO_RCNT2SIIIH Not support(지원하지 않음)
AXT_SIO_RCNT2SIIIH_R
AXT_SIO_RCNT2RTEX
AXT_SIO_RCNT2MLIII
AXT_SIO_RCNT2MLII

예제 코드

// 0번 채널의 범용 출력 신호 설정.
AxcSignalWriteOutput(0, 1);

// 0축 채널의 범용 출력 신호 확인.
DWORD uValue;
AxcSignalReadOutput(0, &uValue);

AxcSignalReadOutput

Purpose

지정 CNT 채널에 포함된 범용 출력 포트 값을 확인한다.

Format

C++
DWORD AxcSignalReadOutput(long lChannelNo, DWORD* upOutput);
C#
uint AxcSignalReadOutput(int lChannelNo, ref uint upOutput);

Parameters

[in/out] Name [Init Value] Explanation
[in]lChannelNo 모듈 번호 (0 ~ N-1), N : 전체 CNT 채널 개수
[out]upOutput 범용 출력 포트 값(각 비트에 할당된 출력 포트 값)

Return Values

[0000] AXT_RT_SUCCESS : AXL 라이브러리 초기화 성공, 연결 상태 정상
[1053] AXT_RT_NOT_OPEN : 라이브러리 초기화 실패
[3251] AXT_RT_CNT_NOT_MODULE : CNT 모듈 없음
[3302] AXT_RT_CNT_INVALID_CHANNEL_NO : 유효하지 않은 CNT 채널 번호
[1152] AXT_RT_NETWORK_ERROR : network slave 타입 CNT 모듈 연결 상태 문제 발생

Description

지정 CNT 채널에 포함된 범용 출력 포트 값을 확인한다. 각 비트 값이 해당 범용 출력 포트의 현재 상태를 나타낸다.

예제 코드

// 0번 채널의 범용 출력 신호 설정.
AxcSignalWriteOutput(0, 1);

// 0축 채널의 범용 출력 신호 확인.
DWORD uValue;
AxcSignalReadOutput(0, &uValue);

AxcSignalWriteOutputBit

Purpose

지정 CNT 채널의 범용 출력 중 지정한 비트의 On/Off 상태를 설정한다.

Format

C++
DWORD AxcSignalWriteOutputBit(long lChannelNo, long lBitNo, DWORD uOnOff);
C#
uint AxcSignalWriteOutputBit(int lChannelNo, int lBitNo, uint uOnOff);

Parameters

[in/out] Name [Init Value] Explanation
[in]lChannelNo 모듈 번호 (0 ~ N-1), N : 전체 CNT 채널 개수
[in]lBitNo 범용 출력 비트 번호
[in]uOnOff 출력 On/Off
- [00h]출력 Off (0)
- [01h]출력 On (1)

Return Values

[0000] AXT_RT_SUCCESS : AXL 라이브러리 초기화 성공, 연결 상태 정상
[1053] AXT_RT_NOT_OPEN : 라이브러리 초기화 실패
[3251] AXT_RT_CNT_NOT_MODULE : CNT 모듈 없음
[3302] AXT_RT_CNT_INVALID_CHANNEL_NO : 유효하지 않은 CNT 채널 번호
[1152] AXT_RT_NETWORK_ERROR : network slave 타입 CNT 모듈 연결 상태 문제 발생

Description

지정 CNT 채널에 포함된 범용 출력 포트 값을 비트별로 설정한다. 제품별 범용 출력 포트는 다음과 같다.

모듈 ID 범용 출력 및 설정 값 할당 내용
AXT_SIO_CN2CH
(VER: 0xB0)
전체 범용 출력 포트 개수 : 8EA
각 채널당 범용 출력 포트 : 4EA
CNT 모듈 내 낮은 채널 번호 : UOUT0~UOUT3번 포트
CNT 모듈 내 높은 채널 번호 : UOUT4~UOUT7번 포트
Ex) AxcSignalWriteOutputBit(0, 0x0, 1);
-> UOUT0: 1
AXT_SIO_CN2CH
(VER: 0xA6)
AXT_SIO_HPC4
(VER < 0xB0)
전체 범용 출력 포트 개수 : 4EA
CNT 채널이 속한 모듈 내 속한 모든 출력 포트가 설정된다. 즉 CNT 모듈에 속한 모든 채널 번호를 사용하여 모듈 전체의 범용 출력 포트를 제어할 수 있다.
Ex) AxcSignalWriteOutputBit(0, 0x1);
-> UOUT1: 1
AXT_SIO_RCNT2SIIIH Not support(지원하지 않음)
AXT_SIO_RCNT2SIIIH_R
AXT_SIO_RCNT2RTEX
AXT_SIO_RCNT2MLIII
AXT_SIO_RCNT2MLII

예제 코드

// 0번 채널의 범용 출력 신호 UOUT0를 1로 설정.
AxcSignalWriteOutputBit(0, 0, 1);

// 0축 채널의 범용 출력 신호 UOUT0를 확인.
DWORD uValue;
AxcSignalReadOutputBit(0, 0, &uValue);

AxcSignalReadOutputBit

Purpose

지정 CNT 채널의 범용 출력 중 지정한 비트의 On/Off 상태를 확인한다.

Format

C++
DWORD AxcSignalReadOutputBit(long lChannelNo,long lBitNo, DWORD *upOnOff);
C#
uint AxcSignalReadOutputBit(int lChannelNo, int lBitNo, ref uint upOnOff);

Parameters

[in/out] Name [Init Value] Explanation
[in]lChannelNo 모듈 번호 (0 ~ N-1), N : 전체 CNT 채널 개수
[in]lBitNo 범용 출력 비트 번호
[out]upOnOff 출력 On/Off 상태
- [00h]출력 Off (0)
- [01h]출력 On (1)

Return Values

[0000] AXT_RT_SUCCESS : AXL 라이브러리 초기화 성공, 연결 상태 정상
[1053] AXT_RT_NOT_OPEN : 라이브러리 초기화 실패
[3251] AXT_RT_CNT_NOT_MODULE : CNT 모듈 없음
[3302] AXT_RT_CNT_INVALID_CHANNEL_NO : 유효하지 않은 CNT 채널 번호
[1152] AXT_RT_NETWORK_ERROR : network slave 타입 CNT 모듈 연결 상태 문제 발생

Description

지정 CNT 채널에 포함된 범용 출력 포트 값을 비트별로 확인한다. 제품별 범용 출력 포트는 다음과 같다.

모듈 ID 범용 출력 및 설정 값 할당 내용
AXT_SIO_CN2CH
(VER: 0xB0)
전체 범용 출력 포트 개수 : 8EA
각 채널당 범용 출력 포트 : 4EA
CNT 모듈 내 낮은 채널 번호 : UOUT0~UOUT3번 포트
CNT 모듈 내 높은 채널 번호 : UOUT4~UOUT7번 포트
Ex) AxcSignalWriteOutputBit(0, 0x0, 1);
-> UOUT0: 1
AXT_SIO_CN2CH
(VER: 0xA6)
AXT_SIO_HPC4
(VER < 0xB0)
전체 범용 출력 포트 개수 : 4EA
CNT 채널이 속한 모듈 내 속한 모든 출력 포트가 설정된다. 즉 CNT 모듈에 속한 모든 채널 번호를 사용하여 모듈 전체의 범용 출력 포트를 제어할 수 있다.
Ex) AxcSignalWriteOutputBit(0, 0x1);
-> UOUT1: 1
AXT_SIO_RCNT2SIIIH Not support(지원하지 않음)
AXT_SIO_RCNT2SIIIH_R
AXT_SIO_RCNT2RTEX
AXT_SIO_RCNT2MLIII
AXT_SIO_RCNT2MLII

예제 코드

// 0번 채널의 범용 출력 신호 UOUT0를 1로 설정.
AxcSignalWriteOutputBit(0, 0, 1);

// 0축 채널의 범용 출력 신호 UOUT0를 확인.
DWORD uValue;
AxcSignalReadOutputBit(0, 0, &uValue);

AxcSignalReadInput

Purpose

지정 CNT 채널에 포함된 범용 입력 포트 값을 확인한다.

Format

C++
DWORD AxcSignalReadInput(long lChannelNo, DWORD* upInput);
C#
uint AxcSignalReadInput(int lChannelNo, ref uint upInput);

Parameters

[in/out] Name [Init Value] Explanation
[in]lChannelNo 모듈 번호 (0 ~ N-1), N : 전체 CNT 채널 개수
[out]upInput 범용 입력 포트 값(각 비트에 할당된 입력 포트 값)

Return Values

[0000] AXT_RT_SUCCESS : AXL 라이브러리 초기화 성공, 연결 상태 정상
[1053] AXT_RT_NOT_OPEN : 라이브러리 초기화 실패
[3251] AXT_RT_CNT_NOT_MODULE : CNT 모듈 없음
[3302] AXT_RT_CNT_INVALID_CHANNEL_NO : 유효하지 않은 CNT 채널 번호
[1152] AXT_RT_NETWORK_ERROR : network slave 타입 CNT 모듈 연결 상태 문제 발생

Description

지정 CNT 채널에 포함된 범용 입력 포트 값을 확인한다. 각 비트 값이 해당 범용 입력 포트의 현재 상태를 나타낸다.

모듈 ID 범용 출력 및 설정 값 할당 내용
AXT_SIO_CN2CH
(VER: 0xB0)
범용 입력 포트 개수 : 8EA
각 채널당 범용 입력 포트 : 4EA
CNT 모듈 내 낮은 채널 번호 : UIN0~UIN3번 포트
CNT 모듈 내 높은 채널 번호 : UIN4~UIN7번 포트
AXT_SIO_CN2CH
(VER: 0xA6)
AXT_SIO_HPC4
(VER < 0xB0)
범용 입력 포트 개수 : 4EA
CNT 채널이 속한 모듈의 모든 입력 포트를 확인한다. 즉 CNT 모듈에 속한 모든 채널 번호를 사용하여 모듈 전체의 범용 입력 포트를 확인한다.
AXT_SIO_RCNT2SIIIH Not support(지원하지 않음)
AXT_SIO_RCNT2SIIIH_R
AXT_SIO_RCNT2RTEX
AXT_SIO_RCNT2MLIII
AXT_SIO_RCNT2MLII

예제 코드

/ 0 채널의 범용 입력 신호 확인.
DWORD uValue;
AxcSignalReadInput(0, &uValue);

AxcSignalReadInputBit

Purpose

지정 CNT 채널의 범용 입력 중 지정한 비트의 On/Off 상태를 확인한다.

Format

C++
DWORD AxcSignalReadInputBit(long lChannelNo, long lBitNo, DWORD *upOnOff);
C#
uint AxcSignalReadInputBit(int lChannelNo, int lBitNo, ref uint upOnOff);

Parameters

[in/out] Name [Init Value] Explanation
[in]lChannelNo 모듈 번호 (0 ~ N-1), N : 전체 CNT 채널 개수
[in]lBitNo 범용 출력 비트 번호
[out]upOnOff 입력 On/Off 상태
- [00h]입력 Off (0)
- [01h]입력 On (1)

Return Values

[0000] AXT_RT_SUCCESS : AXL 라이브러리 초기화 성공, 연결 상태 정상
[1053] AXT_RT_NOT_OPEN : 라이브러리 초기화 실패
[3251] AXT_RT_CNT_NOT_MODULE : CNT 모듈 없음
[3302] AXT_RT_CNT_INVALID_CHANNEL_NO : 유효하지 않은 CNT 채널 번호
[1152] AXT_RT_NETWORK_ERROR : network slave 타입 CNT 모듈 연결 상태 문제 발생

Description

지정 CNT 채널에 포함된 범용 출력 포트 값을 비트별로 확인한다. 제품별 범용 출력 포트는 다음과 같다.

모듈 ID 범용 출력 및 설정 값 할당 내용
AXT_SIO_CN2CH
(VER: 0xB0)
전체 범용 입력 포트 개수 : 8EA
각 채널당 범용 입력 포트 : 4EA
CNT 모듈 내 낮은 채널 번호 : UIN0~UIN3번 포트
CNT 모듈 내 높은 채널 번호 : UIN4~UIN7번 포트
Ex) AxcSignalReadInputBit(0, 0x0, &uInputBit);
-> UIN0 상태
AXT_SIO_CN2CH
(VER: 0xA6)
AXT_SIO_HPC4
(VER < 0xB0)
전체 범용 입력 포트 개수 : 4EA
CNT 채널이 속한 모듈 내 속한 모든 입력 포트가 설정된다. 즉 CNT 모듈에 속한 모든 채널 번호를 사용하여 모듈 전체의 범용 입력 포트를 확인할 수 있다.
Ex) AxcSignalReadInputBit(0, 0x1, &uInput);
-> 해당 채널이 속한 모듈의 UIN1의 상태 확인
AXT_SIO_RCNT2SIIIH Not support(지원하지 않음)
AXT_SIO_RCNT2SIIIH_R
AXT_SIO_RCNT2RTEX
AXT_SIO_RCNT2MLIII
AXT_SIO_RCNT2MLII

예제 코드

// 0축 채널의 범용 입력 신호 UIN0를 확인.
DWORD uValue;
AxcSignalReadInputBit(0, 0, &uValue);