8.1.3. ecdiGetOne¶
SYNOPSYS¶
t_bool ecdiGetOne(
t_i32 NetID,
t_ui32 DiChannel,
t_i32 *ErrCode)
t_bool ecdiGetOne_L(
t_i32 NetID,
t_ui16 SlvPhysAddr,
t_ui32 LocalChannel,
t_i32 *ErrCode)
DESCRIPTION¶
단일 채널에 대한 디지털 입력 상태를 반환합니다.
ecdiGetOne_L() 함수는 지역 채널 방식으로 지정된 디지털입력 채널의 입력 상태를 반환합니다.
PARAMETER¶
NetID : Network 번호
DiChannel : 디지털 입력 채널 번호
SlvPhysAddr: 슬레이브 주소
LocalChannel : 해당 디지털 입력 채널의 지역 채널 번호
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 | #include "ComiEcatSdk_Api.h"
t_i32 Error_Num = 0;//함수 별 에러 코드 저장 변수
t_i32 nNetID = 0;
void DI_GetOne(void)
{
t_i16 DI_NumCh =0; // DI 채널 개수 저장 변수
t_bool State = false; // DI 결과 값 저장 변수
DI_NumCh = ecdiGetNumChannels(nNetID, Error_Num);
For(int i = 0 ; i< DI_NumCh ; i++)
{
State = ecdiGetOne(nNetID, i, &Error_Num); // DI_NumCh (슬레이브의 채널 개수) 만큼 DI 실행
if(State == 1)
{
//DI결과 값이 1 일때 처리
}
else
{
//DI결과 값이 0일때 처리
}
}
} // DI_GetOne 함수 종료
|
See also