基于GPRS技术实现的远程交通信息通信 |
|
|
动进行GPRS拨号上网操作,直到该函数返回PPP的状态值为PPP LINK UP,表明GPRS拨号上网已经成功。循环再进入到下一步操作,要求和远端服务中心建立TCP连接。此时需要直接调用TCP Manager->Running(),直到该函数返回连接的状态为OPEN,表示TCP连接已经建立[8]。程序的主循环不断地查询PPP的连接状态和TCP是否打开。在应用程序设计中,需要实现心跳包(响应等待的最长时间)的处理,如果在设置的心跳时间内一直没有数据的通讯传输,程序将主动发送一个心跳测试包到远端服务中心。在程序中心跳测试时间设置为400个Tick值,约为20秒,也可以设置短一点。应用程序中需要有三个调用子程序:一是获取远端服务器参数(包括远端服务器基本参数设置:Ipstr、ID.port、ComIdx、BaudIdx,即远端IP址、端口号、串口号以及波特率);二是串口接收数据时参数设置(包括串口号、字符串长度、响应时间等);三是串口发送数据时参数设置(包括串口号、字符串长度、响应时间等)。 实现串口与远程中心数据无线传输的应用主程序流程图设计见图4。 2.2 建立工程文件GPRS232.PRJ 进入BC环境,按Alt+P打开Project菜单,选择“Open Project”,在弹出对话框“Open Project File”栏输入新建工程文件名称“GPRS232.PRJ”。键确认后,BC自动打开“Project:GPRS232”的Project窗口,在此基础上添加所需的CPP文件:ETR232i.CPP、READINI.CPP、GPRS.CPP、TCPCLNT.CPP、RS232X3.CPP,修改Name栏的文件扩展名成“*.LIB”,确认后,向工程文件中添加LIB文件:ETR_PPP.LIB。 PRJ文件中项目添加完毕,选择菜单Compile下的“Build all”l进行编译链接,编译链接成功将生成可运行GPRS232.exe文件。按键关闭编译链接弹出窗口,Project窗口将显示各个CPP模块的编译信息,即 每个模块中程序代码的行数&ld上一页 [1] [2] [3] 下一页 |
|
|
|
上一个论文: 有线通信与无线通信的优劣对比分析 下一个论文: 计算机科研提速与计算科学发展探讨 |
|