13.1.12. cesReadString¶
SYNOPSYS¶
t_i32 cesReadString(
[in] t_i32 nNodeID,
[in] t_i32 nChannel,
[in] t_i32 nNumBufSize,
[in] t_ui32 aRetBuf,
[out] t_i32 nNumRetBytes
)
DESCRIPTION¶
수신 버퍼로부터 지정한 바이트 수 만큼의 데이터를 읽어옵니다.
수신 버퍼 카운트는 읽은 바이트 수 만큼 감소 시킵니다.
PARAMETER¶
nNetID : 원격 노드 ID
nChannel : 채널 번호
nNumBufSize :
aRetBuf :
nNumRetBytes : 1 바이트 이상의 바이트열 데이터
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 29 30 31 32 | #include “ceSDK.h”
#include “ceSDKDef.h”
long nSerialChNo = 0; // 시리얼 채널(Port) 번호
BYTE abyData[8]; // 바이트열 데이터 정보
int nCheckSum;
// 0 번 시리얼 포트에 대해 수신 버퍼로부터 8 바이트 크기의 데이터 확인
if ( cesPeekString ( nSerialChNo, 8, &abyData) != ceERR_NONE )
{
OutputDebugString ( "cesPeekString has been failed" );
}
// 0 번 시리얼 포트에 대해 수신 버퍼로부터 8 바이트 크기의 데이터 읽기
if ( cesReadString (SER_PORT0, 8, &abyData) != ceERR_NONE )
{
OutputDebugString ( "cesPeekString has been failed" );
}
/* 전달 패킷 생성 */
abyData[0] = 0x2; // STX
abyData[1] = 'A';
abyData[2] = 'B';
abyData[3] = 'C';
abyData[4] = 'D';
abyData[5] = 'E';
for ( int I = 0; I <= 5; i++ )
{
nCheckSum += abyData[i];
}
abyData[6] = nCheckSum;
abyData[7] = 0x3; // ETX
if ( cesWriteString ( nSerialChNo, 8, abyData ) == ceERR_NONE )
{
cesCommit ( nSerialChNo );
}
|