您的位置:首页 > 其它

BENQ M22模块使用心得

2006-06-24 23:03 239 查看
最近项目涉及无线应用,上面送了一块BENQ M22模块,虽然最终因为稳定性原因最终没有采用,但在一个多星期的使用过程中,还是有部分心得,由于接触时间不长,有些分析也不一定准确。但记录下来,希望为需要的朋友提供点帮助,毕竟关于M22的文档太少了。部分信息来源于http://www.c51bbs.com/c51blog/user1/4127/index.shtml,Kevin的信息也给我不小帮助。
M22是BENQ推出的一款内置TCP/IP over PPP的GPRS模块,价钱比较便宜。通过AT指令完成GPRS拨号,PPP连接,TCP/IP应用,使用较方便。TCP/IP部分功能有限,只能实现标准的TCP/UDP通信,只能作为客户端,不支持侦听,也就不能作服务器。但即使能提供侦听功能模块,在大多数GPRS环境下也不能使用,因为通常,中国移动分配给GPRS终端用户的IP地址并非INTERNET上的公网IP,而是移动内部地址,通过NAT方式访问INTERNET。这样,公网IP用户就无法连接上移动内部IP。这里多说几句,需要实现类服务器功能的用户,在这种情况下可以自己编写代码,通过识别特定短信号码或内容信息来主动连接到INTERNET公网IP地址用户,从而实现类似的伪服务器的功能。如果采用某些DTU,甚至可以不用写该短信识别程序,一般DTU都内置短信-〉连上GPRS的功能,只需要简单设置几个参数。或者,可以直接采用CDMA模块,据说CDMA是直接INTERNET IP,我没有试过。
关于拨号:如果您拨号后显示的是PPP协议信息,请用 AT*97#
关于TCP/IP使用:拨号成功后,数据实现透明传输。发送+++后等待一段时间后返回AT指令模式,此时如果需要再次返回数据模式,使用ATO;需要断开TCP(UDP不存在持续连接)持续连接,使用ATH。
一些关于M22的问题(主要谈软件方面,不涉及硬件特性问题):
1、在使用TCP协议时,数据帧长度超过1200个字节,TCP连接会断掉;在使用UDP协议时,数据帧长度超过1024,模块会直接复位。
2、有时候提示连上GPRS之后,却无法发送和接收任何数据。
3、有时候在拨号后,模块会自动重新启动,过程中不响应任何AT指令,通常等待15秒后模块重启,此时可重新拨号。
4、发送数据长度超过1024后自动发送该1024部分;不及1024而需要发送,可以在向串口发送数据后,等待2-3秒(我这里如此,搞不懂为什么要等那么久),数据会自动发送出去。
5、有些时候,模块一旦断掉后,就无法自动重启,而必须先手动断开电源,再打开的方式重新启动。这里是致使我们最终放弃M22的最主要一个原因,察看硬件手册,可以通过设置相关硬件引脚并且通过AT指令感应该引脚电压来实现软件重启功能,这样也许可以解决我们遇到的问题,但因为条件限制,没有最终测试。
德国对瑞典的1/8决赛开始咯,差不多就这些吧,以后再补充。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: