8.2.13. ecdiLtc_GetOnCount


SYNOPSIS

t_i32 ecdiLtc_GetOnCount(
   t_i32 NetID,
   t_ui32 DiChannel,
   t_bool IsResetOnCount,
   t_i32 *ErrCode)

t_i32 ecdiLtc_GetOnCount_L (
   t_i32 NetID,
   t_ui16 SlvPhysAddr,
   t_i32 LocalChannel,
   t_bool IsResetOnCount,
   t_i32 *ErrCode)

DESCRIPTION

  • 지정된 디지털 입력 채널의 래치 카운트를 반환합니다. 여기서 래치 카운트란 OFF에서 ON으로 변경된 회수를 의미합니다.

PARAMETER

  • NetID : Network 번호

  • DiChannel : 디지털 입력 채널 번호

  • IsResetOnCount : 래치 카운트를 읽은 후에 마스터에서 관리하는 래치 카운트를 0으로 리셋할 것인지를 설정하는 인자입니다.

Value

Meaning

0

함수 수행에 실패하였음을 의미합니다.

1

함수 수행에 성공하였음을 의미합니다.

  • SlvPhysAddr : 슬레이브 주소

  • LocalChannel : 해당 디지털 입력 채널의 지역 채널 번호

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

RETURN VALUE

  • 지정한 채널의 입력 신호가 OFF에서 ON으로 변경된 회수를 반환합니다.

EXAMPLE

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
#define NETID 0
#define LTC_CH 0

// OnStartLatchMon(): 래치모니터를 시작하는 가상의 사용자 함수
void OnStartLatchMon()
{
      t_i32 errCode;
      if(!ecdiLtc_AddChannel(NETID, LTC_CH, &errCode)){
      // 에러처리
      }
}

// OnTimer (): 래치 상태를 주기적으로 체크하는 가상의 사용자 함수
void OnTimer()
{
      if(ecdiLtc_GetOnCount(NETID, LTC_CH, true, NULL) > 0){
      // 래치 발생함!
      //…
      }
}  // GetOnCount 함수 종료
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
#define NETID 0
#define SLV_ADDR 0x204
#define LTC_CH 0

// OnStartLatchMon(): 래치모니터를 시작하는 가상의 사용자 함수
void OnStartLatchMon()
{
      t_i32 errCode;
      if(!ecdiLtc_AddChannel_L(NETID, SLV_ADDR, LTC_CH, &errCode)){
      // 에러처리
      }
}

// OnTimer (): 래치 상태를 주기적으로 체크하는 가상의 사용자 함수
void OnTimer()
{
      if(ecdiLtc_GetOnCount_L(NETID, SLV_ADDR, LTC_CH, true, NULL) > 0){
      // 래치 발생함!
      //…
      }
} // GetOnCount_L 함수 종료