基于ARM的嵌入式网络接口控制器设计
1 前言
以太网作为目前应用最为广泛的局域网技术,在工业自动化和过程控制领域得到了越来越的应用。传统的控制系统在信息层大都采用以太网,而在控制层和设备层一般采用不同的现场总线或其他专用网络。目前,随着工业以太网技术的发展,以太网已经渗透到了控制层和设备层。基于以太网的控制网络最典型的应用形式是Ethernet+ICP/IP,它的底层是Ethernet,网络层和传输层采用国际公认的标准TCP/IP.然而大量的工业现场设备,如数控机床、机械手等设备,这些设备最常用的通讯方式为RS-232/485/422串行接口,不具备网络接口,以至无法直接接到以太网。
随着半导体产业和集成电路技术的发展,以微控制器/微处理为硬件核心的嵌入式系统得到迅速发展,并在无线通讯、网络设备、工业控制等领域得到广泛应用。本文选用基于ARM9和armlinux开发嵌入式网络接口控制器,实现串行口数据与以太网数据的相互转换,通过这种方式,可以使传统串口设备成为具有网络接口的设备,直接接入工业以太网。
2 嵌入式网络接口控制器工作原理
嵌入式网络接口器选用DM9000E芯片作以太网控制器,来完成与上级以太网的数据交换,采用32位微处理器s3c2410和嵌入式Linux进行协议实现和数据处理,然后将处理过的数据下传给底层设备终端;把从底层终端设备接收的数据,进行数据处理和协议实现,通过DM900E传输到Internet上。工作原理如1所示
3 嵌入式网络接口控制器硬件平台
嵌入式网络接口控制器硬件平台的整体连接框图如图 2 所示。本文选用基于ARM9内核ARM9TDMI的32位微处理器s3c2410作为主控芯片。S3C2410处理器是Samsung公司基于ARM公司的ARM920T处理器核,采用0.18um制造工艺的32位微控制器。该处理器拥有:独立的16KB指令Cache和16KB数据Cache,MMU,支持TFT的LCD控制器,NAND闪存控制器,3路UART,4路DMA,4路带PWM的Timer ,I/O口,RTC,8路10位ADC,Touch Screen接口,IIC-BUS 接口,IIS-BUS 接口,2个USB主机,1个USB设备,SD主机和MMC接口,2路SPI。S3C2410处理器最高可运行在203MHz。本系统的FLASH存储器选INTEL公司的28F128,SDRAM芯片选用两片HY57V561620构成32位的存储器系统.
以太网控制器芯片选择DM9000,它是完全综合的、成本较低的单一快速,具有通用的处理器接口,10/100M自适应,以及4K双字节静态存取存储器。它被设计为低功耗、高处理性能,支持3.3V到5V的容差。DM9000提供一个MII接口来连接HPNA设备或者其他支持MII接口的收发器,并支持8位、16位、32位的接口来适应不同的处理器对内部存储器的访问,它支持IEEE802.3u规格,还支持IEEE 802.3x全双工流控制。在DM9000和RJ45接口之间需要用汉仁电子有限公司的网络隔离变压器HR601627来连接,网络隔离变压器起信号传输、阻抗匹配、波形修复、杂波抑制以及高电压隔离等作用,以保护系统的安全。
图1嵌入式网络接口控制器工作原理
图 2嵌入式网络接口控制器硬件框
4 嵌入式操作系统的选择
本系统的设计,网卡驱动和TCP/IP协议的实现是重点,选择嵌入式Linux,它已经嵌入了TCP/IP协议栈,使TCP/IP协议得以实现。嵌入式Linux系统支持多种类型的网卡如各种lOM/lOOM,1000M 的Ethemet网卡等。对于 DM9000E以太网控制器,嵌入式Linux已经提供了很好的支持,移植过程中只需要修改源代码和配置相应模块即可实现对网络的支持。
5 以太网数据与串口数据转换实现
本文开发的接口控制器主要完成两个功能,即将串口接收到的数据通过网卡发送至以太网,将网卡接收到的数据通过串口发送至另一串口端。工作模式上可以选择为服务器或客户端模式,数据传输协议可以选择为TCP(TransmissionControlProtocol,传输控制协议)方式或UDP(UserDatagramProtocol,用户数据报协议)方式。其中TCP和UDP是以太网数据的两种传输协议,TCP是基于连接的协议,在正式收发数据前,必须和对方建立可靠的连接,而UDP是面向非连接的数据直接传输协
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于ARM体系的嵌入式系统BSP的程序设计方案(04-11)
- 在Ubuntu上建立Arm Linux 开发环境(04-23)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- SQLite嵌入式数据库系统的研究与实现(02-20)
- 革新2410D开发板试用手记(04-21)