发布网友 发布时间:2022-04-22 00:12
共1个回答
热心网友 时间:2022-04-20 11:28
1)拨号上网:常见的如拨ATD *99***#
2)指定Server的IP地址、Port端口号,使用特定的AT指令来连接到外部的数据网,也即Internet。常见的如AT+CIPSTART="TCP","211.34.48.48","3030",即可连接具有公网IP地址为211.34.48.48,TCP端口为3030的Server。
拨号上网采用的是外部协议栈,需要用户自己实现PPP、TCP、UDP等协议栈,而第二种方式则采用模块自带的协议栈,用户的底层应用程序不需要实现上述较为复杂的协议栈。当然两种方式各有优缺点,第一种方式实现起来比较复杂,但是使用灵活,用户的数据封装比较灵活,可以适应用户的特殊应用。采用第二种方式比较简单,但成本较高,数据的封装格式也较为固定。
常见的GPRS模块分为3种:
1)GPRS DTU(GPRS数传单元,常称为GPRS透传模块)
GPRS DTU内部封装了完善的TCP/IP等协议栈,可为无线传输提供透明的TCP/IP通道。在软件设计上,它封装了协议栈内容并且具有嵌入式操作系统,硬件上可看作是嵌入式PC加无线接入部分的结合,用窗口进行数据通信。主要应用于工业领域,而GPRS modem通常要完成类似的功能必须借助于PC机的软件进行预数据处理。这种形式的应用通常需要一个PC接一个GPRS Modem来连接到外部的数据网。GPRS DTU的四个核心功能:
(1)内部集成TCP/IP协议栈
(2)提供串口数据双向转换功能
(3)支持自动心跳,保持终端设备永久在线(DTU包含上电自动拨号,采用心跳包保持永久在线-当长时间没有数据通信时,移动网关将断开DTU与中心的连接,心跳包就是DTU与数据中心在连接被断开之前发送一个小数据包,以保持连接不被断开。支持断线自动重连、自动重拨号等功能)。
(4)支持参数配置,永久保存。将数据中心的IP地址及端口号,串口的波特率等保存在FLASH或EEPROM中。一旦上电,就自动按照设置好的参数进行工作。
较为高级的GPRS DTU还提供一些扩展功能,主要包括:支持数据中心域名解析、支持远程参数配置/远程固件升级、支持远程短信/电话唤醒、支持本地串口固件升级、提供短信通道、提供DTU在线/离线电平指示等。
2)GPRS/GSM Modem(纯的GPRS/GSM调制解调器,常称为GPRS猫)。GPRS Modem是接入GPRS分组网的一个物理通道,它本身不具有操作系统,必须依附于计算机(在功能上类似于有线Modem),在计算机操作系统之上才能进行PPP拨号连接,通常是与PC结合使用,实现拨号上网。在工作方式上,GPRS DTU与GPRS Modem最大的区别就是GPRS DTU内部CPU在主动进行控制拨号和处理TCP/IP协议包,而GPRS Modem则是被动的,需要外部设备来进行拨号和进行TCP/IP协议包处理。
3)带TCP/IP协议栈的GPRS Modem(将GPRS/GSM modem和TCP/IP协议栈封装在一起,内部有CPU,FLASH,RAM,控制单元等硬件,和DTU功能类似)
如果是要求数据长期可靠传输,那么应当采用GPRS DTU,通过GPRS网络平台实现与监控中心端的数据通信。如果使用GPRS Modem则只能采用普通拨号方式上网,由于这种拨号方式是针对普通用户的上网业务设计的,而不是针对数据可靠收发应用来设计的,因此不适合于可靠的数据传输;而且通常断线后并不进行自动重拨。因此,在需要数据长期可靠传输的领域,都应选择使用GPRS DTU。如果只是用于无线上网,则可以选择GPRS Modem。
带TCP/IP协议栈的GPRS Modem与GPRS DTU的差别在于,它在操作上和普通的GPRS Modem很相似,即:所有对模块的操作只能用AT命令,尤其是发送和接收数据都要通过专用的AT命令。如果嵌入式系统采用的CPU是资源有限的单片机,建议使用GPRS DTU或自带协议栈的GPRS Modem,否则要实现自己的TCP/IP协议,非常麻烦。如果是使用带有操作系统WinCE或嵌入式Linux的嵌入式系统,可以采用GPRS/GSM Modem,这样成本会比较低。