21.2.3. ecNet_BitSeq_GetStatus¶
SYNOPSIS¶
EC_EXTERN t_cmdidx(CECAT_API* ecNet_BitSeq_GetStatus)(
t_i32 NetID, t_i32 MapId, t_i32*RunStatus,
t_i32* RunItemIdx, t_i32* ErrCode
);
DESCRIPTION¶
구동 상태를 확인합니다.
PARAMETER¶
NetID : Network 번호
MapId : BitSequence 기능을 사용할 MapId (0~15)
RunStatus : 입력 Map의 동작 상태 (1:Run)
RunItemIdx : 현재 Override 되고 있는 Item Index
ErrorCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL 을 전달하면 에러 코드를 반환하지 않습니다.
REFERENCE¶
EXAMPLE¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | int NetID = 0; // 0번 Network ID 사용
int MapId = 0; // 0번 MapId 사용
t_cmdidx idx;
// 2개의 Item Buffer를 할당합니다
idx = ecNet_BitSeq_AllocBuf(NetID, MapId, 2, &err);
// 0번 Item을 설정합니다 ByteOffset:0 Mask:0xFF, Data:0xAA
idx = ecNet_BitSeq_SetData(NetID, MapId, 0, 0, 0xFF, 0xAA, &err);
// 1번 Item을 설정합니다 ByteOffset:0 Mask:0xFF, Data:0x55
idx = ecNet_BitSeq_SetData(NetID, MapId, 1, 0, 0xFF, 0x55, &err);
// BitSequence 기능을 동작시킵니다. 0번 Item과 1번 Item이 통신 Cycle마다 Override 됩니다.
idx = ecNet_BitSeq_Run(NetID, MapId, 1, 0, &err);
Sleep(1000);
// BitSequence 기능을 정지합니다
idx = ecNet_BitSeq_Stop(NetID, MapId, 0, &err);
|