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
[42641] Re:시리얼 모니터에서 나오는 16진수... 아시는 분..
smleelms [smleelms] 1487 읽음    2005-11-24 12:39
장비에서 보내준 값은 헥사값 0x10 입니다.. 즉 십진수로는 16이라는 값이지요..

그런데.. 님께서 보내신값을 보면 값이 아닌 아스키값을 보내는 루틴으로 구현이 되어있네요.. 즉

0  : 0x30
x  : 0x78
1  : 0x31
0  : 0x30
엔터(CR+LF)  : 0x0D 0x0A

그러니.. 일단 아스키문자 "0x10" 을 보낸것이지요..
일단 문자로 십진값이나 헥사값을 입력받아서 아스키케릭터가 아닌 값을 보내게끔 구성하셔야 겠네요..

TryStrToInt
Converts an AnsiString that represents an integer (decimal or hex notation) to a number with Boolean success code.

Unit
SysUtils

Category
type conversion routines

extern PACKAGE bool __fastcall TryStrToInt(const AnsiString S, int &Value);

Description
TryStrToInt converts the string S, which represents an integer-type number in either decimal or hexadecimal notation, into a number, which is assigned to Value. If S does not represent a valid number, TryStrToInt returns false; otherwise TryStrToInt returns true.

빌더 헬프에 있는 함수와 설명입니다. 참고하시구요..
특히 Category type conversion routines 링크에 있는 함수들을 한번 찬찬히 훍어보시면 좀더 도움이 될것같네요..

그럼..

생각하자 님이 쓰신 글 :
: 카드발급기 때문에 질문을 했었습니다.
: 감사하게도 시리얼 모니터 라는 프로그램을 구하게 되어 모니터링을 해보니
: Request: 2005-10-04 오후 5:25:50.39364 (+90.8438 seconds)
:
:  10            .  
:
: Answer: 2005-10-04 오후 5:25:50.40864 (+0.0156 seconds)
:
:  10            .
:
: 장비 스펙에 보면 장비를 RESET 해주는 DLE(10h) 명령으로 시작합니다.
:
: 위의 값은 이 장비에 있는 테스트 프로그램을 사용해서 나온 값입니다.
:
: 근데 제가 Wincom을 이용하여 만든 프로그램에서 데이터를 0x10 이라는 값을 넣어보니
:
: 30 78 31 30 0D 0A                                                                                 0x10.. <- 이게 넘어간 데이타 입니다.
:
: 이렇게 나오더군요..
: 혹시 몰라서 . 만 입력해 보았습니다.
: 2E 0D 0A                                                                                          ...
: 엔터만 쳐 보았습니다.
: 0D 0A                                                                                             .. <- 엔터만 쳐도 한개가 안되던군요 -_-
:
:
:
: 어떻게 값을 넘겨야
: 10 이라는 값을 넘길수 있을까요.. 통신쪽은 해본적이 없어서 정말 답답합니다.
: 지금 찾아보면서 배우는 중인데 아시는분 있으면 답변 좀 해주십시오.

+ -

관련 글 리스트
42640 시리얼 모니터에서 나오는 16진수... 아시는 분.. 생각하자 1019 2005/11/24
42641     Re:시리얼 모니터에서 나오는 16진수... 아시는 분.. smleelms 1487 2005/11/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.