cmcDoGetMulti¶
SYNOPSYS¶
VT_I4 cmcDoGetMulti([in] VT_I4 BoardID, [in] VT_I4 Axis, [in] VT_I4 IniChannel,
[in] VT_I4 NumChannels, [out] VT_PI4 OutStates )
DESCRIPTION¶
모션 디지털 출력이 지원되는 제품에서 cmcDoPutOne() 함수는 다중 채널 대한 디지털 출력 상태를 발생시키며, cmcDoGetMulti() 함수는 다중 채널에 대한 디지털 출력 상태를 반환합니다.
이 함수의 사용과 호출에 있어, 제공된 ㈜커미조아의 함수 헤더 Visual Basic 에서는 함수의 첨두어 cmc 가 붙지 않습니다.
PARAMETER¶
▶ BoardID : 사용자가 설정한 디바이스(보드) ID.
▶ Axis: Axis 번호(Axis는 3번부터 시작합니다.)
▶ IniChannel : 시작 채널 번호. 통합 채널로 관리되는 채널 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, 최대 통합 채널수 - 1 이하의 값을 채널 번호로 설정할 수 있습니다.
▶ NumChannels : 시작 채널로부터 몇 개의 채널의 상태를 확인할 것인지에 대한 값을 전달합니다. (최대 32개 채널까지 설정 가능합니다.)
▶ OutStates : 다중 채널에 대한 출력 상태를 발생 혹은 출력 상태를 반환합니다. 이 출력 상태는 BitMask(비트 마스크) 로 설정되며, 설정된 비트가 1일 경우 디지털 출력(Digital Out)이 발생합니다.
Value |
Meaning |
---|---|
0 (cmcFALSE) |
OFF |
1 (cmcTRUE) |
ON |
RETURN VALUE¶
Value |
Meaning |
---|---|
음수 |
수행 실패 |
0(ERR_NONE) |
수행 성공 |
EXAMPLE¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | C/C++
#include “ComiMLink3_SDK.h”
#include “ComiMLink3_SDK_Def.h”
#define INI_CH 0
#define NUM_CH 4
Long BoardID = 0;
long nGetDoOutStates =0;
// 0~3번 채널의 디지털 출력 상태를 1(ON)으로 설정합니다.
if (cmcDoPutOne (BoardID, 3, INI_CH, NUM_CH, 0xF ) != ERR_NONE )
{
OutputDebugString ( " cmcDoPutOne function Fail" );
}
// 0~3번 채널의 디지털 출력 상태를 nGetDoOutStates변수로 반환합니다.
if (cmcDoGetMulti (BoardID, 3, INI_CH, NUM_CH, &nDoOutStates ) != ERR_NONE )
{
OutputDebugString ( " cmcDoGetMulti function Fail" );
}
// cmcDoGetMulti ()함수에 의해 읽어 본 0~3번 채널의 출력 채널 상태 값을
// 실제 설정한 값(0xF)과 비교합니다.
if ( nDoOutStates != 0xF )
{
OutputDebugString ( " cmcDoGetMulti function don't set Correctly" );
}
|