APP下载

基于CP2200的网络通讯模块设计

2016-05-30张儒

科技资讯 2016年1期
关键词:网络单片机

张儒

摘要:本文采用体积小、功能强大的CP2200作为以太网的通信接口控制芯片。介绍CP2200的功能,并以其为核心设计网络通讯模块。经过测试验证表明,该网络通讯模块,运行稳定可靠,实时性较高,抗干扰能力强。本系统在仪器的测试和生产中得到广泛使用,有着良好的应用前景。

关键词: CP2200;网络;单片机;

中图分类号:TP273 文献标识码:A 文章编号:1674-098X(2016)01(a)-0000-00

1 CP2200功能结构

CP2200支持IEEE802.3MAC控制协议,不仅支持10 BASE-T的网络,而且完全兼容100/1000 BASE-T网络,可以工作在全双工或半双工模式,能进行自动极性检测和纠正,具有碰撞自动重发的功能,能够自动填充和生成CRC,支持广播和多播MAC寻址。CP2200有2个LED灯的控制信号线,可以驱动10mA电流。CP2200内部不仅有2k字节的发送缓存区和4k字节的接收缓存取,同时有8k字节的内部非易失性FLASH存储器。片内的FLASH存储器,可以用于存储用户参数、Web服务器内容或作为通用非易失性存储器,最后的6个存储单元工厂预编程的唯一48位MAC地址。CP2200工作的温度在-40℃~+85℃之间。

CP2200芯片具有30 Mb/s速率的并行主機接口,且有8位复用或非复用方式,即Intel或Motorola总线方式。非复用方式时,并行接口的读写1字节数据时,通常需要260ns,复用方式则需要300ns。为了提高系统的运行速度,本系统采用非复用总线方式,且在该方式下采用连续读写操作,使得数据传输速率达到30Mbps。非复用Intel总线方式下,具体数据帧的读写分别如图1和图2所示。CP2200有28脚QFN和48脚TQFP两种封装。20脚QFN封装仅支持复用方式,因此本系统选用48脚TQFP封装。

读操作流程如下

(1)/RD在TAS期间保持高电平。TAS是地址总线的建立时间,≥30ns。

(2)/RD在TRD期间保持低电平。TRD是读有效的时间,≥160ns。

(3)在/RD的下降沿,把数据放到数据总线上。TVD1是数据总线的建立时间, ≤140ns。

(4)TVD2,是数据总线从/RD的上升沿到恢复到高阻态的时间,通常为60ns。

写操作流程如下:

(1)/WR在TAS期间保持高电平。TAS是地址总线的建立时间,≥30ns。

(2)/WR在TWR期间保持低电平。TWR是读有效的时间,≥120ns。

(3)TDS是数据总线的建立时间,≥40ns。

(4)TDH是数据总线的保持时间,≥20ns。

2 硬件设计

CP2200芯片外围的硬件电路包括复位电路、晶振电路、I/O并行接口电路、网络接口电路等。如图3所示为电路原理图。

复位管脚/RST通过1K电阻被拉高,并且接到单片机的P1.5管脚,由单片机进行复位控制。CP2200的工作频率为20Mhz,通过外部晶振接入。CP2200与单片机的并行接口电路按非复用总线方式连接,MUXEN和MOTEN都接地。地址总线A0~A7接单片机的P3.0~P3.7。数据总线D0~D7接处理器的P4.0~P4.7。读写信号/RD和/WR,片选信号/CS均接到单片机,由单片机进行控制。中断信号/INT接到单片机,向单片机发送中断请求。网络通讯信号与RJ-45之间通过网络变压器E2023NL进行隔离。CP2200芯片的两个管脚LINK和ACT控制两个发光二极管,用于指示网络控制器的工作状态。 为减少干扰,系统稳定地运行,需要所有的地共地,因此在每个电源和地之间串上一个0.1μF的电容,电源的工作电压取+3.3V。

3 软件设计

TCP/IP协议是基于连接的协议,在收发数据前,发送端和接收端要进行3次握手,然后建立连接。数据从A端传到B端,B端会回送确认包给A端。因此TCP/IP协议是一种可靠性较高的数据通信方式。UDP协议是基于非连接的协议,发送端和接收端不需要建立连接,直接发送数据包。数据从A端传到B端,B端不会回送确认包给A端。因此UDP协议适的可靠性不高。本系统应用于石油测井的现场作业中,可靠性和实时性要求比较高,因此采用了TCP/IP协议。

CP2200通过EMIF接口与单片机进行数据交互,本系统中单片机的外部中断0和定时器0用于TCP/IP协议栈。由于单片机的处理速度和内部资源有限,不可能集成所有的TCP/IP协议,因此需要对TCP/IP协议进行裁剪。结合本系统的实际需要,进行裁剪。使用silicon公司推出的TCP/IP设置软件TCP/IP ConfigurationWizard,可以配置TCP/IP协议栈的参数,对协议栈进行设置。

程序设计采用C/S的工作模式,软件的工作流程如图4所示。本系统为服务器,测井仪器为客户端。本系统的单片机使用C语言编程,使用keil51编译器。使用配置向导TCP/IP ConfigurationWizard生成程序的代码框架。mn_server()启动工作后,有中断服务程序和回调函数两种交互方式。本系统采用回调函数实现与主进程进行交互,使用回调函数callback_app_server_idle()采集仪器的数据。当发送缓冲区非空时,mn_server()周期性的调用callback_app_server_idle()函数。

4 测试验证

网络连接设置用于设置与测试系统网络连接的IP、端口等参数,并显示连接状态。将上位机IP地址改为192.168.1.2,子网掩码255.255.255.0,默认网关192.168.1.1,本系统的IP地址在程序中设置为192.168.1.3。网络连接设置窗口如图5所示,某只测井仪器的测试界面如图6所示。测试中,测试系统和仪器的通讯效果良好。

5 结束语

本系统使用CP2200配合裁剪过的TCP/IP协议栈,组建了速度快、成本低的网络通讯模块。CP2200具有多种集成功能,有效地减少了单片机的负载,内部的各单元设置灵活简易,给以太网控制器的设计带来了许多的方便。经测试验证表明,该网络通讯模块运行稳定可靠,实时性较高,抗干扰能力强。本文研制的仪器测试系统,提高了数据处理效率,减小了硬件资源的占用量,而且满足了高稳定性、高实时性和高集成化的设计要求,为仪器测试带来了方便。目前该系统已在仪器的测试和生产中得到广泛使用,有着良好的应用前景。

参考文献:

[1] 喻向阳.基于CP2200的数据采集接口. 化工自动化及仪表,2007.34(6)

[2] 李国.基于CP2200的嵌入式以太网接口设计.微计算机信息.2007.23

[3] Silabs公司.CP2200数据手册.2007

猜你喜欢

网络单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
基于单片机的平衡控制系统设计
计算机网络管理技术探析
刍议计算机网络信息化管理
油气集输系统信息化发展形势展望
基于网络的信息资源组织与评价现状及发展趋势研究
基于网络的中学阅读指导