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
[62121] Comport 수신 데이터 처리
김병규 [] 1122 읽음    2010-08-10 15:13
PC 두대를 이용해서 데이터 통신 중입니다.

아래는 그 소스 인데요.. 한쪽 PC에서 영상처리를 하여 원의 중심을 찾아서

그 중심 데이터를 다른쪽 PC로 전송하고 있습니다.

보낼때 각 Pixel 값을 상위 비트 하위비트로 나누어서 보냈구요

다른쪽 PC에서 이 데이터를 받아서 제가 원하는 데이터로 다시 변환 할려니

되지가 않아서요..

수신 쪽에서 Comport를 사용하여 ComPort1->ReadStr(str);

들어오는 데이터에서 C를 찾아내어 필요한 갯수만큼 짤라내면

CㅁㅁㅁㅁE   <-- 요렇게 들어는 옵니다. 물론 저기 네모는 영 이상한 문자로

표현이 되더군요..

저 데이터를 다시 상위 비트와 하위비트를 합쳐서 원 데이터로 변환하고 싶은데..

잘안되어서요..

저기 네모는 스트링이 잖아요.. 그럼 이 스트링을 다시 케릭터로 바꾸어 주어야 될꺼 같은데..

sprintf(c, "%c", str.c_str());  <-- 이런식으로 하면 안되는 건가요?

변환을 어떻게 해야 하는건지 잘 모르겠네요..

조언좀 부탁드리겠습니다.


// 송신부
void __fastcall TForm1::BitBtn3Click(TObject *Sender)
{
    unsigned int uiX, uiY;
    unsigned char ucXH, ucXL, ucYH, ucYL, ucOrgXH, ucOrgXL, ucOrgYH, ucOrgYL;
   
    // uiX와 uiY 는 Pixel데이타로 0~640 까지 입니다.

    ucXH = (unsigned char)(uiX >> 8) & 0x00ff;
    ucXL = (unsigned char)(uiX & 0x00ff);

    ucYH = (unsigned char)(uiY >> 8) & 0x00ff;
    ucYL = (unsigned char)(uiY & 0x00ff);

    sprintf(c, "C%c%c%c%cE", ucXH, ucXL, ucYH, ucYL);

    ComPort1->Write(c, 6);
}

+ -

관련 글 리스트
62121 Comport 수신 데이터 처리 김병규 1122 2010/08/10
62126     Re:Comport 수신 데이터 처리 땅주인 1559 2010/08/11
62132         Re:Re:답변 감사 드립니다~ (냉무) 김병규 969 2010/08/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.