Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[12921] [질문] rs232방식으로 장비제어를 할려는데요 cport이용해서요..
오델로 [k2552016] 1825 읽음    2009-09-24 09:28
신호 수신부는 구현이 됐는데요

신호를 장비한테 보내는 부분이 아직  안되서요...

장비는 16진수 헥사값을 이용합니다..10바이트를 사용하구요 

제가 사용할려고하는 방법은 텍스트박스에 16진수(02 30 30 49 30 30 30 32 6d 03) 를 입력하면

그값을 그대로 장비한테 보내주는 그런 구현을 하고싶은데요 사용한 코딩은.

var
Str: String;
begin
Str := Edit1.Text;

Str := #13 + str + #10;
Com1.WriteStr(Str);<----이부분에서 데이터형이 일치하지않다고 그러네요 출력하게되면 데이터 값이 아닌 일반
end;                                string형으로 입력됩니다..

com1.write(str,count)를 쓰면 edit1에서 입력되는 값이랑 데이터형식이 다르다고나오고요
write(a<-자료형식이 pchar이라고나옵니다),count)
또 edit에서 입력받은 str을 pchar로 바꾸면( pchar(str) 로 바꾸려고하면

[Pascal Error] xc1000Unit1.pas(189): E2014 Statement expected, but expression of type 'PAnsiChar' found
이 오류가 뜨고요..........

알아보고 해본방법만 10가지정도되는데요 제가 기초가 매우 약하다보니까 머가 잘못된건지.......전부 오류가뜨거나 그냥 단순히 텍스트값만 입력이 되네요........
이리저리 검색해서 배열도 써보고 다른분이 해놓신 코드도 따보고 했는데요 어디서 머가 잘못된건지 의도대로 안되서 이렇게 글남깁니다...

요약하자면 텍스트박스에  02 30 30 49 30 30 30 32 6d 03 이값을 입력하면 각byte당 한값씩  16진수로 전달되게끔 할려고 합니다...

다른코딩방식도 좋습니다.....제가 생각되는대로 코딩한거라 방식이 다를수도있구요......배열방식이 맞는거같은데...역시 형변환부분에서 문제가 생기고요....ㅜㅡㅜ

아시는분 있으면 답변좀......부탁드립니다..제발...

+ -

관련 글 리스트
12921 [질문] rs232방식으로 장비제어를 할려는데요 cport이용해서요.. 오델로 1825 2009/09/24
12922     Re:[질문] rs232방식으로 장비제어를 할려는데요 cport이용해서요.. civilian 1928 2009/09/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.