0

我一直在尝试使用我的 Wavecom Fastrack 调制解调器进行 TCP 通信。我想要实现的是让调制解调器连接到指定的 TCP 服务器端口,以使我能够与服务器传输数据。我在用户指南中找到了一些关于比的信息。根据您在第 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 客户端模式?我不敢相信通讯会如此缓慢和不稳定。

任何建议将被认真考虑。先感谢您。

4

2 回答 2

0

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

于 2009-12-21T09:47:28.193 回答
0

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

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

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

于 2014-08-27T07:12:42.823 回答