|
네 조언 감사합니다.
장성호님 조언대루 PutString 으로 보내니깐 한번에 전송이 되네요.
제가 아직 Async Pro에 대해서 잘 모르구 있어서요. Reference 메뉴얼을 열심히 봐야겠네요.
P/S. 아직 Data가 1 2 9 1 7 로 나뉘어 나가구 있네요. T.T 좀 더 찾아봐야할듯하네요.
장성호 님이 쓰신 글 :
: ApdComPort1->Output = nData[i];
: ---------------------------------
: output 을 쓰지 마시고 아래 함수들을 쓰십시요
:
:
: 1) 스트링을 전송할때
: ApdComPort1->PutString("adfadfasfd");
:
: 2) 한 바이트씩 전송할때
: ApdComPort1->PutChar(tBuf[3]);
:
: 3) 여러 바이트를 한번에 전송할때
: ApdComPort1->PutBlock(&tBuf[0],bufCnt);
:
: 그럼
:
:
: 이재형 님이 쓰신 글 :
: : 빌더 초보입니다. 간단한 시리얼 통신프로그램을 만들고 있습니다. (장비와 통신이 필요해서요.)
: : 개발 환경은 빌더5와 Async Pro4.02 버전을 사용중입니다.
: :
: : 원하는 것은 COM port전송시 char전송이 아니고 Data 값 전송입니다.
: : (장비에서 Data값을 읽어서 처리하기 때문에)
: : 소스는 하기와 같으며 Test버튼을 누를때마다 nData값을 1byte씩 보내려고 합니다만..
: : 현재 전송되는 값은 1byte Data가 아닌 char 변경된 data가 나갑니다. 즉,
: :
: : 아래의 첫번재 data 의 0x81(129) 의 1 byte data가 전송되길 원하는대 실질적으로는
: : "1" "2" "9"의 3byte char가 전송됩니다.
: : Async Pro의 log file을 보니 전송data에 3 byte로 찍힙니다. 널 모뎀을 통해서 들어오는 data 또한 동일합니다.
: :
: : 고수님들께서 도움을 주시면 감사하겠습니다.
: :
: : //---------------------------------------------------------------------------
: : BYTE nData[6];
: : unsigned int i = 0;
: :
: : void __fastcall TForm_1::TestClick(TObject *Sender)
: : {
: :
: : nData[0] = 0x81;
: : nData[1] = 0x11;
: : nData[2] = 0xF1;
: :
: : ApdComPort1->Output = nData[i];
: : i++;
: : }
: : //---------------------------------------------------------------------------
|