8.1.1. ecdiGetMulti


SYNOPSYS

t_dword ecdiGetMulti(
  t_i32 NetID,
  t_ui32 IniChannel,
  t_ui8 NumChannels,
  t_i32 *ErrCode)

t_dword ecdiGetMulti_L(
  t_i32 NetID,
  t_ui16 SlvPhysAddr,
  t_ui32 IniLocalChannel,
  t_ui8 NumChannels,
  t_i32 *ErrCode)

DESCRIPTION

  • 이 함수는 다중 채널에 대한 디지털 입력 상태를 반환합니다.

  • ecdiGetMulti_L() 함수는 지역 채널 방식으로 지정된 디지털입력 채널의 입력 상태를 반환합니다.

PARAMETER

  • NetID : Network 번호

  • IniChannel : 시작 채널 번호

  • IniLocalChannel : 시작 채널 번호 (지역 채널)

  • NumChannels : 시작 채널로부터 몇 개의 채널의 상태를 확인할 것인지에 대한 값

  • SlvPhysAddr: 슬레이브 주소

  • ErrCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL을 전달하면 에러 코드를 반환하지 않습니다.

RETURN VALUE

  • 이 리턴값은 다중 채널의 디지털 입력 상태 값을 반환합니다.

EXAMPLE

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#include "ComiEcatSdk_Api.h"
#define NUMCHNNELS 2 //사용자가 사용 할 채널 수를 입력
t_i32 Error_Num = 0;//함수 별 에러 코드 저장 변수
t_i32 nNetID = 0;
void DI_GetMulit(void)
{
       t_i16 DI_InitCh = 0; //시작 채널 번호 저장 변수
       t_i16 DI_NumCh =0; // DI 채널 개수 저장 변수
       t_dword State = 0; // DI_Multi 결과 값 저장 변수
       State = ecdiGetMulti (nNetID, DI_InitCh, NUMCHNNELS, &Error_Num);
       /******************************************************************************
       // State에 결과 값에는 DI 결과 값이 십진수 형태로 저장
       //ex)0번 채널부터 2번까지 모든 채널이 ON이라면 결과값은 111즉 10진수 7
       ******************************************************************************/
} // DI_GetMulit 함수 종료

See also

ecdiGetOne