4 电路分析
单片机与M1206B的连接主要是通过串口连接的,但是与通常所使用的串口不同。通常使用的串口只要其中的3根线即TXD,RXD,GND就可以了。本设计中为了使单片机与M1206B更加有效连接和协调工作采用了CTS与RTS作为握手信号。CTS与RTS的硬件连接图如图3所示。
5 软件部分
5.1 GPRS模块的设置
对GPRS模块进行主要的设置工作有:
(1)设置通信波特率,可以使用
AT+IPR=115 200命令,把波特率设为115 200 b/s或其他合适的波特率;
(2)设置接入网关,通过
AT+CGD CONT=1,“IP”,“CMNET”命令设置GPRS接入网关为移动梦网;
(3)设置移动终端的类别,通过
AT+CGCLASS=“B”设置移动终端的类别为B类,即同时监控多种业务;但只能运行一种业务,即在同一时间只能使用GPRS上网,或者使用GSM的语音通信;
(4)测试GPRS服务是否开通,使用
AT+CGACT=1,1命令激活GPRS功能。如果返回OK,则GPRS连接成功;如果返回ERROR,则意味着GPRS失败。这时应检查一下SIM卡的GPRS业务是否已经开通,GPRS模块天线是否安装正确等问题。
GPRS模块可以通过拨“*99***1#”登录到GGSN上动态分配到Internet网的IP地址。其间GPRS模块与网关的通信要符合点对点协议(Point to Point Protocol,PPP),其中身份验证时用户名、密码都为空。使用PPP协议登录上之后,就可以通过GGSN接上Internet了。
5.2 软件部分的编写
由于篇幅有限,以下介绍一下核心函数:
此函数是对单片机内部的E2PROM写入数据,在此模块中的作用是为了节约单片中有限的RAM空间,将一些对M1206B操作的
AT命令以及采集到的数据对应的PDU码(是GPRS短信的一中编码格式)存入E2PROM中。
这个函数实现数据的发送。在发送时要对数据进行打包即在数据包头前加上相应的协议头。其中Temp_Buffer是存放最后要发送数据的数组,data_len是要发送的数据大小。
6 结语
本文将单片机与M1206B模块相结合,采用M1206B的GPRS的功能实现了智能交通信号机和交通指挥中心的数据传输功能,为智能交通信号机提供做出决策的数据来源,而且为指挥交通实时的监管各路口与下达交通信号机的配时方案提供了数据,从而可以进一步使道路畅通,同时为以后交通信号控制器接入物联网形成更大的ITS网络打下了基础。由于本设计采用廉价的单片机STC89C52和M1206B的GPRS模块,从经济性和实用性来看也具有一定的实用价值。
上一页 [1] [2]