C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[39139] Re:cport 3.0에서 한가지 더 물어 보겠습니다.
씨크릿 [kkol] 868 읽음    2005-02-17 00:19
그렇게 따로 따로 보내실 필요 없습니다.

만약 제가 그런 통신을 한다면 이렇게 할겁니다.

AnsiString SendData;
SendData.sprintf("\x02\x41%s\x03\x42", Edit2->Text.c_str() );
ComPort1-> WriteStr(SendData);

이렇게 보내면 됩니다.

이런 방식이 더 간단하고 ..

아래와 같은 방식으로 보낼때는
데이터 받는 쪽에서 한꺼번에 못 받을수도 있기때문에
그런 상황을 제대로 처리 하지 않은 장비라면
통신 문제가 발생할수도 있죠

물론 위와 같이 보낸다고
받는쪽에서 데이터를 항상 한꺼번에 받는다는건 아닙니다.
그런 경우를 신경써서 처리해야죠.
모든 통신이 거의 그러니까요..





멋진빌더 님이 쓰신 글 :
: 아까 도움 주신 고수님 감사 드리구요..
: 한가지 더 질문 드리겠습니다.
: 일단, 장비의 setting 을 하려고 하는데
: setting data값이 hex(0x02),hex(0x41),dec(1000),hex(0x03),hex(0x42) 입니다.
: dec(1000) 값전송에 AnsiString  값으로 날리면 안되는 것 같아요..
:
: AnsiString Str_meter;
: Str_meter = Edit2 ->Text;
:
: Panel4 -> Caption =  Edit2 -> Text;
:
: char meter1[1] ={0x02};
: char meter2[1] ={0x41};
: char meter3[1] ={0x03};
: char meter4[1] ={0x42};
:
: ComPort1 -> Write(meter1,1);
: ComPort1 -> Write(meter2,1);
: ComPort1-> WriteStr(Str_meter);  <--------- 이부분 입니다.
: ComPort1 -> Write(meter3,1);
: ComPort1 -> Write(meter4,1);
:
: 그냥 프로그램으로 날렸을때는 값이 날라 가는 것 같았는데..
:
: Str_meter 값은  1.000 ~ 9999 가지 변할수 있습니다.
: 한번 더 도움을 주세요.. 감사 합니다.

+ -

관련 글 리스트
39136 cport 3.0에서 한가지 더 물어 보겠습니다. 멋진빌더 1003 2005/02/16
39139     Re:cport 3.0에서 한가지 더 물어 보겠습니다. 씨크릿 868 2005/02/17
39142         Re:Re:cport 3.0에서 한가지 더 물어 보겠습니다. 멋진빌더 823 2005/02/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.