2009-10-15 3 views
0

Wavecom Fastrack 모뎀을 사용하여 TCP 통신을 시도했습니다. 내가 성취하고자하는 것은 모뎀이 지정된 TCP 서버 포트에 연결되어 서버와 데이터를주고받을 수있게하는 것입니다. the user's guide에서보다 자세한 정보를 발견했습니다.Wavecom GSM 모뎀을 TCP 클라이언트로 사용

AT+WIPCFG=1 //start IP stack 
AT+WIPBR=1,6 //open GPRS bearer 
AT+WIPBR=2,6,11,"APN" //set APN of GPRS bearer 
AT+WIPBR=2,6,0 //username 
AT+WIPBR=2,6,1 //password 
AT+WIPBR=4,6,0 //start GPRS bearer 

AT+WIPCREATE=2,1,"server_ip_address",server_port //create a TCP client on port "server_port" 

AT+WIPDATA=2,1,1 //switch do data exchange mode 

이 정확하게 사용 설명서의 말씀입니다 : 당신은 66 페이지에서 찾을 수있는 정보에 주둔 나는 명령에 다음을 직렬 포트가있는 모뎀이 연결되어 열리고 쓰는 응용 프로그램을 만들었습니다. 마지막 명령이 모뎀으로 보내지면 장치는 데이터 교환 모드로 전환 한 후 응용 프로그램에서 연 직렬 포트에 기록 된 내용을 서버가 수신해야하며 서버가 보내는 모든 내용이 입력 버퍼에 나타나야합니다 그 항구의.

내가 서버와 모뎀 사이에 안정적인 양방향 통신을 유지 관리하지 못했습니다. 일부 데이터를 직렬 포트 (몇 바이트 만)에 쓸 때 데이터가 서버 측에 나타나기 전에 많은 시간이 걸리고 많은 경우에 데이터가 서버에 전혀 도달하지 않습니다.

한 번에 약 100 바이트를 쓰는 몇 가지 테스트를 직렬 포트에 수행했습니다. 내 서버 응용 프로그램에서받은 데이터 로깅 첫 번째 데이터 (8-35 바이트)가 1-2 초 후에 수신되었음을 알았습니다. 나머지 데이터는 2 ~ 5 초 안에 표시되거나 (전체적으로 또는 상기 크기로 표시됨) 전혀 표시되지 않습니다.

나는 그 행동의 이유를 찾을 곳을 모른다. 모뎀을 TCP 클라이언트 모드로 전환하는 데 잘못된 AT 명령을 사용 했습니까? 의사 소통이 너무 느리고 불안정 할 수도 있습니다.

모든 조언을 주시면 감사하겠습니다. 미리 감사드립니다.

답변

0

어떤 OS를 실행하고 있습니까? Windows는 GPRS 모뎀과 통신하는 지저분한 세부 정보를 숨기는 작업을 훌륭하게 수행합니다. 새로운 전화 접속 연결을 만드는 것뿐입니다. 연결을 설정하기 위해 Win32 RasDial 함수를 호출 할 수 있습니다. 연결되면 표준 소켓을 사용하여 TCP 포트에서 데이터를 전송할 수 있습니다.

+0

안녕하세요. 답변 해주셔서 감사합니다. 문제는 데이터가 서버로 이동하는 방식을 제어하려고했기 때문입니다. LAN 인터넷 연결이 가능할 때 모뎀에서 데이터를 전송하는 것을 원하지 않았습니다. 고급 연결 구성에서 연결 우선 순위를 설정하더라도 모든 데이터가 모뎀에 의해 전송되었습니다. 모뎀 TCP 클라이언트 연결에 관해서는, 나는 마침내 그들을 제대로 처리 할 수있었습니다. –

0

저는 Wavecomm 모뎀을 2 년 동안 사용해 왔습니다. 지금까지 경험 한 바에 따르면 데이터의 일부를 보낼 수 있다면 모든 데이터를 보낼 수 있다는 것입니다.

서버 측에서 데이터를 수신하는 수신 응용 프로그램에 문제가있을 수 있습니다. 보낼 데이터의 양을 처리 할 수없는 경우 일 수 있습니다.

더 작은 흉상 에 동일한 데이터를 보내려고하면 약간의 지연이 생기므로 모든 데이터가 그대로 유지 될 수 있습니다.