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
[48088] Re:시리얼 통신 Cport에 관한 질문
라스코니 [chouoo] 1243 읽음    2007-02-15 01:39
첫번째 질문은 잘 모르겠구요.

두번째  질문같은 경우,

PC의 rs-232 포트는 수신 버퍼를 가지고 있는데 데이터 수신되고 수신 버퍼가 차게되면 cport 드라이버가 데이터를 가져오게 됩니다. 지금 현재 cport 가 조금이라도 데이터를 가져오면 사용자에게 알리도록 되어 있는 것 같네요.  이런 경우 cport 에 얼마 정도 데이터가 들어와야 사용자에게 알려줄지에 대해서 데이터 사이즈를 설정하는 옵션이 있다면 그렇게 해결을 하셔도 되고요.

데이터를 여러번 받아서 400 byte 로 합치는 방법이 있습니다. 제 개인적으로는 이 방법을 선호합니다. 왜냐하면 데이터 사이즈를 잡아주게 되면 나중에 짧게 들어오는 신호를 받지 못할 수도 있거든요.



김훈 님이 쓰신 글 :
: 안녕하세요 일전에 질문을 한번 드렸었는데...
: smleelms님께서 답변은 주셨지만 아직도 해결하지 못했습니다.
:
: 먼저 장비부터 설명드립니다.
: 장비는 판넬 PC이구요. embedded XP가 설치 되어 있습니다.
: PC에서 제공하는 RS-232C를 없애버리고 RS-485칩을 달았습니다.
: 결국 문제의 발단은 이것인데요.
:  RS-485의 경우 빌더에서 코딩할때 RS-232/RS-485 컨버터를 사용함으로 그냥 232를
: 하듯이 소프트웨어를 짜면 되는데 이의 경우라면 RTS 제어를 해주어야 한다는 것입니다.
:
:  해서 cport를 써서 구현하였구요. cport 컴퍼넌트를 부치고 디펄트 설정에다가
: flow control에서 RTS를 Toggle로 설정 하였습니다. 이의 경우 양방향 통신이 되지 않습니다.
: 이외 다른 설정을 해야 하는 건지요. 아니면 수동으로 RTS 제어를 해야 한다면 cport에서
: 어떻케 구현 해야 하는지요. 고수님들의 도움 부탁드립니다.
:
:  다른 질문 한가지는 400바이트를 전송할 경우 받는 쪽에서 여러번 나눠서 수신 된다는 것입니다.
: 결국 합쳐보면 400바이트는 맞긴 한데 잘려서 수신 되는 이유가 무엇인지요. 이부분에 대해서는
: 어떻게 처리를 해야 하는지요.
:
: 경우의 수대로 설정하고 코딩하고 다 해보았는데 해결 되지 않네요....
: 힘드네요. 고수님들의 답변 부탁드립니다.
:
: 김훈올림

+ -

관련 글 리스트
48078 시리얼 통신 Cport에 관한 질문 김훈 1411 2007/02/14
48088     Re:시리얼 통신 Cport에 관한 질문 라스코니 1243 2007/02/15
48104         Re:Re:시리얼 통신 Cport에 관한 질문 김훈 1752 2007/02/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.