用GPRS modem实现嵌入式Internet接入系统
扫描二维码
随时随地手机看文章
摘要:运用arm单片机lpc2104及西门子公司的gprsmodem设计一种嵌入式internet接入系统,并提供相应的硬件原理图和嵌入式操作系统移植方案。 关键词:uc/os-ii uip gprs tcp/ip 嵌入式internet引言随着gprs技术在无线通信领域的发展,gprsmodem作为gprs在internet的pc机终端已得到了广泛应用。相应的,在单片机系统中运用gprsmodem实现internet接入也已开始为人们所重视。gprs可以发挥永远在线、快速登录、按流量计费等优势。如果无线传输的仅仅只是低速数据,用成本较高的pc机来控制则成本过高。本文采用在嵌入式实时操作系统uc/os-ii中移植一种小型tcp/ip协议栈uip的方法,提供了一套运用arm cpu及西门子公司的gprsmodem(mc35)来实现internet接入的系统设计方案。1 gprs接入internet模型设计如图1所示,gprs网络主要由在gsm基站中新增加的gprs业务节点组成,并通过gprs网关节点实现与internet的互联。在本系统设计中,要与internet交互信息的数据先通过gprsmodem与当地gsm基站中的gprs业务节点进行无线通信,并进入gprs网络,然后通过gprs网关与internet进行数据交互。在本系统中,设计的关键有二:一是arm cpu与gprsmodem的连接,即数据端的串行数据经arm cpu的串口发送到gprsmodem上;二是在arm cpu中嵌入实时操作系统uc/os-ii,然后在uc/os-ii中移植uip,实现tcp/ip协议栈。
图1
2 系统的分层考虑与协议转换图2简单示意了本系统的分层结构,把gprs服务节点和网关节点等gprs内部节点简化抽象为gprs网络,把gprs内部协议及internet网关协议等简化抽象为gprs网关协议。物理层:arm cpu利用at指令对gprsmodem进行拨号。反馈应答后,一条物理通道即gprs信道就在本系统中的gprsmodem和internet之间建立起来。数据链路层:ppp协议将原始的gprs物理层连接改造成无差错的数据链路,系统将成本远程登录internet,并得到gprs网关分配的a类ip地址。网络层:采用ip协议作为网络层协议。ip协议将接入internet的具有不同ip地址的终端都联系起来。经过ip路由选择,可以实现本系统与连在internet上的任一ip终端进行数据交互。传输层:选择tcp作为传输层协议,为数据传输提供面向连接、可靠服务。3 uc/os-ii与小型tcp/ip协议栈uipuc/os-ii是由jean j.labrosse编写的一种免费公开源代码的实时操作系统。作为一个操作系统内核,它没有提供通信软件库。uip是由瑞士计算机科学院的adam dunkels等开发的一种免费公开源代码的小型tcp/ip协议栈,全c编写,提供了网络通信所必须的协议,包括:arp、slip、ip、udp、icmp(pinc)和tcp。本系统在arm cpu中嵌入实时操作系统uc/os-ii,再移植uip实现tcp/ip协议栈,从而获得一个功能完善的嵌入式ip终端。
4 硬件设计整个系统的硬件框架如图3所示。arm cpu采用飞利浦公司的lpc2104,内核为基于arm7tdmi-s的精简指令集的通用32位高速微处理器。工作电压为3.3v,内核工作电压仅为1.8v;内置pll锁相环可以设置cpu工作频率达60mhz;双uart口,提供数据的异步串行发送和接收;片内16kb ram和128kb flash程序存储器,为嵌入式uc/os-ii操作系统和移植uip协议栈提供了必要的空间。gprsmodem选用siemens公司的mc35。该模块提供了9针的标准rs232接口,通过max3232电平转换芯片和lpc2104的uart0口相连,进行全双工通信。mc35工作电压为12v,上电后由dtr上升沿跳变触发启动。本系统指定lpc2104的p0.13信号线经max3232电平转换后作为mc35的dtr。gsm基带处理器是mc35的核心部件,用来处理串口发送的at指令。本系统中,上电复位后,首先进行工作频率等参数设置,然后进行拨号和ppp协商,得到系统本地ip,完成gprs的internet接入。arm cpu将用户数据先打成ip包,再经串口发送给mc35,mc35把其封装成gprs分组数据包传到gprs网。5 软件设计图4所示是uc/os-ii的结构及与硬件的关系。与处理器无关的代码