关于用单片机实现无线DTU的一些认识

来源:互联网 发布:aws cli windows 编辑:程序博客网 时间:2024/05/21 04:18

进过几个月时间开发和调试,对于怎么实现GPRS无线数据传输有了更多的认识,从对这个领域一无所知到略微了解中间遇到的问题给我以后的工作提供了非常宝贵的经验。

 

学习使用GPRS单片机数据传输的前提条件:

1、会单片机,能对单片机的双串口灵活编程,对单片机的中断优先级有一些了解

2、对于GPRS模块的接口有一些基本的了解,以及AT命令的使用方法和其作用有了解

3、供电方式,一般的GPRS模块在工作的时候要求电流比较大,所以要就能稳定提供一个4.5V/2A

4、在SIM的数据线上要并一些1NF,100NF的胆电容提高抗干扰能力

 

 

下面简要说明一整个软件的流程:

首先初始化串口,I/O ,接着给模块点火(启动模块),这里有一些小问题要注意的就是点火时间;

完成这一步,可以看见状态灯开始闪烁;

再次,完成以上的动作以后就是初始化GPRS模块了:这里要初始化的参数根据不同的需要有不同的设置,不过基本的要有(测试通信,波特率,回送方式,MSN寄存器,APN,信号强度)

完成这些初始化就可以进行拨号上网了(*99**#)这个是中国移动的GPRS接入号码,成功拨号会返回连接成功。同时移动服务返回一个PPP包,要求你进行配置。(在这部分主要是网络知识:流程如下:PPP->PAP->IPCONFIG->UDP/IP (TCP/IP)

 

在这个过程有三个难点:第一是计算PPP包的检验和(fac检验)。之后就是UDP /IP 这两个包的校验和,他们都是16位的校验和,后者比较好计算。为了长时间和服务连接还要有心跳包保持链路,