微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 基于GPRS网络的嵌入式系统的研究

基于GPRS网络的嵌入式系统的研究

时间:04-13 来源:互联网 点击:
3 系统软件设计

基于GSM/GPRS的无线数据传输模块设计的目的是为无线网络通信应用提供一个简单实用的平台,须在模块内嵌TCP/IP协议栈,实现了数据在用户终端和服务器之间的透明传输,使用户可以方便地应用,实现远程的无线数据传输。无线数据传输模块的软件结构框图如图4所示。


图4 软件结构框图

本系统中ETR186底层的硬件驱动已由英创公司做好并提供了丰富的接口,其中COM2口提供给MC35i通信使用,并提供相关例程演示通过COM2如何和无线模块进行通信。因此该系统软件部分主要是需要实现PPP协议、IP协议及TCP/UDP协议,并为应用程序提供一个简单易用的接口。在此重点介绍TCP/UDP协议。

3.1 TCP/IP协议介绍

TCP/IP协议集是当今使用最广泛的Internet体系结构,根据相关协议标准,可把TCP/IP协议集划分为四个相对独立的层次:网络接口层、网络层、传输层和应用层。

网络接口层负责与物理网络的连接,支持现有网络的各种接入标准,如.X25分组交换网、DDN、ATM网、以太网(Ethernet)、PPP(Point-to-Point Protocol,点到点协议)、SLIP等。在本系统中将使用 PPP协议。

网络层即IP层,它主要完成的功能是:从底层来的数据包要由它来选择继续传给其他网络结点或是直接交给传输层;对从传输层来的数据包,要负责按照数据分组的格式填充报头,选择发送路径,并交由相应的线路发送出去。

传输层提供端到端应用进程之间的通信,其对高层屏蔽了底层网络的实现细节,同时它真正实现了源主机到目的主机的端到端的通信。传输层传送的数据单位是报文。

在应用层用户通过API(应用进程接口)调用应用程序来运用因特网提供的多种服务。应用程序负责收发数据,并选择传输层提供的服务类型,按传输要求的格式递交。

3.2 系统初始化

为了能利用 TCP/PI协议进行数据传输,必须对系统的硬件和软件进行初始化。图5为系统初始化部分的流程图。


图5 系统初始化流程图

(1)系统软件在开始时首先需要通过检查 0x90端口的输入电平是否为高来判断 MC35i模块是否正常上电。若未能正常上电,软件将通过 0x90端口的输出使 MC35i模块上电。

(2)MC35i模块上电后,软件将在内存中开辟一个缓存区做为包括PPP、IP、TCP、UDP等协议的数据缓存区,做为该缓存区内数据存放方式采用双向链表的方式。

(3)为了 TCP协议实现中能够进行超时检测,软件利用 R8822CPU模块的内部定时器安装一个 20ms的时钟中断。

(4)ETR186通过其串口 COM2和 MC35i模块连接,软件通过安装串口中断进行和 MC35i模块的数据传输。

(5)完成上述操作后,系统就可以利用 AT命令登录 GPRS网络。不成功就进行重试,超过重试次数后出错报告。

(6)最后进行 PPP链路的连接。

4 小结

本文作者创新点是将嵌入式Linux系统技术与 GPRS无线通信网络有机的结合在一起。平台采用无线模块MC39i,结合终端的嵌入式硬件结构和软件环境,为终端上实现无线应用提供了一个可行的实现途径。经实验验证,该终端平台能有效的将采集到的数据通过GPRS网络,传输至远程服务器中心主机,也能接受服务器中心主机发送的命令,再根据命令的内容进行相应的操作,达到实现无线数据传输。

作者:周剑玲,梁秀荣      来源:《微计算机信息》(嵌入式与SOC)2009年第3-2期

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top