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
[74634] 감사.. VT100 터미널 화면 제어 코드..Re:Re:[질문] Escape Sequence control 문제..
단단한돌 [heaven2] 3442 읽음    2017-10-26 20:32
감사합니다.
원 소스를 뒤지니 VT100 터미널 좌표 정보를 이런 식으로 보내는 가 봅니다.
ESC Character + 좌표정보 + 'H'로 보내고 그 이후에 데이터를 보내는 형식으로 해 놓았더군요.
기존 소스에도 Escape Sequence Control 데이터를 모두 빼버리고 데이터만 파싱 로직이
들어 있더군요. 결국 날코딩으로 전부 파싱해야 하더군요...
감사합니다.

송신영 님이 쓰신 글 :
: 이미 개발된 Protocol 이라면 어쩔 수 없이 그에 따라서 사용해야합니다.
: 시리얼 통신 Protocol에는 특별한 규약은 없습니다.
: 장비를 만들 때 서로간에 협의에 의해 결정되는 것입니다.
: 프로토콜을 새로 만들 것이 아니면,
: 지금 형식에서 데이터를 잘 파싱하는 방법을 찾는 것이 최고의 방법입니다.
: 이미 방법은 찾으신것 같네요.
:
:
: 단단한돌 님이 쓰신 글 :
: : 개발환경: C++ Builder XE5
: :
: : 측정 장비에서 수집한 데이터를 RS232로 수신합니다.
: : 이상한 형태로 데이터가 수신되는데요,.. 특정한 Protocol Format이 있는 것이 아니라
: : 0x1B(Escape Character) 이후 몇 개의 Character가 온 후 측정 데이터가 수신됩니다.
: : 터미널 창에서 데이터를 수신해 보니 Escape문자 이후 수신되는 데이터는 터미널 창의 좌표 정보로 보입니다.
: :
: :
<1B>[4;08HLDV177#<1B>[4;08HLDV2161#<1B>[4;08HLDV3209#<1B>[4;08HLDV40#<1B>[4;08HLDV50#<1B>[4;08HLDV60#<1B>[4;08HLDV70#<1B>[4;08HLDV80#<1B>[4;08HLDG19#<1B>[4;08HLDG24#<1B>[4;08HLDG314#<1B>[4;08HLDG440#<1B>[4;08HLDG540#<1B>[4;08HLDG640#<1B>[4;08HLDG740#<1B>[4
: : 
: : //<1B>    => 0x1B Escape Control Character
: : //[4;08H  => 좌표 정보
: : //LDV177# => 실제 데이터: LDV(항목), 177(데이터)
: : //LDV2161# => 실제 데이터: LDV(항목), 177(데이터)

: :
: : 이렇게 데이터가 나오는 것은, RS232로 데이터 출력하는 것이 외부 장비에 데이터를 전달하기 위한
: : 것이 아닌, 장비에 붙어 있는 조그만 액정에 표시하기 위한 데이터를 RS232로 분기해서 받아오는 것
: : 같습니다.(이미 오래 전에 다른 분이 해 놓은 작업이라..)
: :
: : 질문: 이렇게 Escape Character 이후 터미널의 좌표 데이터나 기타 제어 데이터를 전송하고, 이후에 측정 데이터를
: : 전송하는 것이 일반적인 것인 지? 질문드립니다.
: :
: : 인터넷에 Escape Sequence Control로 전송해도 '\n' 등과 같은 printf문에서의 Control 만 보이는데요..
: : 이렇게 하는 것이 일반적인 지, 일반적인 규약은 어떤 것인 지, 제어 데이터가 아닌 실제 데이터를 취득하기 위해
: : String Parsing할 때.. 그냥 생짜로 새로 만들어야 하는 것인 지, 기존 라이브러리가 있는 지 궁금합니다.
: :
: : 현재는 날코딩으로 제어문자를 모두 날리고 데이터용 문자들만 취해서 Token화 해서 처리하려 합니다.
: : ('#'을 delimiter로 해서 Token화 해서 사용하려 합니다.)
: : 감사합니다.
: :
: :

+ -

관련 글 리스트
74630 [질문] Escape Sequence control 문제.. 단단한돌 3170 2017/10/25
74632     Re:[질문] Escape Sequence control 문제.. 송신영 3214 2017/10/26
74634         감사.. VT100 터미널 화면 제어 코드..Re:Re:[질문] Escape Sequence control 문제.. 단단한돌 3442 2017/10/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.