8.1.6. ecdoGetMulti¶
SYNOPSYS¶
t_dword ecdoGetMulti(
t_i32 NetID,
t_ui32 IniChannel,
t_ui8 NumChannels,
t_i32 *ErrCode)
t_dword ecdoGetMulti_L(
t_i32 NetID,
t_ui16 SlvPhysAddr,
t_ui32 IniLocalChannel,
t_ui8 NumChannels,
t_i32 *ErrCode)
DESCRIPTION¶
ecdoGetMulti 함수는 다중 채널에 대한 디지털 출력 상태를 반환합니다.
ecdoGetMulti_L 함수는 지역 채널 방식으로 다중 채널에 대한 디지털 출력 상태를 반환합니다.
PARAMETER¶
NetID : Network 번호
IniChannel : 시작 채널 번호
IniLocalChannel : 시작 채널 번호 (지역 채널)
SlvPhysAddr: 슬레이브 주소
NumChannels : 시작 채널로부터 몇 개의 채널의 상태를 확인할 것인지에 대한 값
ErrCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL을 전달하면 에러 코드를 반환하지 않습니다.
RETURN VALUE¶
출력 상태 값을 반환합니다.
EXAMPLE¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #include "ComiEcatSdk_Api.h"
#define NUMCHNNELS 2 //사용자가 확인 할 채널 수를 입력
t_32 Error_Num = 0;//함수 별 에러 코드 저장 변수
void DO_PutMulti(void)
{
TEcSlvTypeInfo pTypeInfoBuf // 구조체 관련 내용 9장 참고
t_i16 DO_InitCh = 0; //시작 채널 번호 저장 변수
t_dword dwOutStates = 0; //여러 수의 출력 값을 2진수로 표현. ex) 0번 3번 ON -> 1001
DO_InitCh = pTypeInfoBuf . DO. StaGlobChannel; //구조체 할당 후 DI 시작 채널 얻어 옴
if(!ecdoPutMulti (Device_Info.NetIdx, DO_InitCh, NUMCHNNELS, dwOutStates, &Error_Num))
{
//DO 실패 시 예외 처리
}
} // DO_ PutMulti 함수 종료
void DO_GetMulti(void)
{
TEcSlvTypeInfo pTypeInfoBuf // 구조체 관련 내용 9장 참고
t_i16 DO_InitCh = 0; //시작 채널 번호 저장 변수
t_dword dwOutStates = 0;
DO_InitCh = pTypeInfoBuf . DO. StaGlobChannel; //구조체 할당 후 DI 시작 채널 얻어 옴
dwOutStates = ecdoGetMulti (Device_Info.NetIdx DO_InitCh, NUMCHNNELS &Error_Num);
} // DO_ GetMulti 함수 종료
|
See also