|
기본적으로 RS232C 통신하실때는 바이너리 데이터를 보내지 않아야 합니다.
바이너리 데이터를 문자열로 변환한 다음 받는쪽에서 다시 바이너리로 변환해서 사용하시면될겁니다.
14 03 00 B3 95 e0 23 를 그냥 보내지 마시고 "140300B395e023" 처럼 문자열로 바꿔서 보내세요
그러면 00이 NULL이 아니라 문자"00"이니까 괜찮지요
커먼센스 님이 쓰신 글 :
: 커먼센스 님이 쓰신 글 :
: : Rs232로 데이터를 타겟에 전송하려합니다.
: : 우선 소스 올리겠습니다.
: :
: : void __fastcall TForm1::Rs232Send(char *ch)
: : {
: : int ilen;
: :
: : ilen=strlen(ch);
: : Rs->Write(ch,ilen);
: : }
: :
: : 여기서 데이터를 보내는중에 00값이 들어가면 널로 인식해서 그 이후의 데이터가 전송되지 않습니다.
: : 어떻게 해야할까요?
: : 고수님들 헬프욤
:
:
: 예를 들면 헥사 14 03 00 B3 95 e0 23 이런 7바이트를 전송하려 하는데 중간에 00이란 값이 있으면 그다음의 데이터는 안들어 가네요 해결책 없을까요?
|