|
수신 데이타가 0x84 0x00 0x05 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x10 0x11 0x12 0x35 (14바이트) 패킷
이 들어오는데 아래와 같이 하면 수신 데이타가 처음엔 5개가 들어오고 그다음에 데이타가 들어옵니다.
예로 Rx 데이타가 들어왔습니다.문구가 2번 찍히더라구여.....
이걸 한번에 다 들어오게 하려면 어떻게 해야 하나여??? 답변 부탁드립니다.
void __fastcall TForm1::ComPortRxChar(TObject *Sender, int Count)
{
char *Str = "";
char *sHex;
char temp;
Byte szHex[64];
String str1,str2[14];
int i;
FILE *fdata;
fdata = fopen("c:\\jinso0.txt","wt");
ComLedRx->State = True;
ComPort->ReadStr(str1,Count);
sHex=str1.c_str();
for (int i=0; i< str1.Length(); i++)
{
szHex[i]=sHex[i];
}
for (int i=0; i< str1.Length(); i++)
{
str2[i].sprintf("%02x",szHex[i]);
Memo->Lines->Add(str2[i]);
if(str2[i] == "8a"){
fprintf(fdata," %02x 년 %02x 일\n",szHex[3],szHex[4]);
fclose(fdata);
}
}
if(RxFlag){
ShowMessage("save");
Memo->Lines->Add(str2[3]);
Memo->Lines->Add(str2[4]);
}
Memo->Lines->Add("Rx 데이타가 들어왔습니다.");
}
|