|
오승택 님이 쓰신 글 :
: 안녕하세요. 아래의 내용으로 자문좀 구하려고 합니다.
: 참고로 시리얼 콤포는트는 sysbas사(www.sysbas.com)의 WinCom1.0을 상요하고 있습니다.
:
: 데이터 패킥(packet)을 만들어서 장비로 전송하는 문제인데요.
:
: 우선 전송 함수의 ProtoType은
: long writecom(long port_number, BSTR source, long length)이구요
: 여기서 port_number: 포트번호, source : 출력할 데이타가 증어있는 변수명, length : 출력할 데이타의 길이 입니다.
: 그런데 main program중에 이 함수를 부르는 부분에 Wincom1->writecom(m_PortNumber, WideString(PACKET),strlen(PACKET) );이렇게 호출하고 있습니다.
:
: 그런데 문제는 char인 PACKET[125]배열에는 "0x00"이라는( 즉 Null문자이죠)이라는 것이 포함되어 있는데 이것 떄문에 전송하면 PACKET의 에서 이 "0X00"이하는 전송이 되지 못한 다고 하네요(WideString함수가 그렇다고 함). 그래서 "0X00"을 포함한 문자열 전헤를 전송할 수 있는 방법 좀 가르쳐 주시면 고맙겠습니다.(이것 떄문에 3일을 고생하고 있슴)
: 그리고 PACKET[0]자리에는 제어코드가 들어 있느데 이게 "0x82"입니다. 이것은 전송결과를 플ㄴ트해 보니까 0x3F로 되더군요. 물론 다른 것들은 잘되구요. 왜 그런지요.
:
: 고수님들의 좋은 답변 부탁드립니다. 감사합니다.
:
저는 시스템베이스의 Multi-Port32를 많이 써보았으나
통신에 대한 프로그램은 직접 DLL로 만들어 사용해 보아서 정확하게는
모르겠네요.
제가 지금 중국 출장 중이라 한국으로 돌아가게 되면 다음주 수요일(1/16)에 원한다면
RS232C 통신에 대한 DLL FULL Source를 보내 드리지요... 언젠가 통신에 어느분이
필요하다고 해서 멜로 보내 드린적이있고 그 Source를 잘 사용하고 있다는 멜을 받았습니다.
필요하다면 멜 보내 주세요...
현재 MOXA-Board/MULTI-PORT32/DIGI-Board모두 Test한 상태이고 250개의 Port를 사용할 수
있습니다.
지금은 제 Note-Book에 Source가 없어서 보내드리지 못해 미안합니다.
|