Wavecom GSM调制解调器作为TCP客户端

时间:2009-10-15 17:16:22

标签: tcpclient modem gsm gprs

我一直在尝试使用我的Wavecom Fastrack调制解调器进行TCP通信。我想要实现的是使调制解调器连接到指定的TCP服务器端口,以使我能够与服务器之间传输数据。我在the user's guide找到了一些信息。 根据您可以在第66页上找到的信息,我创建了一个应用程序,用于打开调制解调器所连接的串行端口并写入以下AT命令:

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

这正是用户指南所说的。在最后一个命令被发送到调制解调器之后,设备切换到数据交换模式,从那时起,应该由服务器接收写入应用程序打开的串行端口的所有内容,服务器发送的所有内容都应该出现在输入缓冲区中那个港口。

问题是我无法在服务器和调制解调器之间保持稳定的双向通信。当我将一些数据写入串口(只有几个字节)时,在服务器端出现数据之前需要花费很多时间,而且在很多情况下数据根本不会到达服务器。

我执行了一些测试,一次向串行端口写入大约100个字节。记录我的服务器应用程序收到的数据我注意到在第二或第二个数据后收到第一个数据(8-35字节)。其余数据在2-5秒内显示(整体或以所述尺寸的片段显示)或根本不显示。

我不知道在哪里寻找这种行为的原因。我是否使用错误的AT命令将调制解调器切换到TCP客户端模式?我无法相信沟通可能会如此缓慢和不稳定。

任何建议将不胜感激。提前谢谢。

2 个答案:

答案 0 :(得分:0)

你在运行什么操作系统? Windows可以很好地隐藏与GPRS调制解调器通信的混乱细节,您所要做的就是创建一个新的拨号连接。要建立连接,您可以调用Win32 RasDial函数。连接后,您可以使用标准套接字在TCP端口上传输数据。

答案 1 :(得分:0)

我已经使用wavecomm调制解调器2年了。据我所知,如果你能发送一些数据,那么你可以发送所有数据。

问题可能出在接收服务器端数据的侦听应用程序中。 它可能无法处理您尝试发送的数据量。

尝试在较小的半身像中发送相同的数据  如果它们之间存在一些延迟,那么您可能会收到所有数据。