A8000模块的GPRS上网部分已经写完,并成功通过测试。A8000模块有内置的TCP/IP协议栈,可以通过AT指令来完成网络的连接及数据的收发。A8000内置协议栈支持5个Socket,其中第5个固定为PING功能使用,其它4个可用于UDP连接或TCP Client连接,每一个Socket可以有独立的DNS服务器地址。
以下是测试过程的截图。由于我没有外网IP,测试时,我在路由器上通过添加端口映射,来使我的内网PC可以与GSM模块进行连接通讯。
1)系统启动:

2)GPRS连接,使用接入点“cmnet”;查询各个Socket的DNS服务器地址;查询网络分配给GSM模块的IP:

3)PING功能:

4)断开GPRS连接,更改接入点为“cmwap”,并显示分配的IP地址:

5)TCP Client测试。用TCP连接至我的PC机的30001号端口,可以实现PC与GSM模块“聊天”:
GSM模块端:

PC端:

PC端显示接入的IP地址与GSM模块的地址不同,是因为cmwap使用了代理的缘故。
6)UDP连接测试。GSM模块使用30002号UDP端口连接我的PC机的30002号UDP端口:
GSM模块端:

PC端:

在测试UDP连接时,连接不是太稳定,可能与使用了端口映射有关。