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
[56000] cport에서 데이타 프레임이 누락되는 현상이 발생하는것 같습니다..
linuxman [] 1287 읽음    2009-02-04 17:18
CPORt 2.64를 사용하고 있습니다.

상대쪽 장비에서 약 250~300밀리초 단위로 약 100 byte정도의 완전한 프레임(임의로 정의한 Soh ~ EOT 까지) 을  계속 writing 하고 있습니다.
ComPort1RxChar 에서 읽어 보면 frame이 통째로 빠지는 느낌이 듭니다.
중간에 rxbuffer 에서 하나의 프레임이 완전히 사라지는 느낌입니다. ( 즉 100 byte의 프레임을 100번 보내면, 80번정도는 못 받는 그런현상 )
이런 현상이  왜 일어나나요?

(그런데..시간을 약 300밀리초 ~ 500밀리초로 writing 하면 100번 보내면, 100번 수신합니다)

rx,tx buffer는 4096으로 설정하였습니다.

ComPort1 ==>
  BaudRate = br19200
  Port = 'COM1'
  Parity.Bits = prNone
  StopBits = sbOneStopBits
  DataBits = dbEight
  Events = [evRxChar, evTxEmpty, evRxFlag, evRing, evBreak, evCTS, evDSR, evError, evRLSD, evRx80Full]
  Buffer.InputSize = 4096
  Buffer.OutputSize = 4096
  FlowControl.OutCTSFlow = False
  FlowControl.OutDSRFlow = False
  FlowControl.ControlDTR = dtrDisable
  FlowControl.ControlRTS = rtsDisable
  FlowControl.XonXoffOut = False
  FlowControl.XonXoffIn = False
  OnRxChar = ComPort1RxChar


그런데..CPort의 void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count) ..
{
    BYTE recvBuf[512];
    int iLen,i;
 
    memset(recvBuf,'\0',sizeof(recvBuf));
    iLen=ComPort1->Read(recvBuf,Count);

}

+ -

관련 글 리스트
56000 cport에서 데이타 프레임이 누락되는 현상이 발생하는것 같습니다.. linuxman 1287 2009/02/04
56077     Read한다음에 데이타 처리하는 부분도 올려주시겠어요? 조필형 1273 2009/02/09
56012     Re:cport에서 데이타 프레임이 누락되는 현상이 발생하는것 같습니다.. 보리 1492 2009/02/05
56001     Re:cport에서 데이타 프레임이 누락되는 현상이 발생하는것 같습니다.. evergreen 1355 2009/02/04
56003         Re:Re:cport에서 데이타 프레임이 누락되는 현상이 발생하는것 같습니다.. linuxman 1462 2009/02/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.